Serl 0.1 Release Announcement

View: New views
3 Messages — Rating Filter:   Alert me  

Serl 0.1 Release Announcement

by Howard Yeh! :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

I've been hacking on a Lisp front end for Erlang during the past few
months. It might be worth a look if you like common-lisp.

Serl is a S-exp based frontend designed for Erlang. If you like
Scheme, you might want to try LFE, but if you like Common-Lisp and its
comparative hairyness, Serl might be for you.

Against Lisp's syntatic purity I have sinned. Serl's syntax is
inspired by Lisp, Erlang, and Ruby (thus transitively Perl (*gasp*)).
That Serl rhymes with Perl is perhaps more than an unfortunate
accident.

X => variable
{} => tuple
[] => list
foo => atom
## And the Perlish part,
(foo .if (test)) => (if (test) (foo))
(bar .cdr .car) => (car (cdr (bar)))


Serl is mostly implemented in itself. I've found, so far, that the
apparent syntatic complexity doesn't make metaprogramming with
Common-Lisp style macro any harder. The syntatic extensions are
designed such that they are pattern matchable, and that they are all
"list-like". So even though Serl looks a bit more complex, the macro
programmer still works primarily with lists.

Pattern matching is a godsent.


-support for aribtrary namespaces.
--import/export of macros and special forms.
--special forms are just macros that takes the compiling environment
as an extra argument. Serl defines itself with special forms.

-avoids unintentional capturing in similar way as common-lisp's package.

-Syntax objects.
--Quotation and quasiquotation are used only to build syntax objects.
-macroexpansion in pattern.
--so named patterns are possible.
-syntax objects are pattern matchable.

-fancy lambda-list as in common-lisp.
--but unlike common-lisp, &option, &rest, and &key don't interfere
with each other.

-syntatically consistent reader macro based on heredoc.

See:

http://forum.trapexit.org/viewtopic.php?p=43927

Howard
--
hayeah.wordpress.com
   --metacircular thinking
_______________________________________________
erlang-questions mailing list
erlang-questions@...
http://www.erlang.org/mailman/listinfo/erlang-questions

Re: Serl 0.1 Release Announcement

by zambal :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On May 29, 10:57 am, "Howard Yeh" <hay...@...> wrote:
> Hi,
>
> I've been hacking on a Lisp front end for Erlang during the past few
> months. It might be worth a look if you like common-lisp.
>
> Serl is a S-exp based frontend designed for Erlang. If you like
> Scheme, you might want to try LFE, but if you like Common-Lisp and its
> comparative hairyness, Serl might be for you.

Congratulations with this first release. I guess my taste's more like
LFE's 'minimal' syntax, but more languages running on the Erlang run-
time is a good thing IMHO and I'm very curious in which direction your
project will develop.

BTW, Serl's parser doesn't seem to like text files with window line
endings ( \r\n ). When saved with Unix line endings, compilation of my
test file seemed to work.
_______________________________________________
erlang-questions mailing list
erlang-questions@...
http://www.erlang.org/mailman/listinfo/erlang-questions

Re: Serl 0.1 Release Announcement

by Howard Yeh! :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hey, thanks for trying it out.

I completely forgot about the window line feed thing. I'll fix it.

Serl's syntax won't get any more complex. I would welcome suggestions
to make it simpler, however. At the moment, I find it at a nice
balance point between syntatic exuberance and metaprogrammability.

For the next few releases, I'd like to rewrite most of the supporting
modules in Serl, and in that process finding out more about Serl and
making the necessary improvements and hopefully weed out bad ideas.

In the future, I'd really want to try building an object system in
Erlang's spirit. With asychronous message passing and non-mutability
(!). It's kinda like Michaelangelo said about sculpturing, the object
system is already there in Erlang, I just need to chisel it out.

Erlang is super cool.

On 5/29/08, zambal <zambal@...> wrote:

> On May 29, 10:57 am, "Howard Yeh" <hay...@...> wrote:
>  > Hi,
>  >
>  > I've been hacking on a Lisp front end for Erlang during the past few
>  > months. It might be worth a look if you like common-lisp.
>  >
>  > Serl is a S-exp based frontend designed for Erlang. If you like
>  > Scheme, you might want to try LFE, but if you like Common-Lisp and its
>  > comparative hairyness, Serl might be for you.
>
>
> Congratulations with this first release. I guess my taste's more like
>  LFE's 'minimal' syntax, but more languages running on the Erlang run-
>  time is a good thing IMHO and I'm very curious in which direction your
>  project will develop.
>
>  BTW, Serl's parser doesn't seem to like text files with window line
>  endings ( \r\n ). When saved with Unix line endings, compilation of my
>  test file seemed to work.
>  _______________________________________________
>  erlang-questions mailing list
>  erlang-questions@...
>  http://www.erlang.org/mailman/listinfo/erlang-questions
>


--
hayeah.wordpress.com
   --metacircular thinking
_______________________________________________
erlang-questions mailing list
erlang-questions@...
http://www.erlang.org/mailman/listinfo/erlang-questions