aboutsummaryrefslogtreecommitdiff
path: root/src/libexpr
AgeCommit message (Collapse)Author
2010-04-07* Implemented the primops necessary for generating the NixOS manual.Eelco Dolstra
2010-04-06* In eval(), don't use the target value `v' as a temporary.Eelco Dolstra
Overwriting `v' breaks when the expression evaluation to an assertion failure or throw.
2010-04-01* Removed the `~' operator.Eelco Dolstra
2010-04-01* Quick hack to make coerceToString work more or less correctly onEelco Dolstra
nested lists. `nix-instantiate' can now evaluate the NixOS system derivation attribute correctly (in 2.1s on my laptop vs. 6.2s for the trunk).
2010-04-01* Improve sharing.Eelco Dolstra
2010-04-01* Functions are incomparable.Eelco Dolstra
2010-04-01* Make `derivation' lazy again for performance. It also turns outEelco Dolstra
that there are some places in Nixpkgs (php_configurable / composableDerivation, it seems) that call `derivation' with incorrect arguments (namely, the `name' attribute missing) but get away with it because of laziness.
2010-03-31* Fixed the trace primop and path comparison.Eelco Dolstra
* Removed exprToString and stringToExpr because there is no ATerm representation to work on anymore (and exposing the internals of the evaluator like this is not a good idea anyway).
2010-03-31* Handle string contexts. `nix-instantiate' can now correctly computeEelco Dolstra
the `firefoxWrapper' attribute in Nixpkgs, and it's about 3 times faster than the trunk :-)
2010-03-31* Get nix-env to compile.Eelco Dolstra
2010-03-31* Cache parse trees to prevent repeated parsing of imported NixEelco Dolstra
expressions.
2010-03-31* Implemented derivations.Eelco Dolstra
2010-03-31Make source location info in the XML output optional.Ludovic Courtès
* src/libexpr/expr-to-xml.cc (nix::showAttrs): Add `location' parameter. Provide location XML attributes when it's true. Update callers. (nix::printTermAsXML): Likewise. * src/libexpr/expr-to-xml.hh (nix::printTermAsXML): Update prototype; have `location' default to `false'. * src/nix-instantiate/nix-instantiate.cc (printResult, processExpr): Add `location' parameter; update callers. (run): Add support for `--no-location'. * src/nix-instantiate/help.txt: Update accordingly. * tests/lang.sh: Invoke `nix-instantiate' with `--no-location' for the XML tests. * tests/lang/eval-okay-toxml.exp, tests/lang/eval-okay-to-xml.nix: New files.
2010-03-31* Implemented `rec { inherit ...; }'.Eelco Dolstra
2010-03-31* Compare nulls.Eelco Dolstra
2010-03-31Add source location information to the XML output.Ludovic Courtès
* src/libexpr/expr-to-xml.cc (nix::showAttrs): Dereference the attribute RHS. Add "path", "line", and "column" XML attributes to the node when source location information is available. (nix::printTermAsXML): Likewise for functions.
2010-03-30* More primops.Eelco Dolstra
2010-03-30* More operators / primops.Eelco Dolstra
2010-03-30* More primops.Eelco Dolstra
2010-03-30* More primops.Eelco Dolstra
2010-03-30* Implemented `map'.Eelco Dolstra
2010-03-30* Make `import' work.Eelco Dolstra
2010-03-29* Started integrating the new evaluator.Eelco Dolstra
2010-03-29(no commit message)Eelco Dolstra
2010-03-29(no commit message)Eelco Dolstra
2010-03-29(no commit message)Eelco Dolstra
2010-03-28* Strings.Eelco Dolstra
2010-03-28(no commit message)Eelco Dolstra
2010-03-28* Implemented multi-argument primops.Eelco Dolstra
2010-03-26* Primops (not yet finished).Eelco Dolstra
2010-03-26* Implemented the `==' and `!=' operators. These now use a deepEelco Dolstra
equality test, so they also work for (finite) attribute sets and lists.
2010-03-25* Measure stack usage.Eelco Dolstra
2010-03-25* Implemented lists.Eelco Dolstra
2010-03-25* Quick and dirty implementation of `with'. `with e1; e2' isEelco Dolstra
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
2010-03-25* Implement blackholing.Eelco Dolstra
2010-03-25* Implement `...' and default function arguments.Eelco Dolstra
2010-03-25* Simplify @-patterns: only `{attrs}@name' or `name@{attrs}' are nowEelco Dolstra
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
2010-03-24* Store values in environments.Eelco Dolstra
2010-03-24* Reduce the number of value allocations in eval() by movingEelco Dolstra
responsibility for allocation of the result to the caller.
2010-03-24* Plain lambdas.Eelco Dolstra
2010-03-23* Start of an evaluator that uses call-by-need (with thunk updating)Eelco Dolstra
instead of (memoised) call-by-name.
2010-03-14Merge r20344 & r20346.Nicolas Pierron
2010-03-02* Prevent a potential memory corruption problem if an ATerm garbageEelco Dolstra
collection happens during fixAttrs().
2010-03-02* When using the included sqlite/aterm libraries, build withEelco Dolstra
--enable-shared. * In libutil/libstore/libexpr etc., link against sqlite and aterm. * Some more header file hygiene.
2009-11-06* Remove support for old (before Nix 0.12pre12020) databases.Eelco Dolstra
2009-10-22* builtins.trace: in the common case that the value is a string, thenEelco Dolstra
show the string, not the ATerm, so we get `trace: bla' instead of `trace: Str("bla",[])'.
2009-10-21* Added a primop unsafeDiscardOutputDependency needed by Disnix toEelco Dolstra
pass derivation paths to a builder without actually building them.
2009-09-23* tryEval shouldn't catch all exceptions of type Error, since not allEelco Dolstra
of them leave the evaluator in a continuable state. Also, it should be less chatty.