Subject: Re: NetBSD TODO list questions - propolice & scheme
To: Peter Bex <Peter.Bex@xs4all.nl>
From: Jeffrey A. Edlund <jae-bsd@glaxonlabs.com>
List: netbsd-users
Date: 03/19/2006 15:25:33
On Sun, 19 Mar 2006 12:03:10 +0100
Peter Bex <Peter.Bex@xs4all.nl> wrote:

> I think Scheme is an excellent choice for an extension language, but I too
> don't see why we would need it in base.
> 
> Nevertheless, there are some Schemes out there with an acceptable license,
> notably lang/scheme48 and lang/chicken.  Scheme 48 even has something
> called 'pre-scheme', which is a stripped down version of Scheme that maps
> almost trivially to C, which makes it ideal for embedded systems
> development.  This would make it excellent for use in NetBSD.  The code
> is *very* clean as well.  There's one important issue right now: it
> doesn't compile or run on all our supported systems.  It segfaults during
> building on my amd64 and the Makefile says it is not available for Alpha
> either.
> 
> Chicken, on the other hand, is probably the Scheme with the most add-on
> libraries and packages today.  Its code is not very clean and compiled
> programs require linking against extra libraries (pre-scheme produces
> stand-alone C code).  Mostly because of all the add-on packages, its
> openness of development (scheme48 is a bit of an "ivory tower" approach
> as far as I can tell) and its lightning-fast compiled code it is my
> Scheme of choice.  It basically allows you to get your work done with
> the least amount of fuss.  There is already a Linux project that uses
> Chicken intensively for scripting and extension; Adamantix.
> See http://www.adamantix.org

Thanks, I'll check those out.  lang/gauche also looks interesting. It's
too bad that tiny scheme isn't complete.

> 
> > I know that OpenBSD ships with perl and I think that freeBSD does as
> > well. If we wanted to use such a large language, my own preference
> > would be for Python, but I understand that people use NetBSD a lot in
> > embedded environments so we might want to keep such things out of the
> > base system.  (However I do think that there are a few things that the
> > project could do to make things a bit more friendly for sysadmins.)  
> 
> Exactly.  Also, Perl is deprecated IMHO.  Of course, those who love
> Perl would say otherwise :)  If we would go for a language like Perl
> I would recommend Ruby.  It has great support for regular expressions,
> like Perl, but it is truly object-oriented and it's a little more
> readable :)

I was also interested in ruby, but I was concerned that their license
would be considered incompatible.
(http://www.ruby-lang.org/en/LICENSE.txt) It's licensed under the GPL
and the Ruby license which (as far a I can tell) requires you to make
your modifications public or rename your executables and install the
original ruby as well. Also, the license indicates that there are files
in the distribution that have different licenses. Looking through the
files, the only real show stopper that I see is that regex.[ch] is
clearly licensed under only the GPL.

Best, 

Jeffrey