Permalink
Commits on Oct 31, 2010
  1. [ bump version to 0.0.7 ]

    jbr committed Oct 31, 2010
  2. [ add -e / --eval ]

    jbr committed Oct 31, 2010
    $ sibilant -e "(console.log (+ 5 2))"
    
    7
    
    $ echo "(console.log '(a b c))" | sibilant -e
    
    [ 'a', 'b', 'c' ]
  3. [ chmod +x test/test.lisp & shebang it! ]

    jbr committed Oct 31, 2010
    To run tests:
    $ test/test.lisp 
    
    Testing sibilant version 0.0.6
    (at /Users/jbr/code/sibilant)
    .......................................
  4. [ strip shebang in translate-file ]

    jbr committed Oct 31, 2010
    #!/usr/bin/env sibilant -x
    
    (console.log "!!!!!")
  5. [ move version string from cli to sibilant ]

    jbr committed Oct 31, 2010
    print it out at the start of testing
  6. [ fix bug in optional args ]

    jbr committed Oct 31, 2010
    previously (lambda (&optional first-arg second-arg) true)
    
    would have been
    
    (function(firstArg, secondArg) {
      // first-arg:optional second-arg:required
      if (arguments.length < 2) // if first-arg is missing
        var second-arg = first-arg, first-arg = undefined;
      
      return true;
    })
    
    But now it is correctly
    
    (function(firstArg, secondArg) {
      // firstArg:optional secondArg:required
      if (arguments.length < 2) // if firstArg is missing
        var secondArg = firstArg, firstArg = undefined;
      
      return true;
    })
Commits on Oct 29, 2010
  1. [ add sibilant -v / --version ]

    jbr committed Oct 29, 2010
  2. [ update the documentation ]

    jbr committed Oct 29, 2010
  3. [ add a fairly verbose --help ]

    jbr committed Oct 29, 2010
  4. [ fix up options parser to make flags not absorb the next argument ]

    jbr committed Oct 29, 2010
    Flags are specified by setting the alias to false in options (see line src/cli.lisp:14 as of this revision).  This needs to be more explicit, and false doesn't really feel right.
    
    Additionally, synonym lookup is now recursive in the options parser, so you could hypothetically set multi-step aliases.
Commits on Oct 28, 2010
  1. [ update tests with recent macros ]

    jbr committed Oct 28, 2010
  2. [ remove test.js since the tests can now be run -x ]

    jbr committed Oct 28, 2010
    $ sibilant test/test.lisp -x
  3. [ add sibilant -x file.lisp ]

    jbr committed Oct 28, 2010
    this executes the file directly, with no intermediary .js written to file.
    
    aliased as --execute
  4. [ remove macros.let ]

    jbr committed Oct 28, 2010
  5. [ move sibilant files to src, js to lib & cli changes ]

    jbr committed Oct 28, 2010
    in addition, add the each macro, the defhash macro, and allow setf to take multiple pairs.  replace all uses of dolist with each.
Commits on Oct 27, 2010
  1. [ add the function? macro ]

    jbr committed Oct 27, 2010
    and test (defun x.y () body)
  2. [ use the new (defun x.y (args...) body...) form ]

    jbr committed Oct 27, 2010
    it was really ugly to do (set x 'y (lambda (args...) body...))
    
    and just as bad to do (setf x.y (lambda (args...) body...))
  3. [ if a function name includes a dot, don't prepend with var ]

    jbr committed Oct 27, 2010
    (defun foo () "hello") ;=> var foo = function(){return "hello";};
    
    but
    
    (defvar obj (hash)) ;=> var obj = {};
    (defun obj.foo () "world") ;=> obj.foo = function(){return "world";};
Commits on Oct 24, 2010
  1. [ initial commit on options and cli ]

    jbr committed Oct 24, 2010
    this is moving in a direction to make the sibilant command more useful, including specifying an output dir, as in
    
    $ sibilant file1.lisp file2.lisp -o output_dir
    
    or
    
    $ sibilant input_dir/* -o output_dir
    
    --
    Longer term plans include sibilant -x (execute) file.lisp, hashbang sibilant (stdin scripts), etc.
Commits on Oct 8, 2010
  1. [ use multi defvar ]

    jbr committed Oct 8, 2010
  2. [ defvar allows multiple assignments per statement ]

    jbr committed Oct 8, 2010
    (defvar a b
            c d)
    
    ;=>
    
    var a = b,
        c = d;
Commits on Aug 30, 2010
Commits on Aug 28, 2010
  1. [ fix a problem with detect -- use select instead ]

    jbr committed Aug 28, 2010
    i'll fix this later, as (first (select ...)) is less efficient than (detect ...) but something seems to be wrong with my implementation of detect.
  2. [ wrong repo (don't tell anyone) ]

    jbr committed Aug 28, 2010
  3. [ bam, server.js ]

    jbr committed Aug 28, 2010
Commits on Aug 24, 2010
  1. [ tidy up package file for npm ]

    jbr committed Aug 24, 2010
  2. [ bump version to 0.0.5 ]

    jbr committed Aug 24, 2010