Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Sep 17, 2012
  1. Revert "Add command line option for excluding files matching pattern."

    authored
    Just found the built-in -f switch.
    
    This reverts commit 202eac0.
Commits on Sep 15, 2012
  1. @dancor

    no more DeriveTH

    dancor authored
    should've-been-in / was-the-point-of the last commit.
    i can feel my mind slipping..
Commits on Sep 14, 2012
  1. @dancor

    switch from template haskell to binary-generic

    dancor authored
    I thought this would help but full recompilation is still 57s for me.
    Maybe we need to split modules up more or kill the "deriving Generic" by
    going to the "deriving Data"-based pretty printer?
    
    In any case, we have removed a lot of lines of boilerplate code.
    And you don't have TH spewing things at you in compilation.
  2. @dancor

    toward no warnings

    dancor authored
  3. @dancor

    Main -> Config still uses HSH

    dancor authored
  4. @dancor

    invariants for everyone: NonEmpty lists in the AST

    dancor authored
    some parts of the AST have a list structure that cannot be empty.  this
    is now an invariant in the type system.  there's a NonEmpty library on
    hackage, but it's small and doesn't currently seem into my grand vision
    of qualified importing to possibly have a lot of Data.List functionality.
    or maybe that's stupid.  we'll see what happens.
    
    also some cleanup here and trying to minimize the "Common" modules.
    
    also pulled out WS into a module (long overdue).
  5. @dancor
  6. @dancor

    Fixes #6; support PHP anonymous functions

    dancor authored
    Well, I had to kill the module distinction between Expr and Stmt because
    now there is a cyclic dependency.
    To keep things manageable I split them up instead into Parse and Unparse.
    It seems like Haskell compilation time is O(n^2) of the largest module size
    or something.  StmtParse is still 800 lines which is too big, but I'm not
    sure how to break it up further..
    
    I made a few good simplifications too when I was adding anon functions and
    moving stuff.
    
    Tested on wordpress and:
    <?php
    function &(){} ;
    $a = function &($c=4) use ( $b ) {};
Commits on Sep 13, 2012
  1. @dancor

    Fixes #5; ternary operator without the second argument

    dancor authored
    Tested w/ dump-ast-id on:
    
    <?php
    echo (2 ? : 4);
Commits on Sep 12, 2012
  1. @dancor

    Fixes #1; colon notation for "if" control structures.

    dancor authored
    Added some things to help with testing.
    I've used GenericPretty to display AST tree structures in debugging.
    Unfortunately it requires "deriving Generic" and GHC.Generics.
    We're already "deriving (Data, Typeable)" which seems to be similar
    but not as GHC-only so probably better?  Have to look into.
    Also GenericPretty makes things too wide.  I played around with an
    alternative src/Test/PrettyPrint.hs but gave up on it for now..
    
    Also tested by running dump-as-id on wordpress, which now works until
    there's a "foreach .. :".  So I guess that's next.
Commits on Sep 9, 2012
  1. @dancor

    cp

    dancor authored
  2. @dancor

    cp

    dancor authored
  3. @dancor

    cp

    dancor authored
  4. @dancor

    cp

    dancor authored
  5. @dancor

    cp

    dancor authored
  6. @dancor

    cp

    dancor authored
  7. @dancor

    cp

    dancor authored
  8. @dancor

    just work at bytelevel; no UTF8 "fixing" which breaks stuff

    dancor authored
    tested with id on WordPress:
    ~ lex-pass id -s wp-includes/js/tinymce/plugins/spellchecker/rpc.php
  9. @dancor
  10. @dancor

    Revert "fix issues with unicode input"

    dancor authored
    "time lex-pass -a no-ip" works, but
    "time lex-pass -a id" yells about "resource busy (file is locked)"
    
    This reverts commit fe512ef.
  11. @dancor
  12. @dancor

    Merge pull request #8 from arvidj/issue/4-late-static-binding

    dancor authored
    Issue/4 late static binding
  13. @dancor

    Merge pull request #7 from arvidj/issue/3-namespaces

    dancor authored
    Issue/3 namespaces
  14. #3, Add support for namespaces.

    authored
    Add support for the namespace and the use statement, and allow the namespace separator in identifiers.
Commits on May 14, 2012
  1. @tdudziak

    fix issues with unicode input

    tdudziak authored
  2. @tdudziak

    update to use parsec-3

    tdudziak authored
Commits on Jul 6, 2010
  1. @dancor
  2. @dancor

    normedStrUnitIsRegexUnmetaEvenEscaped was never needed

    dancor authored
    never ended up using this; realized alphanumeric-ness was the key
  3. @dancor

    for php regex, an escaped char is meta iff the char is alphanumeric

    dancor authored
    and even though '\\0' in particular has no real use,
    it won't match as unmeta:
    php> =preg_split('/a\\#/', 'yyya#zzz')
    array(
      0 => "yyy",
      1 => "zzz",
    )
    php> =preg_split('/a#/', 'yyya#zzz')
    array(
      0 => "yyy",
      1 => "zzz",
    )
    php> =preg_split('/a\\0/', 'yyya0zzz')
    array(
      0 => "yyya0zzz",
    )
    php> =preg_split('/a0/', 'yyya0zzz')
    array(
      0 => "yyy",
      1 => "zzz",
    )
    
    Test Plan:
    $bits = preg_split('/[.@]/', $elattr, 2);
    $bits = preg_split('/\[\.@]/', $elattr, 2);
    $bits = preg_split('/\[\.@\]/', $elattr, 2);
  4. @dancor
Commits on Jul 5, 2010
  1. @dancor

    preg_split("//", ..) -> str_split(..)

    dancor authored
    Test Plan:
    preg_split("//", /*lol*/"AAAl\\.l\xffBBB");
    ->
    str_split(/*lol*/"AAAl\\.l\xffBBB");
Something went wrong with that request. Please try again.