about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2003-11-19 * Refactoring (step 2).Eelco Dolstra5-10/+16
2003-11-19 * Refactoring: put the Nix expression evaluator in its own library soEelco Dolstra14-1/+2
that it can be used by multiple programs.
2003-11-19 * Use `sdftable -s' to get warnings about the grammar.Eelco Dolstra3-14/+20
* Several bug fixes in the grammar. * Allow one-line comments (#... and //...) to end in EOF.
2003-11-18 * "Fix expression" -> "Nix expression".Eelco Dolstra14-32/+27
* More refactoring.
2003-11-18 * nix -> nix-store, fix -> nix-instantiate.Eelco Dolstra20-9/+301
2003-11-18 * "Nix expression" -> "store expression".Eelco Dolstra20-119/+121
* More refactoring.
2003-11-18 * libnix -> libstore.Eelco Dolstra25-11/+11
2003-11-18 * Source tree refactoring.Eelco Dolstra20-511/+30
2003-11-16 * An forward non-random access input iterator class for ATermLists.Eelco Dolstra6-88/+68
2003-11-16 * Some utility functions for working with ATerms.Eelco Dolstra14-175/+363
2003-11-10 * Do not filter when parsing. This is much faster.Eelco Dolstra2-0/+7
* Add some rejections and lexical restrictions to the grammar to make this work.
2003-11-09 * Turned the msg() and debug() functions into macros, since theyEelco Dolstra10-45/+60
turned out to be a huge performance bottleneck (the text to printed would always be evaluated, even when it was above the verbosity level). This reduces fix-ng execution time by over 50%. gprof(1) is very useful. :-)
2003-11-06 * Allow null in derivation bindings.Eelco Dolstra1-0/+2
2003-11-06 * `null' is a nullary primop.Eelco Dolstra3-5/+4
2003-11-06 * Allow `+' in path names.Eelco Dolstra1-1/+1
2003-11-05 * Assertions.Eelco Dolstra6-16/+77
* Logical operators (!, &&, ||, ->).
2003-11-05 * Print a shared textual ATerm if the term if very large. Due to Eelco Dolstra1-1/+9
substitutions, Fix terms are very large when printed as trees (in memory, they are quite compact due to sharing).
2003-11-05 * Default function arguments.Eelco Dolstra3-9/+17
2003-11-03 * Work around problems with the ATerm library.Eelco Dolstra5-55/+182
The ATerm library doesn't search the heap for pointers to ATerms when garbage collecting. As a result, C++ containers such as `map<ATerm, ATerm>' will cause pointer to be hidden from the garbage collector, causing crashes. Instead, we now use ATermTables.
2003-11-03 * Ignore options passed to the aterm library.Eelco Dolstra1-2/+5
2003-11-03 * Shorter list syntax ([a b c] instead of [a, b, c]).Eelco Dolstra3-8/+15
2003-11-03 * Grammar changes. Attributes in attribute sets are now delimited with Eelco Dolstra2-36/+24
semicolons instead of comma's. Final semicolon in the set is optional.
2003-11-02 * Boolean constants.Eelco Dolstra4-5/+24
2003-11-02 * Primops: baseNameOf, toString.Eelco Dolstra4-4/+30
2003-11-01 * Fast builds.Eelco Dolstra1-10/+3
2003-11-01 * Print the exit code of the builder. Eelco Dolstra2-3/+10
2003-11-01 * Conditions, string equality.Eelco Dolstra2-6/+24
2003-11-01 * Let syntax.Eelco Dolstra2-0/+14
2003-11-01 * Filter the substitution list when descending into a recursiveEelco Dolstra1-1/+14
attribute set.
2003-10-31 * Working evaluator.Eelco Dolstra10-309/+540
* Mutually recursive attribute sets. * Print evaluator efficiency statistics.
2003-10-31 * Allow empty attribute (argument) sets.Eelco Dolstra1-1/+1
2003-10-31 * Use SGparseString() instead of SGparseFile() because the latter isEelco Dolstra1-2/+23
buggy. It fails to clear an internal variable (SG_textIndex) between invocations, so it can be called only once during a program execution.
2003-10-30 * Factor out evaluation into a separate file.Eelco Dolstra4-56/+87
2003-10-30 * Clean up the imploded parse tree. Quotes around strings areEelco Dolstra4-11/+57
removed, paths are absolutised relative to the path containing the expression we just parsed, and integer literals are converted to actual integers.
2003-10-30 * Bottomup rewrite function.Eelco Dolstra2-0/+60
2003-10-30 * Don't use a search path.Eelco Dolstra1-4/+5
2003-10-30 * Attribute selection operator.Eelco Dolstra1-1/+5
2003-10-29 * Basic grammar and parser for the Fix language. We use libsglr andEelco Dolstra6-7/+298
friends to do the parsing. The parse table is embedded in the Fix executable using bin2c, which converts an arbitrary file into a C character array.
2003-10-29 * Forked new version of Fix.Eelco Dolstra3-1/+497
2003-10-23 * Fix a race condition in addTextToStore().Eelco Dolstra1-7/+12
2003-10-22 * Use writeFull().Eelco Dolstra1-2/+1
2003-10-22 * Ad hoc per-package logging. When Nix performs a derivation, it nowEelco Dolstra3-6/+8
writes stdout/stderr of the builder to ${prefix}/var/log/nix/x, where x is the file name of the derivation expression, e.g., /nix/var/log/nix/54256391624be04fcb426048ae3ea0a4-d-pan-0.14.2.nix Note that consecutive builds of the same expression overwrite, rather than append to, existing log files.
2003-10-22 * Dead code removal.Eelco Dolstra1-94/+0
2003-10-22 * Some wrapper classes to ensure that file descriptors / directoryEelco Dolstra6-56/+123
handles are closed when they go out of scope.
2003-10-20 * Finished refactoring the tree.Eelco Dolstra8-59/+71
2003-10-20 * Refactored the source tree.Eelco Dolstra50-1/+2348
2003-10-16 * Substitutes and nix-pull now work again.Eelco Dolstra9-30/+79
* Fixed a segfault caused by the buffering of stderr. * Fix now allows the specification of the full output path. This should be used with great care, since it by-passes the normal hash generation. * Incremented the version number to 0.4 (prerelease).
2003-10-16 * Enable buffering of stderr in C++.Eelco Dolstra1-0/+4
2003-10-16 * Upgraded to Berkeley DB 4.1.25 and do not synchronously flush theEelco Dolstra1-4/+5
log on commit. This means that there is a small change that some transactions may be rolled back in case of a system crash, but this should not be a problem (it merely might cause some expression realisations to be rolled back), and it vastly improves performance. * Upgraded to ATerm 2.0.5 (which also includes Armijn's 64-bit patches).
2003-10-16 * Don't sort the result of `--query --list'.Eelco Dolstra1-6/+4