Re: [stack] are concatenative languages applicative?
John Cowan <[email protected]>
| Newsgroups | gmane.comp.lang.concatenative |
|---|---|
| Message-ID | <[email protected]> |
John Nowak scripsit: > What I'm interested in is this "dequotation" rule: > > [$A] i == $A > > In other words, these are all equivalent: > > 1 2 [3 * *] i == 1 2 3 * * == 1 [2 3] i [* *] i > > An important thing to note here is that this translation is just a > rewriting of function-level code. '$A' is a function, not a value. Well, yes and no. In Joy, at least, *everything* is a value, and every value may be applied to the stack. So [1 2 3] is the value "the list containing 1, 2, and 3" where 1, 2, 3, and the list itself are just values. Only when we apply i (which itself is just a symbol) to a stack with [1 2 3] at the top of it are 1, 2, and 3 applied to the rest of the stack. This is quite different from Cat (or Scheme) where some values are applyable and some are not. -- Mos Eisley spaceport. You will never John Cowan see a more wretched hive of scum and [email protected] villainy -- unless you watch the http://www.ccil.org/~cowan Jerry Springer Show. --georgettesworld.com