Type systems and Joy

srenner@mail.ru — 2000-05-22 01:10:27

Is Joy an elephant? Are we the blind men?

iepos wrote:

"My view is that Joy's syntax for integer literals needs to be changed
so that one would do "[1]" and "[2]" to push integers onto the stack,
and not just "1" and "2". That would solve the problem. I like
to interpret "[foo]" as "push 'foo' onto the stack", and since
"foo" is usually a program, usually a program gets pushed onto the
stack, but if "foo" was an integer, then an integer would get pushed."

Stephanie Dupont used to tell a story about herself as a small child.
The family had a pet constrictor and she took it from its cage and
displayed it at a black-tie social function. Henry Kissinger was
talking to her father when Stephanie appeared draped with the snake.
Kissinger's alarmed reaction startled it into seizing up until she
began to turn blue. All her father said was "Really, Stephanie."

"[foo]" does not mean "push 'foo' onto the stack". It means "push
'[foo]' onto the stack." '[1]' already means something: to suggest
that it should mean what '1' means now, and that we shouldn't use the
latter, is so wrong.

The difficulty may be this: [x] always means "push [x] onto the
stack", but x means "push x onto the stack" if x is an integer, but
not if x is 'dup'.

sr