Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2010-04-15 | * Store lists as lists of pointers to values rather than as lists of | Eelco Dolstra | 1 | -0/+1 | |
values. This improves sharing and gives another speed up. Evaluation of the NixOS system attribute is now almost 7 times faster than the old evaluator. | |||||
2010-04-14 | * Implemented inherit. | Eelco Dolstra | 1 | -1/+4 | |
2010-04-14 | * Implemented withs. | Eelco Dolstra | 1 | -1/+2 | |
2010-04-14 | * After parsing, compute level/displacement pairs for each variable | Eelco Dolstra | 1 | -2/+3 | |
use site, allowing environments to be stores as vectors of values rather than maps. This should speed up evaluation and reduce the number of allocations. | |||||
2010-04-13 | * Use a symbol table to represent identifiers and attribute names | Eelco Dolstra | 1 | -1/+24 | |
efficiently. The symbol table ensures that there is only one copy of each symbol, thus allowing symbols to be compared efficiently using a pointer equality test. | |||||
2010-04-12 | * Finished the ATerm-less parser. | Eelco Dolstra | 1 | -2/+2 | |
2010-04-12 | * Indented strings. | Eelco Dolstra | 1 | -0/+1 | |
2010-04-12 | * More missing constructs. | Eelco Dolstra | 1 | -3/+5 | |
2010-04-12 | * Don't use ATerms for the abstract syntax trees anymore. Not | Eelco Dolstra | 1 | -10/+12 | |
finished yet. | |||||
2010-04-12 | (no commit message) | Eelco Dolstra | 1 | -55/+58 | |
2010-04-07 | * Implemented the primops necessary for generating the NixOS manual. | Eelco Dolstra | 1 | -1/+4 | |
2010-03-31 | * Implemented `rec { inherit ...; }'. | Eelco Dolstra | 1 | -0/+3 | |
2010-03-30 | * More operators / primops. | Eelco Dolstra | 1 | -0/+1 | |
2010-03-30 | * More primops. | Eelco Dolstra | 1 | -2/+4 | |
2010-03-30 | * Implemented `map'. | Eelco Dolstra | 1 | -0/+2 | |
2010-03-30 | * Make `import' work. | Eelco Dolstra | 1 | -1/+3 | |
2010-03-29 | * Started integrating the new evaluator. | Eelco Dolstra | 1 | -661/+1 | |
2010-03-29 | (no commit message) | Eelco Dolstra | 1 | -0/+32 | |
2010-03-29 | (no commit message) | Eelco Dolstra | 1 | -0/+1 | |
2010-03-29 | (no commit message) | Eelco Dolstra | 1 | -12/+55 | |
2010-03-28 | * Strings. | Eelco Dolstra | 1 | -0/+45 | |
2010-03-28 | (no commit message) | Eelco Dolstra | 1 | -53/+51 | |
2010-03-28 | * Implemented multi-argument primops. | Eelco Dolstra | 1 | -9/+36 | |
2010-03-26 | * Primops (not yet finished). | Eelco Dolstra | 1 | -16/+114 | |
2010-03-26 | * Implemented the `==' and `!=' operators. These now use a deep | Eelco Dolstra | 1 | -0/+67 | |
equality test, so they also work for (finite) attribute sets and lists. | |||||
2010-03-25 | * Measure stack usage. | Eelco Dolstra | 1 | -3/+11 | |
2010-03-25 | * Implemented lists. | Eelco Dolstra | 1 | -7/+63 | |
2010-03-25 | * Quick and dirty implementation of `with'. `with e1; e2' is | Eelco Dolstra | 1 | -6/+55 | |
basically desugared to `let <with> = e1; e2', and `lookupVar' looks in each <with> in the environment chain for an attribute with the specified name. | |||||
2010-03-25 | * Don't convert variable names to strings. | Eelco Dolstra | 1 | -12/+15 | |
2010-03-25 | * Implement blackholing. | Eelco Dolstra | 1 | -8/+9 | |
2010-03-25 | * Implement `...' and default function arguments. | Eelco Dolstra | 1 | -7/+31 | |
2010-03-25 | * Simplify @-patterns: only `{attrs}@name' or `name@{attrs}' are now | Eelco Dolstra | 1 | -98/+38 | |
allowed. So `name1@name2', `{attrs1}@{attrs2}' and so on are now no longer legal. This is no big loss because they were not useful anyway. This also changes the output of builtins.toXML for @-patterns slightly. | |||||
2010-03-24 | * Implemented attribute set pattern matches. | Eelco Dolstra | 1 | -13/+117 | |
2010-03-24 | * Store values in environments. | Eelco Dolstra | 1 | -64/+66 | |
2010-03-24 | * Reduce the number of value allocations in eval() by moving | Eelco Dolstra | 1 | -26/+38 | |
responsibility for allocation of the result to the caller. | |||||
2010-03-24 | * Plain lambdas. | Eelco Dolstra | 1 | -2/+38 | |
2010-03-23 | * Start of an evaluator that uses call-by-need (with thunk updating) | Eelco Dolstra | 1 | -0/+191 | |
instead of (memoised) call-by-name. |