Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								a353aef0b1 
								
							 
						 
						
							
							
								
								* In eval(), don't use the target value `v' as a temporary.  
							
							... 
							
							
							
							Overwriting `v' breaks when the expression evaluation to an
  assertion failure or throw. 
							
						 
						
							2010-04-06 14:15:29 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								a5ece7d016 
								
							 
						 
						
							
							
								
								* Removed the `~' operator.  
							
							
							
						 
						
							2010-04-01 16:59:07 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								c172274e17 
								
							 
						 
						
							
							
								
								* Quick hack to make coerceToString work more or less correctly on  
							
							... 
							
							
							
							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 14:35:03 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								7b851915bf 
								
							 
						 
						
							
							
								
								* Improve sharing.  
							
							
							
						 
						
							2010-04-01 12:04:57 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								95cc417d76 
								
							 
						 
						
							
							
								
								* Functions are incomparable.  
							
							
							
						 
						
							2010-04-01 10:55:36 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								71f026292b 
								
							 
						 
						
							
							
								
								* Make `derivation' lazy again for performance.  It also turns out  
							
							... 
							
							
							
							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-04-01 09:55:57 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								dc31305b38 
								
							 
						 
						
							
							
								
								* Fixed the trace primop and path comparison.  
							
							... 
							
							
							
							* 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 20:09:20 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								979f163615 
								
							 
						 
						
							
							
								
								* Handle string contexts.  `nix-instantiate' can now correctly compute  
							
							... 
							
							
							
							the `firefoxWrapper' attribute in Nixpkgs, and it's about 3 times
  faster than the trunk :-) 
							
						 
						
							2010-03-31 19:52:29 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								d8cd3115d8 
								
							 
						 
						
							
							
								
								* Get nix-env to compile.  
							
							
							
						 
						
							2010-03-31 19:12:08 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								55e207b2dc 
								
							 
						 
						
							
							
								
								* Cache parse trees to prevent repeated parsing of imported Nix  
							
							... 
							
							
							
							expressions. 
							
						 
						
							2010-03-31 16:14:32 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								3d94be61ea 
								
							 
						 
						
							
							
								
								* Implemented derivations.  
							
							
							
						 
						
							2010-03-31 15:38:03 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								5187678913 
								
							 
						 
						
							
							
								
								 
							
							
							
						 
						
							2010-03-31 15:14:23 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								f061086a93 
								
							 
						 
						
							
							
								
								* Fix the broken test for listToAttrs.  
							
							
							
						 
						
							2010-03-31 13:35:29 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ludovic Courtès 
								
							 
						 
						
							
							
							
							
								
							
							
								09381cccff 
								
							 
						 
						
							
							
								
								Make source location info in the XML output optional.  
							
							... 
							
							
							
							* 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 12:38:31 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								13c2adc897 
								
							 
						 
						
							
							
								
								* Implemented `rec { inherit ...; }'.  
							
							
							
						 
						
							2010-03-31 11:05:39 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								4c53ca2692 
								
							 
						 
						
							
							
								
								* Compare nulls.  
							
							
							
						 
						
							2010-03-31 09:54:12 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ludovic Courtès 
								
							 
						 
						
							
							
							
							
								
							
							
								471419d1fa 
								
							 
						 
						
							
							
								
								Add source location information to the XML output.  
							
							... 
							
							
							
							* 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-31 08:29:05 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Ludovic Courtès 
								
							 
						 
						
							
							
							
							
								
							
							
								eb07a4f1ee 
								
							 
						 
						
							
							
								
								Escape `>' signs in the XML output.  
							
							... 
							
							
							
							* src/libutil/xml-writer.cc (nix::XMLWriter::writeAttrs): Escape `>'. 
							
						 
						
							2010-03-31 08:29:01 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								7f19e03c65 
								
							 
						 
						
							
							
								
								* More primops.  
							
							
							
						 
						
							2010-03-30 22:39:48 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								47df476daa 
								
							 
						 
						
							
							
								
								* More operators / primops.  
							
							
							
						 
						
							2010-03-30 18:05:54 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								c9170be2bd 
								
							 
						 
						
							
							
								
								* More primops.  
							
							
							
						 
						
							2010-03-30 15:18:20 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								c3aa615a5f 
								
							 
						 
						
							
							
								
								* More primops.  
							
							
							
						 
						
							2010-03-30 14:39:27 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								5b72d8a749 
								
							 
						 
						
							
							
								
								* Implemented `map'.  
							
							
							
						 
						
							2010-03-30 13:47:59 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								d78a05ab40 
								
							 
						 
						
							
							
								
								* Make `import' work.  
							
							
							
						 
						
							2010-03-30 09:22:33 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								31428c3a06 
								
							 
						 
						
							
							
								
								* Started integrating the new evaluator.  
							
							
							
						 
						
							2010-03-29 14:37:56 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								52090d2418 
								
							 
						 
						
							
							
								
								 
							
							
							
						 
						
							2010-03-29 10:13:51 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								e3f32ac5af 
								
							 
						 
						
							
							
								
								 
							
							
							
						 
						
							2010-03-29 09:43:55 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								807a67bc74 
								
							 
						 
						
							
							
								
								 
							
							
							
						 
						
							2010-03-29 09:43:39 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								392811eb8f 
								
							 
						 
						
							
							
								
								* Strings.  
							
							
							
						 
						
							2010-03-28 18:27:07 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								d96cdcea6b 
								
							 
						 
						
							
							
								
								 
							
							
							
						 
						
							2010-03-28 16:57:16 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								3d2b835f30 
								
							 
						 
						
							
							
								
								* Implemented multi-argument primops.  
							
							
							
						 
						
							2010-03-28 16:37:39 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								45d822f29c 
								
							 
						 
						
							
							
								
								* Primops (not yet finished).  
							
							
							
						 
						
							2010-03-26 15:45:53 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								cad8726b2c 
								
							 
						 
						
							
							
								
								* Implemented the ==' and !=' operators.  These now use a deep  
							
							... 
							
							
							
							equality test, so they also work for (finite) attribute sets and
  lists. 
							
						 
						
							2010-03-26 13:27:26 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								8da118e4d0 
								
							 
						 
						
							
							
								
								* Measure stack usage.  
							
							
							
						 
						
							2010-03-25 16:35:24 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								c2ba4313fb 
								
							 
						 
						
							
							
								
								* Implemented lists.  
							
							
							
						 
						
							2010-03-25 15:38:37 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								25eedf085d 
								
							 
						 
						
							
							
								
								* Quick and dirty implementation of with'.  with e1; e2' is  
							
							... 
							
							
							
							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 14:51:04 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								3c9f8fc9b6 
								
							 
						 
						
							
							
								
								* Don't convert variable names to strings.  
							
							
							
						 
						
							2010-03-25 13:10:04 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								f450384ded 
								
							 
						 
						
							
							
								
								* Implement blackholing.  
							
							
							
						 
						
							2010-03-25 12:51:14 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								ef8bd919fc 
								
							 
						 
						
							
							
								
								* Implement `...' and default function arguments.  
							
							
							
						 
						
							2010-03-25 12:45:23 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								8a10360c91 
								
							 
						 
						
							
							
								
								* Simplify @-patterns: only {attrs}@name' or name@{attrs}' are now  
							
							... 
							
							
							
							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-25 12:19:41 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								7482349fe8 
								
							 
						 
						
							
							
								
								* Implemented attribute set pattern matches.  
							
							
							
						 
						
							2010-03-24 23:40:00 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								0fd3648d34 
								
							 
						 
						
							
							
								
								* Store values in environments.  
							
							
							
						 
						
							2010-03-24 12:41:08 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								b70bd8fe56 
								
							 
						 
						
							
							
								
								* Reduce the number of value allocations in eval() by moving  
							
							... 
							
							
							
							responsibility for allocation of the result to the caller. 
							
						 
						
							2010-03-24 12:11:38 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								d31c59eb17 
								
							 
						 
						
							
							
								
								* Plain lambdas.  
							
							
							
						 
						
							2010-03-24 11:06:05 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								e8f7978274 
								
							 
						 
						
							
							
								
								 
							
							
							
						 
						
							2010-03-23 19:19:52 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								0910ae9568 
								
							 
						 
						
							
							
								
								* Start of an evaluator that uses call-by-need (with thunk updating)  
							
							... 
							
							
							
							instead of (memoised) call-by-name. 
							
						 
						
							2010-03-23 17:30:50 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								90039e0863 
								
							 
						 
						
							
							
								
								* Branch for experimenting with faster / less memory-hungry  
							
							... 
							
							
							
							Nix expression evaluation. 
							
						 
						
							2010-03-23 15:09:29 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								71be50cc25 
								
							 
						 
						
							
							
								
								* Doh.  
							
							
							
						 
						
							2010-03-23 14:51:32 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								3bfd3a4e95 
								
							 
						 
						
							
							
								
								* Test "with as; with bs;" since nobody knows what its semantics is.  
							
							
							
						 
						
							2010-03-23 14:26:27 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Eelco Dolstra 
								
							 
						 
						
							
							
							
							
								
							
							
								f71ea9c911 
								
							 
						 
						
							
							
								
								* Use SQLite 3.6.23.  
							
							
							
						 
						
							2010-03-23 10:38:59 +00:00