This page is no longer maintained — Please continue to the home page at www.scala-lang.org

Babel-17 v0.21.1

6 replies
phlegmaticprogrammer
Joined: 2010-07-23,
User offline. Last seen 2 years 15 weeks ago.

I would like to announce the availability of Babel-17 v0.21.1, a
programming language for purely functional programming. It is hosted
at www.babel-17.com. There is also a Netbeans plugin for Babel-17,
which is currently the featured plugin at netbeans.org .

The reason I think why Babel-17 might be of interest to Scala
programmers is that (with a little bit of imagination) you can think
of Babel-17 as a dynamically typed, purely functional version of
Scala. It will be interesting to see if Babel-17 can develop
alternative mechanisms to the complex static type system of Scala to
allow for the creation of very large programs and libraries. Now is a
good time to become involved with Babel-17!

Cheers,

Steven Obua

Philippe Lhoste
Joined: 2010-09-02,
User offline. Last seen 42 years 45 weeks ago.
Re: Babel-17 v0.21.1

On 10/02/2011 05:47, Steven Obua wrote:
> I would like to announce the availability of Babel-17 v0.21.1, a
> programming language for purely functional programming. It is hosted
> at www.babel-17.com. There is also a Netbeans plugin for Babel-17,
> which is currently the featured plugin at netbeans.org .

Missing information (I deliberately answer before going to the site...): is it yet another
language targeting the JVM or does it compiles to native code (something I am interested
in) or is it an interpreted language with its own VM?

> The reason I think why Babel-17 might be of interest to Scala
> programmers is that (with a little bit of imagination) you can think
> of Babel-17 as a dynamically typed,

Given the heated thread in scala-user about usefulness of dynamic languages, it is
interesting that you post here (but personally, I appreciate it, I like discovering new
languages, even if sometime the visit is short... :-))
The said debate is rather unsurprisingly against dynamic typing, globally - I am rather
agnostic, although I appreciate comfort of static typing in IDEs.

> purely functional version of

So, no objects? :-(
I wonder what advantages such language has over, say, Haskel which is well established (in
its niche). To discover on your site, perhaps.

> Scala. It will be interesting to see if Babel-17 can develop
> alternative mechanisms to the complex static type system of Scala to
> allow for the creation of very large programs and libraries. Now is a
> good time to become involved with Babel-17!

Now, let's see that! ;-)

Philippe Lhoste
Joined: 2010-09-02,
User offline. Last seen 42 years 45 weeks ago.
Re: Babel-17 v0.21.1

To answer my own questions (starting to read the spec):

- Yes, yet another JVM language... :-) Apparently written in Java and Scala (so this
thread has a reason to be here...) And of course you address the "why yet another
language" part (with classical answer: because I want a language I like).

- It has some form of object support.

- First look, it is on the verbose side (for in do end, if then else end), which will irk
lot of people coming from C-like languages, if I judge by the numerous message on the
topic in the Lua mailing list. I like Lua, so I don't mind this style...

- Only /* */ for comments? Even the C standard is now accepting line comments! And some
languages actually reject block comments... (but I find them convenient).

I only scanned the spec., I see it is a work in progress, I find the experiment
interesting but remarks like "some way of dealing with state, user interfaces, and
communication with the outside world will be added to future versions of Babel-17." makes
it scary to use right now, beside playing with it... :-)

phlegmaticprogrammer
Joined: 2010-07-23,
User offline. Last seen 2 years 15 weeks ago.
Re: Re: Babel-17 v0.21.1

Thanks for taking a look at it :-)

> To answer my own questions (starting to read the spec):
>
> - Yes, yet another JVM language... :-) Apparently written in Java and Scala (so this thread has a reason to be here...) And of course you address the "why yet another language" part (with classical answer: because I want a language I like).
>

I think the answer I gave was longer than that :-D

> - It has some form of object support.
>
> - First look, it is on the verbose side (for in do end, if then else end), which will irk lot of people coming from C-like languages, if I judge by the numerous message on the topic in the Lua mailing list. I like Lua, so I don't mind this style...

It is not really that verbose if you consider how compact your programs will be.

>
> - Only /* */ for comments? Even the C standard is now accepting line comments! And some languages actually reject block comments... (but I find them convenient).

Yeah, good point. Maybe there are line comments in Babel-17's future(they were in Babel-17's past :-)) ... I am just not sure about the syntax, given that "//" is actually an operator in Babel-17.

>
> I only scanned the spec., I see it is a work in progress, I find the experiment interesting but remarks like "some way of dealing with state, user interfaces, and communication with the outside world will be added to future versions of Babel-17." makes it scary to use right now, beside playing with it... :-)

"Do everyday one thing that scares you" :-)

- Steven

Philippe Lhoste
Joined: 2010-09-02,
User offline. Last seen 42 years 45 weeks ago.
Re: Babel-17 v0.21.1

On 10/02/2011 14:48, Steven Obua wrote:
>> language" part (with classical answer: because I want a language I like).
>
> I think the answer I gave was longer than that :-D

Of course, I was summarizing, full answer is at the source of info...

> It is not really that verbose if you consider how compact your programs will be.

"Verbose" is what detractors of languages like Lua say. I would say "readable"... :-)

> Yeah, good point. Maybe there are line comments in Babel-17's future(they were in
> Babel-17's past :-)) ... I am just not sure about the syntax, given that "//" is
> actually an operator in Babel-17.

Lua, and some other languages, use -- which is nice, once you are used to it. If you don't
use this operator, it is a good option (although less consistent with /**/)
# is also popular...

soc
Joined: 2010-02-07,
User offline. Last seen 34 weeks 5 days ago.
Re: Re: Babel-17 v0.21.1

Hi,

> Lua, and some other languages, use -- which is nice, once you are used
> to it. If you don't use this operator, it is a good option (although
> less consistent with /**/)
> # is also popular...

Or maybe something starting with /*?
(Depends on how/if you want to integrate API documentation into
comments e. g. Scala/Java use /** for that already).

What about /*/ for single line comments?

Bye,

Simon

phlegmaticprogrammer
Joined: 2010-07-23,
User offline. Last seen 2 years 15 weeks ago.
Re: Re: Babel-17 v0.21.1

On 10.02.2011, at 15:11, Simon Ochsenreither wrote:

> Hi,
>
>> Lua, and some other languages, use -- which is nice, once you are used
>> to it. If you don't use this operator, it is a good option (although
>> less consistent with /**/)
>> # is also popular...
>
> Or maybe something starting with /*?
> (Depends on how/if you want to integrate API documentation into comments e. g. Scala/Java use /** for that already).
>
> What about /*/ for single line comments?
>
> Bye,
>
> Simon

I was actually thinking about /*/ a couple of weeks ago. There were problems with how to teach that to ANTLR, and in the end I decided that it is just a little bit too clumsy looking anyway. -- is actually an operator in Babel-17. I have almost decided to go with ## for single-line and with #( )# for multiline comments, that would also fit with the fact that Babel-17 knows pragmas like #assert, #log and so on ...

Well, I guess that's enough about Babel-17 syntax on the scala-debate mailing list ;-)

- Steven

Copyright © 2012 École Polytechnique Fédérale de Lausanne (EPFL), Lausanne, Switzerland