Skip to content

Instantly share code, notes, and snippets.

@ELLIOTTCABLE
Created December 24, 2009 04:12
Show Gist options
  • Save ELLIOTTCABLE/263000 to your computer and use it in GitHub Desktop.
Save ELLIOTTCABLE/263000 to your computer and use it in GitHub Desktop.
How we run through `foo ↼ 123`
- `foo` is dereferenced in `locals namespace`; no such name exists, so the
`namespace` returns an `undefined`, with `the.undefined scope` attached to
`locals`, and `the.undefined name` attached to the missing name
- `↼` is dereferenced in `the.undefined namespace`; it dereferences to a
function
- `the.undefined ↼ infix?` is `true`, so we look ahead and deal with `123`
- `123` is a literal, so we don’t have to do anything with it
- We call `the.undefined ↼(123)`
- The implementation of `↼` does something akin to
`my scope __set(my name, 123)`
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment