unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
From: Marko Rauhamaa <marko@pacujo.net>
To: Arne Babenhauserheide <arne_bab@web.de>
Cc: guile-user@gnu.org, guile-devel <guile-devel@gnu.org>
Subject: Re: Request for feedback on SRFI-126
Date: Thu, 01 Oct 2015 08:11:13 +0300	[thread overview]
Message-ID: <874mib2mxa.fsf@elektro.pacujo.net> (raw)
In-Reply-To: <4816667.WGBHnKbjFh@fluss> (Arne Babenhauserheide's message of "Tue, 29 Sep 2015 22:18:04 +0200")

Arne Babenhauserheide <arne_bab@web.de>:

> Making Scheme as usable as Python requires finding an elegance which
> fits Scheme and allows creating applications at least as easily as
> with Python — but not necessarily in the same style.

The main thing is to keep the S expressions' data/code duality. Python
doesn't have it. Here's a Python program:

    for i in range(10):
         print(i)

Here's the abstract syntax tree of the same program (generated by
ast.dump):

    Module(
        body=[
            For(target=Name(
                    id='i',
                    ctx=Store()),
                iter=Call(
                    func=Name(
                        id='range',
                        ctx=Load()),
                    args=[Num(n=10)],
                    keywords=[],
                    starargs=None,
                    kwargs=None),
                body=[Expr(value=Call(
                    func=Name(
                        id='print',
                        ctx=Load()),
                    args=[
                        Name(id='i',
                             ctx=Load())],
                    keywords=[],
                    starargs=None,
                    kwargs=None))],
                orelse=[])])

In Scheme, code is its own abstract syntax tree.


Marko



  reply	other threads:[~2015-10-01  5:11 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-27 12:15 Request for feedback on SRFI-126 Taylan Ulrich Bayırlı/Kammer
2015-09-27 19:00 ` Panicz Maciej Godek
2015-09-27 20:11   ` Taylan Ulrich Bayırlı/Kammer
2015-09-27 23:20     ` Panicz Maciej Godek
2015-09-27 23:56       ` Marko Rauhamaa
2015-09-28  8:13       ` Taylan Ulrich Bayırlı/Kammer
2015-09-28 10:37         ` Marko Rauhamaa
2015-09-28 12:39           ` Taylan Ulrich Bayırlı/Kammer
2015-09-28 20:02         ` Panicz Maciej Godek
2015-09-29 20:05           ` Arne Babenhauserheide
2015-09-29 23:02             ` Panicz Maciej Godek
2015-09-29 23:44               ` Arne Babenhauserheide
2015-09-30  6:39                 ` Panicz Maciej Godek
2015-09-30 22:16                   ` Arne Babenhauserheide
2015-09-30 23:39                     ` Panicz Maciej Godek
2015-09-30  7:58             ` Taylan Ulrich Bayırlı/Kammer
2015-09-30 22:20               ` Arne Babenhauserheide
2015-10-01  7:33                 ` Taylan Ulrich Bayırlı/Kammer
2015-09-29 20:18   ` Arne Babenhauserheide
2015-10-01  5:11     ` Marko Rauhamaa [this message]
2015-09-28 15:46 ` Christopher Allan Webber
2015-09-28 17:34   ` Taylan Ulrich Bayırlı/Kammer
2015-09-30 17:41 ` Mark H Weaver
2015-09-30 22:33   ` Taylan Ulrich Bayırlı/Kammer

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://www.gnu.org/software/guile/

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

  git send-email \
    --in-reply-to=874mib2mxa.fsf@elektro.pacujo.net \
    --to=marko@pacujo.net \
    --cc=arne_bab@web.de \
    --cc=guile-devel@gnu.org \
    --cc=guile-user@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.
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).