Permalink
Switch branches/tags
Nothing to show
Commits on Jul 24, 2013
  1. Support parens in strings.

    maryrosecook committed Jul 24, 2013
Commits on Jul 14, 2013
  1. Remove done todo.

    maryrosecook committed Jul 14, 2013
  2. Fix lambda test.

    maryrosecook committed Jul 14, 2013
  3. Whitespace.

    maryrosecook committed Jul 14, 2013
Commits on Jul 10, 2013
  1. Make lambda definition just a JS fn.

    maryrosecook committed Jul 10, 2013
    * Compatible with new regime where invocation code just checks to see if first element of list is a JS function.
  2. Make built-in fn invocation run off JS functions.

    maryrosecook committed Jul 10, 2013
    * No longer insert special node into AST.
    * Identifier lookup becomes just a context lookup.
    * When figuring out if a list is an invocation, just check if first element is a JS function.
  3. Make categorize() just work on atoms and get called during parenthesi…

    maryrosecook committed Jul 10, 2013
    …ze().
    
    * Only applied to atoms, so its weird it had to know how to traverse array.
Commits on Jun 30, 2013
Commits on Jun 22, 2013
Commits on Jun 21, 2013
  1. rm dupe fn.

    maryrosecook committed Jun 21, 2013
  2. thanks.

    maryrosecook committed Jun 21, 2013
  3. Swap switch for if/else.

    maryrosecook committed Jun 21, 2013
  4. Add if, and, or

    mtornwall committed Jun 21, 2013
    And, or behave correctly with respect to short-circuiting.
    This is not testable, unfortuantely.
Commits on Jun 20, 2013
  1. Let there be let

    mtornwall committed Jun 20, 2013
    Introduced the (let[rec] ((name expr) ...) body) forms, which evaluate
    body in an environment where all the name(s) ... are bound to the result
    of evaluating the corresponding expr(s) ..., either in the surrounding
    environment (let) or in the body's environment as it's being built (letrec).
  2. Fix import name case error

    mtornwall committed Jun 20, 2013
    repl.js imports "./tinyLisp", but the actual file is called
    "tinylisp" (note lowercase L). This breaks on Linux since
    the file system is case-sensitive.