Skip to content

Instantly share code, notes, and snippets.

@jussiry
Created January 30, 2012 18:35
Show Gist options
  • Save jussiry/1705856 to your computer and use it in GitHub Desktop.
Save jussiry/1705856 to your computer and use it in GitHub Desktop.
Organic Coffee
reserved words
if unless else then when is be becomes act function
act / function
denoted with keyword act (or function) or with indentation
e.g. word_array search! word act word length is 5
when denoted with intendation, first row can be used to define parameters, e.g.
word_array search!
word
word lengt < 5
all acts must be known by compiler
first use defined with exclamation mark
always in paramaters
unknown objects, e.g. foo bar!
also *with* or following indentation can be used, since they denote parameter
e.g. run with shoe
after this exclamation mark can be used, but it's not necessary
to avoid execution of act precede with exclamation mark
e.g. human can! !run
parameters
binds to closest act
when two acts at same "distance", binds to the one on left (as in coffeescript)
normally separated by empty space
*,* and *and* used when object hierarchies needed
e.g. map! Data deals, deal act deal becomes deal id
with
used with act to denote position of parameters when needed
e.g.
with foot and hand run!
object hierarchies
space used to denote child objects
e.g. Data deals 234 id
be / becomes
=
and
compiles to &&, except when in parameter definition
use parenthesis in parameters to compile to &&
e.g. run! foot (foo and bar)
compile
one row at a time
development mode
adds checks: typeof [act] === 'function'
production mode
no checking, no comments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment