unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Thompson, David" <dthompson2@worcester.edu>
To: Andreas Enge <andreas@enge.fr>
Cc: guix-devel <guix-devel@gnu.org>
Subject: Re: Switching to ECMAscript
Date: Tue, 1 Apr 2014 14:48:32 -0400	[thread overview]
Message-ID: <CAJ=RwfYFZb72dt1QBJ=AXSgmqNtjc4FtBj==QNnR-7w8eb0HBg@mail.gmail.com> (raw)
In-Reply-To: <20140401140750.GA4471@debian>

On Tue, Apr 1, 2014 at 10:07 AM, Andreas Enge <andreas@enge.fr> wrote:
> Hello,
>
> this is quite outrageous, and if you decide to follow this road, I am certain
> to quit the project, and maybe even fork it.
>
> I agree that the choice of using Scheme/Guile was maybe made in a hurry and
> prematurely. Scheme dialects seem to follow the paradigm "one language, one
> programmer" - at the Chaos Communication Congress, I did not meet two people
> at the Lisp table programming in the same dialect! With our number of contri-
> butors, we have already quite transgressed on this rule. Also, the functional
> paradigm is a bit dated. Admittedly, we have package "objects", inheriting
> from others, but this feels a bit like an add-on to modernise the language.
>
> However, there are much more reasonable choices than Ecmascript, with its
> quirky object model, and whose functional features imply that maybe we would
> not completely get rid of the past. Personally, I think we should switch to
> Python.
>
> Among my teaching colleagues, this is now the language of choice - just about
> everybody uses it! So I think that on the way to world domination, which we
> should strive for, this will give us lots of opportunity (and set a positive
> precedent in the GNU project, which could also use such a modernising boost).
> Personally, getting a grasp on Python would be very helpful for me and serve
> as an introduction to Sage, the major free mathematics software regrouping
> more or less all such free software under one umbrella.
>
> Python is a modern programming language, and I think that also from an equal
> opportunity point of view it would be a good choice: While Lisp is a left-
> over from a time where computer science was essentially at the reach of
> white males in the developed world, a switch could be seen as a step towards
> a more inclusive environment (notice, for instance, that the OLPC Sugar
> environment is written in Python).
>
> It is unfortunate that also Nix prepares a switch to Ecmascript; while
> I consider it a positive sign that they envision an alternative language,
> maybe there is still the possibility of convincing them of the merits of
> Python; we might even join forces and form one community.
>
> What do you think?
>
> Andreas
>
>

Andreas,

I think that you are on to something with Python.  It is more widely
used in systems programming on GNU/Linux than any Lisp dialect or even
ECMAScript.  However, I don't think Python is the complete answer.  I
don't think that we should discard the elegance and simplicity of
s-expressions and the power of macros so hastily.  Therefore, I
suggest we seriously consider using Hy[0].

Hy is a Lisp dialect that is embedded in Python.  Using Hy we can get
the best of both worlds.  We'll have Python's extensive collection of
libraries and object oriented programming features at our disposal
without sacrificing s-expressions and macros.

Ludovic mentioned that we would have to implement Python in Guile, but
I think that since we're rewriting the code anyhow, we can eschew
Guile in favor of CPython.  Guile has served us well up to this point,
but it looks like it's just not going to scale.  I think that 1 year
would be plenty of time to make this change as well.

Thoughts?

- Dave

[0] Hy http://hylang.org

  parent reply	other threads:[~2014-04-01 18:48 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-01  9:45 Switching to ECMAscript Ludovic Courtès
2014-04-01 10:02 ` Alex Sassmannshausen
2014-04-01 13:21 ` Ludovic Courtès
2014-04-01 14:07 ` Andreas Enge
2014-04-01 16:17   ` Ludovic Courtès
2014-04-01 18:48   ` Thompson, David [this message]
2014-04-01 15:16 ` Felipe López
2014-04-02 13:12 ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAJ=RwfYFZb72dt1QBJ=AXSgmqNtjc4FtBj==QNnR-7w8eb0HBg@mail.gmail.com' \
    --to=dthompson2@worcester.edu \
    --cc=andreas@enge.fr \
    --cc=guix-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).