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


Attachment: 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
Readable-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/readable-discuss

Reply via email to