Anton-Latukha
eb8c2252cb
clean-up: Nix.hs: evaluateExpression: use Kleisli composition
2020-09-21 01:57:59 +03:00
Richard Marko
f2999a33bb
simplify evalExpression
2020-05-15 17:49:36 -07:00
John Wiegley
4607639774
Remove the NValueNF type, as it provides little utility
2019-03-27 21:16:01 -07:00
John Wiegley
d1ada44817
Run brittany
2019-03-18 21:47:43 -07:00
John Wiegley
2c0c896871
Everything compiling again, but 25 tests failing
2019-03-18 17:30:31 -07:00
John Wiegley
aa66560bf7
Get rid of implicit conversions to and from thunks
2019-03-17 15:30:20 -07:00
John Wiegley
94e0be3882
Reformat all sources with Brittany, to restore consistency
2019-03-17 14:47:38 -07:00
John Wiegley
e9236aa55c
Now down to Main.hs and the tests
2019-03-15 17:20:10 -07:00
John Wiegley
505591515f
More work on Value.hs
2019-03-12 23:44:42 -07:00
gb
4baa4f7108
change Nix.NixString module to Nix.String
2018-09-23 16:03:44 -04:00
gb
a57aa711df
tests run
2018-09-09 11:47:04 -04:00
John Wiegley
f0b6b6b223
Change NValueNF to use Free instead of Fix
...
This allows us to detect and report cycles during normalization.
See #348
2018-08-09 22:09:00 -04:00
John Wiegley
50740972de
'import' should never carry over the lexical scope of its parent file
...
Fixes #334
2018-08-04 15:08:36 -04:00
gb
fd2bbb66e9
fixes to match latest master: tests ran
2018-07-28 15:32:15 -04:00
gb
43c145252d
NixString is in its own module hiding the constructors
2018-05-08 16:47:50 -04:00
John Wiegley
ce3b0d70e9
Move all of the parsing code into a single module, for optimization
2018-05-07 12:06:56 -07:00
John Wiegley
05ca87a732
Several improvements to error reporting; add new --thunks option
2018-04-25 13:00:41 -07:00
John Wiegley
01bcb86d3f
Further improvements to error rendering, but not all done yet
2018-04-24 11:12:20 -07:00
John Wiegley
9864a8c7a5
Rework the way that info frames and error are handled
...
There is still work to be done to render the new "typed frames", and to
convert all the current string based frame into typed frames. This will pave
the way forward to smarter error messages that can be browsed in intelligent
environments like Emacs and the browser.
2018-04-24 02:15:28 -07:00
John Wiegley
3cf02e3902
Track value provenance during evaluation
2018-04-22 14:33:38 -07:00
John Wiegley
9937453ef2
Ensure that the --trace option persists through imports
2018-04-21 10:36:32 -07:00
John Wiegley
96a0c387dd
Merge Nix.Trace and Nix.Reduce into Nix.Reduce
...
Since almost all of that code had to do with program reduction. addTracing and
tracingEvalExpr have moved into Exec.hs, since they depend on MonadNix.
2018-04-21 10:28:09 -07:00
John Wiegley
8a93068102
Rename Nix.Core back to Nix.Eval, since Nix.Eval was now almost empty
2018-04-21 10:11:34 -07:00
John Wiegley
86b09103d6
Move production of a reduced test case to --reduce, improve --trace
2018-04-20 22:36:40 -07:00
John Wiegley
4f17250d11
More simplifying of imports
2018-04-14 09:44:55 -07:00
John Wiegley
169a2140dd
Add to the imports listed in Nix.hs
2018-04-14 09:39:03 -07:00
John Wiegley
6c9cbf241a
Rewrite ToNix/FromNix, although Builtins.hs is not using it yet
2018-04-13 18:09:12 -07:00
John Wiegley
99189e9536
The basic REPL now works; doesn't allow establishing definitions yet
2018-04-12 16:46:34 -07:00
John Wiegley
9a089712aa
Create new __includes builtin, set by --include/-I
2018-04-11 22:02:31 -07:00
John Wiegley
74de14dc7d
Restore the linter, to some degree, at least for the language tests
2018-04-10 21:02:01 -07:00
John Wiegley
4c2eebbe40
Refactor evaluation using a type class
2018-04-09 00:52:10 -07:00
John Wiegley
3681d51dd6
Create modules Nix.Monad.Lazy, Nix.Monad.Lint, Nix.Monad.Context
2018-04-07 23:14:08 -07:00
John Wiegley
39e859fab5
Make use of Nix.Normal, move some more code to Nix.Value
2018-04-07 17:24:22 -07:00
John Wiegley
aaaa82820f
Don't distinguish between literal and env paths in values, just exprs
2018-04-07 14:52:24 -07:00
John Wiegley
ea6a98f602
Implement builtins.tryEval
2018-04-07 14:33:15 -07:00
John Wiegley
a704bb045f
Commit the src/ directory
2018-04-07 12:02:50 -07:00