Hi David, Am Sonntag, 9. November 2014, 19:10:32 schrieb David A. Wheeler: > > With the new release of wisp, curly infix is active by default: > > > > http://draketo.de/light/english/wisp-lisp-indentation-preprocessor#v0.8.0 > Very cool! Have you considered making neoteric active by default as well? > > Then you can do: > > stuff cos(a)
I considered it, but decided against it, because in wisp that provides
less advantages than in sweet expressions, while adding ambiguity (one
more way to spell the same code).
That expression in wisp is simply
stuff : cos a
or
stuff
cos a
In sweet that would be a problem, as far as I know, because if you want to do
(stuff (cos a) b c d e)
without neoteric expressions, you have to do it as
stuff
cos a
b
c
d
e
Here neoteric experssions help a lot:
stuff cos(a) b c d e
But in wisp you’d just do
stuff : cos a
. b c d e
or
stuff
cos a
. b c d e
On the other hand, this difference makes neoteric expressions much less elegant
in wisp than in sweet. In sweet you can just to
stuff
cos(a)
because a single element on a line is treated as that element, not as a
function call. In wisp you’d have to do
stuff
. cos(a)
because a line always begins a function call, except when started with a period.
So I’d rather have users enable that manually, if they want it. By enabling
curly-infix, wisp requires SRFI-105, so neoteric expressions should always be
available with wisp (so people can experiment with them and decide whether they
want them, and they don’t have to worry that that brings them incompatibilities
in other wisp implementations).
Curly infix is another matter, because it allows using the language from the
domain of the problem (math):
stuff {3 + 4}
This makes the basics of a very important domain look natural, which everybody
learns in school. Function syntax with f(x) = ... is only taught much later, so
I don’t consider it as similarly essential as infix math notation.
Best wishes,
Arne
signature.asc
Description: This is a digitally signed message part.
------------------------------------------------------------------------------ Comprehensive Server Monitoring with Site24x7. Monitor 10 servers for $9/Month. Get alerted through email, SMS, voice calls or mobile push notifications. Take corrective actions from your mobile device. http://pubads.g.doubleclick.net/gampad/clk?id=154624111&iu=/4140/ostg.clktrk
_______________________________________________ Readable-discuss mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/readable-discuss
