guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Wisp as shipped language in Guile?


From: Mark H Weaver
Subject: Re: Wisp as shipped language in Guile?
Date: Fri, 12 May 2017 21:52:46 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux)

Hi Arne,

Arne Babenhauserheide <address@hidden> writes:
> A few weeks ago I asked in IRC whether wisp[1] could be included with
> Guile in modules/language/wisp to allow every guile users to run wisp
> code from any Guile installation via
>
>
>     $ guile --language=wisp [<file>]
>
>
> Essentially this is about making wisp as language part of the
> "batteries" of Guile.

About 4.5 years ago, I went out on a limb and added SRFI-105 (curly
infix expressions) to core Guile.  Even now, I'm of the opinion that
judicious use of curly infix could be beneficial for readability, but as
far as I can tell, there's been essentially no uptake.  If I'm wrong
about that, please let me know.

Although (a subset of) SRFI-105 seems like a clear win to me, I cannot
say the same of either Wisp or SRFI-110 (Sweet expressions).  Of those
latter two efforts, I prefer Wisp, and I can understand the motivation
for wanting to eliminate the parens, but to these eyes the cure seems
worse than the disease.  I tend to agree with Sylvain Benner, who you
quote on your site as saying "I find it less readable and actually it
adds complexity to the syntax because you have to deal with 3 components
to understand the structure [...] So in fact you add 2 more constructs
for readability which IMHO has not the expected effect on most people."

Anyway, regardless of my personal opinion, I think we need to be careful
not to add things to Guile that will go unused and merely contribute to
its increasing bloat.  I think the relevant question is: are a
non-trivial number of people likely to use this?  For starters, do you
know anyone writing non-trivial amounts of Wisp code other than
yourself?  You might expect that to change if we added it to core Guile,
but that didn't seem to happen with SRFI-105.

So, unless Wisp is being used by more people than I suspect, my personal
take on this is that we should not incorporate Wisp into Guile at this
time.

On the other hand, if there are sane changes that we can make to Guile
that would facilitate adding support for languages like Wisp and
SRFI-110 to Guile via external libraries, I would absolutely be in favor
of working toward that goal.

For example, I've pondered the idea of making the "reader directive"
mechanism (e.g. things like #!curly-infix) easily extensible.  For
example, we could perhaps arrange for 'read', when encountering "#!FOO"
in the input stream, to look for a module named something like (system
reader-directives FOO) which would extend the reader as needed.

What do you think?

     Regards,
       Mark


PS: While visiting the web page <http://draketo.de/english/wisp> to
    refresh my memory about Wisp details, my browser tried to access
    port 8888 on my local machine.  Looking at your site code, I see
    that there's an iframe element with
    src="http://127.0.0.1:8888/Sone/viewSone.html?sone=[...]";, and also
    an input element with value="http://127.0.0.1:8888";.  You might want
    to fix those.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]