Commit graph

591 commits

Author SHA1 Message Date
Ryan Trinkle 5fc350cef0 Add builtins.readDir 2018-04-01 22:16:55 -04:00
Ryan Trinkle 675ed404d3 Add builtins.readFile 2018-04-01 21:42:10 -04:00
Ryan Trinkle fb1616053d Add builtins.hashString 2018-04-01 21:20:53 -04:00
Ryan Trinkle 30d0970476 Add builtins.concatLists 2018-04-01 14:45:54 -04:00
Ryan Trinkle 81aec9dfd0 Merge branch 'master' of github.com:jwiegley/hnix
# Conflicts:
#	Nix/Builtins.hs
#	Nix/Eval.hs
2018-04-01 14:35:06 -04:00
Ryan Trinkle 4a5bcd7e4b Make builtins.sort stable 2018-04-01 14:32:42 -04:00
Ryan Trinkle 852327173e Fix pretty-printing of sets 2018-04-01 14:21:18 -04:00
Ryan Trinkle f709008efa Add builtins.lessThan 2018-04-01 14:17:09 -04:00
Ryan Trinkle 14b3bc5bb6 Reimplement Nix.Builtins.apply in terms of evalApp 2018-04-01 14:16:59 -04:00
Ryan Trinkle a1a3c81211 Add builtins.sort 2018-04-01 14:16:47 -04:00
John Wiegley 1dede9334a Correction to the tests 2018-04-01 10:55:23 -07:00
John Wiegley dedde388e4 Add stub code for NApp in Lint.hs, and a note in NAbs
At the moment, functions still aren't being handled
2018-04-01 10:43:59 -07:00
John Wiegley f47b764dcf Initial phase of sym eval completed, still missing function application 2018-04-01 10:34:08 -07:00
John Wiegley c02b8bf843 More work on dynamic bindings 2018-04-01 10:34:08 -07:00
John Wiegley 06d63b0644 More work on the symbolic evaluator 2018-04-01 10:34:08 -07:00
John Wiegley 19faf5b161 Begin work on the symbolic evaluator 2018-04-01 10:34:08 -07:00
Ryan Trinkle 2e46b7b63c Add support for floats 2018-04-01 12:36:39 -04:00
Ryan Trinkle f77493aebe Add type predicates (isList, etc.) 2018-04-01 11:50:18 -04:00
Ryan Trinkle 8ab5298e26 Add removeAttrs builtin 2018-04-01 11:37:17 -04:00
Ryan Trinkle abbde2b8aa Add builtins.replaceStrings 2018-04-01 11:15:00 -04:00
Ryan Trinkle 4bbb6e580b When showing strings, escape them with show
This may not be exactly the same way that nix escapes them, but it is at least somewhat closer
2018-03-31 19:54:20 -04:00
Ryan Trinkle 3e3e61acd9 Add more path normalization to do it the way Nix does 2018-03-31 19:53:35 -04:00
Ryan Trinkle 2b3bbe8992 Distinguish between places we should add paths to the nix store and places we should not, when converting to string 2018-03-31 19:21:48 -04:00
Ryan Trinkle 6acdfb061c Add version bounds for unordered-containers
We use the Ord instance for HashMap, which was created in unordered-containers-0.2.9.0
2018-03-31 18:46:42 -04:00
Ryan Trinkle 41ec61494a Fix build 2018-03-31 18:43:55 -04:00
Ryan Trinkle 479701a572 Add builtins.genList 2018-03-31 17:54:30 -04:00
John Wiegley 852aff04e7 Break apart MonadNix, to allow greater flexibility in evaluators 2018-03-31 14:53:38 -07:00
Ryan Trinkle 8621b97f0b When checking equality, test equality of structure before forcing contained thunks 2018-03-31 17:27:41 -04:00
Ryan Trinkle 06cef41ac9 Add builtins.elem 2018-03-31 17:27:24 -04:00
Ryan Trinkle 5ded9334e7 Add builtins.seq and builtins.deepSeq 2018-03-31 16:56:30 -04:00
Ryan Trinkle d32b962bb9 Add builtins.unsafeDiscardStringContext 2018-03-31 16:32:47 -04:00
Ryan Trinkle d655e74d67 Add makeAbsolutePath to MonadNix 2018-03-31 16:29:42 -04:00
Ryan Trinkle 833e307e52 Add baseNameOf builtin 2018-03-31 16:22:42 -04:00
Ryan Trinkle ea6108659d Eliminate trailing linefeeds in the result of addPath 2018-03-31 16:22:05 -04:00
Ryan Trinkle 4f384a3df4 Add builtins.concatStringsSep 2018-03-31 15:40:34 -04:00
Ryan Trinkle 911f65e26f Add builtins.catAttrs 2018-03-31 15:36:09 -04:00
Ryan Trinkle 03e5aa48c4 Support "__functor" attributes 2018-03-31 15:27:34 -04:00
Ryan Trinkle 7f897b8c69 Add builtins.attrValues 2018-03-31 15:03:28 -04:00
Ryan Trinkle 7976485874 Slightly improve error message in attrSetAlter 2018-03-31 14:58:53 -04:00
Ryan Trinkle eb51746b0e Add value set support to valueEq 2018-03-31 12:05:54 -04:00
Ryan Trinkle 1898544e37 Merge branch 'master' of github.com:jwiegley/hnix 2018-03-31 11:07:48 -04:00
John Wiegley 267faaf19c Fix some warnings 2018-03-30 23:36:01 -07:00
John Wiegley c2c4d93585 Simplify the definitions of adi and adiM, according to our actual usage 2018-03-30 23:34:57 -07:00
John Wiegley b89b795abe Some improvements to error traces 2018-03-30 23:10:44 -07:00
John Wiegley d08ca26da0 Add informative backtraces on evaluation failure 2018-03-30 23:10:44 -07:00
John Wiegley 4e29e6453f Don't use -threaded in hnix.cabal at the moment 2018-03-30 23:10:44 -07:00
Ryan Trinkle da32b8fff8 Add 'map' builtin 2018-03-30 19:46:25 -04:00
Ryan Trinkle a9cc3644b2 Fix error message in attrNames 2018-03-30 19:46:16 -04:00
Ryan Trinkle d74c5506b1 Reindent 'substring' 2018-03-30 19:45:58 -04:00
Ryan Trinkle 1944316909 Add builtins.attrNames 2018-03-30 19:37:11 -04:00