I think that . should be interpreted according
to the arity of the procedures involved. E.g. cons.x.y => (cons x y)
no.x => (no x)
no.cons.x.y => (no (cons x y))
cons.no.x.y => (cons (no x) y)
in polish fashion.Not to mix read and evaluation times,
cons.no.x.y should be read as
(prefix cons no x y) and "prefix"
should be a function that takes in
account the arities of the procedures. The nice side is that the intrasymbol
syntax becomes more like a morpheme
system. The problem is that variadic procedures
are no longer supported. Besides, I think that the current "."
should be noted "_", and "x.y" should
be notation for (x 'y) |