Lisp is such a joy to implement. FORTH is fun too.

I'm working on a scheme-alike on and off. The idea is to take the message 
passing and delegation from Self, expose it in Lisp, and then map all of that 
to JavaScript. 

One idea I had when I was messing around with OMetaJS was that it might have 
some kind of "escape syntax" like

(let ((x 1))
  #{x++; }#
)

Would basically mean

(let ((x 1))
  (+ x 1))

...which would make doing "primitives" feel pretty smooth, and also give you 
the nice JSON syntax.

The rule is simple too, '#{' followed by anything:a up until '}#' -> eval(a)

Only problem is relating environment context between the two languages, which I 
haven't bothered to figure out yet. The JS eval() in this case is insufficient.

(Sorry about the pseudocode, on a phone and don't keep OMeta syntax in my 
head...)

On Jul 21, 2013, at 1:15 PM, Alan Moore <[email protected]> wrote:

> JSON is all well and good as far as lowest common denominators go. However, 
> you might want to consider EDN:
> 
> https://github.com/edn-format/edn
> 
> On the other hand, if you are doing that then you might as well go *all* the 
> way and re-invent half of Common Lisp :-)
> 
> http://en.wikipedia.org/wiki/Greenspun%27s_tenth_rule
> 
> Alan Moore
> 
> 
> On Sun, Jul 21, 2013 at 10:28 AM, John Carlson <[email protected]> wrote:
> Hmm.  I've been thinking about creating a macro language written in JSON that 
> operates on JSON structures.  Has someone done similar work?  Should I just 
> create a JavaScript AST in JSON? Or should I create an AST specifically for 
> JSON manipulation?
> 
> Thanks,
> 
> John
> 
> 
> _______________________________________________
> fonc mailing list
> [email protected]
> http://vpri.org/mailman/listinfo/fonc
> 
> 
> _______________________________________________
> fonc mailing list
> [email protected]
> http://vpri.org/mailman/listinfo/fonc
_______________________________________________
fonc mailing list
[email protected]
http://vpri.org/mailman/listinfo/fonc

Reply via email to