librelist archives

« back to archive

Hello! And some questions...

Hello! And some questions...

From:
Joseph Wecker
Date:
2010-07-12 @ 19:20
Hi Maraino, great work so far with efene (and, my preferred, ifene).  Could
you tell me how the current things work in ifene, or if they don't what the
plans are?  After writing tens of thousands of lines of erlang over the
years, I'd actually rather use your syntax.  Here are the questions:

1. gen_server, behaviours, OTP, etc.?  For example, what does a quick
gen_fsm look like in ifn?
2. Do module namespaces (i.e., packages) work correctly?
http://www.erlang.se/publications/packages.html
3. What are the equivalent of -define type macros?
4. Do parametrized modules work yet?  If so, how?
http://myotherpants.com/2009/04/parameterized-modules-in-erlang/
5. What other kinds of meta-programming are allowed (introspection, macros+,
modifying parse tree, etc.?)


#5 is simply something I've wished for and #3 might not be too big of a
deal, but the others are used extensively in erlang programming and are kind
of show-stoppers for us, unfortunately, if they aren't implemented or on the
drawing board.  What are your plans for them (or examples if already
working)?  Would you like help on any of them?  Thanks!

-Joseph Wecker

Re: [efene] Hello! And some questions...

From:
Mariano Guerra
Date:
2010-07-13 @ 00:41
On Mon, Jul 12, 2010 at 4:20 PM, Joseph Wecker <joseph.wecker@gmail.com> wrote:
> Hi Maraino, great work so far with efene (and, my preferred, ifene).  Could
> you tell me how the current things work in ifene, or if they don't what the
> plans are?  After writing tens of thousands of lines of erlang over the
> years, I'd actually rather use your syntax.  Here are the questions:
>
> 1. gen_server, behaviours, OTP, etc.?  For example, what does a quick
> gen_fsm look like in ifn?

I decided to see how they looked and did an example in the blog:

http://efene.tumblr.com/post/804130648/a-gen-server-behavior-in-efene

seems to work fine :)

> 2. Do module namespaces (i.e., packages) work correctly?
> http://www.erlang.se/publications/packages.html

they are not officially supported by erlang, and as far as I
understand they aren't really accepted because of some problems in the
implementation. If they become official then I will support them.

> 3. What are the equivalent of -define type macros?

I'm thinking on macros, I wan't to implement them in a way that
doesn't seem like a hack.

> 4. Do parametrized modules work yet?  If so, how?
> http://myotherpants.com/2009/04/parameterized-modules-in-erlang/

No parametrized modules by now, not hard to implement, but I wan't to
implement them the right way.

> 5. What other kinds of meta-programming are allowed (introspection, macros+,
> modifying parse tree, etc.?)

efene allows more introspection than erlang, for example efene objects
allow to get the information about them at run time, also the obj
module provides some functions to get information about modules easily
(the documentation of efene is generated with the mod module).

you can use the fn_* modules to generate code as efene does if you
want, I would like to provide a simpler way to generate code.

> #5 is simply something I've wished for and #3 might not be too big of a
> deal, but the others are used extensively in erlang programming and are kind
> of show-stoppers for us, unfortunately, if they aren't implemented or on the
> drawing board.  What are your plans for them (or examples if already
> working)?  Would you like help on any of them?  Thanks!

I have to think well before implementing any feature, so I you have
ideas it would be nice.

Right now I'm almost finishing all the language syntax support except
for macros and parametrized modules (they will become officially
supported in the next release I think so I will have to support them).

> -Joseph Wecker

If you have any observation on the remaining features please let me know.

Re: [efene] Hello! And some questions...

From:
Mariano Guerra
Date:
2010-07-13 @ 03:35
On Mon, Jul 12, 2010 at 4:20 PM, Joseph Wecker <joseph.wecker@gmail.com> wrote:
> Hi Maraino, great work so far with efene (and, my preferred, ifene).  Could
> you tell me how the current things work in ifene, or if they don't what the
> plans are?  After writing tens of thousands of lines of erlang over the
> years, I'd actually rather use your syntax.  Here are the questions:
>
> 3. What are the equivalent of -define type macros?
> 5. What other kinds of meta-programming are allowed (introspection, macros+,
> modifying parse tree, etc.?)

I decided to give it a try, see here:

http://efene.tumblr.com/post/804789465/meta-programming-in-efene

let me know your thoughts

Re: [efene] Hello! And some questions...

From:
Mariano Guerra
Date:
2010-07-13 @ 23:46
On Mon, Jul 12, 2010 at 4:20 PM, Joseph Wecker <joseph.wecker@gmail.com> wrote:
> Hi Maraino, great work so far with efene (and, my preferred, ifene).  Could
> you tell me how the current things work in ifene, or if they don't what the
> plans are?  After writing tens of thousands of lines of erlang over the
> years, I'd actually rather use your syntax.  Here are the questions:
>
> 1. gen_server, behaviours, OTP, etc.?  For example, what does a quick
> gen_fsm look like in ifn?
> 2. Do module namespaces (i.e., packages) work correctly?
> http://www.erlang.se/publications/packages.html
> 3. What are the equivalent of -define type macros?
> 4. Do parametrized modules work yet?  If so, how?
> http://myotherpants.com/2009/04/parameterized-modules-in-erlang/
> 5. What other kinds of meta-programming are allowed (introspection, macros+,
> modifying parse tree, etc.?)
>
>
> #5 is simply something I've wished for and #3 might not be too big of a
> deal, but the others are used extensively in erlang programming and are kind
> of show-stoppers for us, unfortunately, if they aren't implemented or on the
> drawing board.  What are your plans for them (or examples if already
> working)?  Would you like help on any of them?  Thanks!

more metaprogramming madness ;)

http://efene.tumblr.com/post/808453660/meta-programming-in-efene-take-ii

Re: [efene] Hello! And some questions...

From:
Mariano Guerra
Date:
2010-07-25 @ 06:19
now efene supports parametrized modules:


http://github.com/marianoguerra/efene/commit/f75b29b682c73b778a45633f387e777253236b9b
http://marianoguerra.com.ar/efene/docs/reference/extra/parametrized.html