depot
this commit
canon
subtree-staging
monorepo for the virus lounge
The Virus Lounge
about
summary
refs
log
tree
commit
diff
log msg
author
committer
range
path:
root
/
tvix
/
eval
/
src
/
vm.rs
Age
Commit message (
Expand
)
Author
Files
Lines
2022-09-07
r/4700
refactor(tvix/eval): encapsulate all thunk-forcing logic in module
Vincent Ambo
1
-2
/
+3
2022-09-07
r/4688
feat(tvix/eval): implement OpForce in VM
Vincent Ambo
1
-1
/
+11
2022-09-06
r/4681
feat(tvix/eval): implement OpThunk for runtime thunk construction
Vincent Ambo
1
-2
/
+17
2022-09-06
r/4679
refactor(tvix/eval): extract VM::populate_upvalues function
Vincent Ambo
1
-30
/
+42
2022-09-06
r/4678
refactor(tvix/eval): Carry lambda & upvalues directly in CallFrame
Vincent Ambo
1
-13
/
+25
2022-09-06
r/4677
refactor(tvix/eval): introduce UpvalueCarrier trait
Vincent Ambo
1
-0
/
+1
2022-09-06
r/4674
feat(tvix/eval): Add Compiler::thunk method for emitting thunks
Vincent Ambo
1
-0
/
+2
2022-09-06
r/4667
feat(tvix/eval): implement OpFinalise instruction
Vincent Ambo
1
-0
/
+13
2022-09-06
r/4666
feat(tvix/eval): set up deferred upvalues at runtime
Vincent Ambo
1
-2
/
+2
2022-09-06
r/4665
feat(tvix/eval): detect deferred upvalue capturing
Vincent Ambo
1
-0
/
+5
2022-09-06
r/4660
fix(tvix/eval): correct runtime error for missing dynamic upvalue
Vincent Ambo
1
-0
/
+6
2022-09-06
r/4659
fix(tvix/eval): instantiate *new* closures from blueprints each time
Vincent Ambo
1
-9
/
+13
2022-09-06
r/4658
fix(tvix/eval): correctly thread through dynamic upvalues
Vincent Ambo
1
-7
/
+64
2022-09-06
r/4654
fix(tvix/eval): account for stack offset when pushing a `with` scope
Vincent Ambo
1
-1
/
+4
2022-09-06
r/4653
feat(tvix/eval): implement capture of self-recursive upvalues
Vincent Ambo
1
-3
/
+9
2022-09-06
r/4651
refactor(tvix/eval): encapsulate internal mutability within Closure
Vincent Ambo
1
-16
/
+16
2022-09-04
r/4635
feat(tvix/eval): implement upvalue resolution in `with` scopes
Vincent Ambo
1
-1
/
+6
2022-09-04
r/4634
fix(tvix/eval): ensure OpResolveWith can be traced
Vincent Ambo
1
-16
/
+16
2022-09-03
r/4629
feat(tvix/eval): implement runtime closure construction (OpClosure)
Vincent Ambo
1
-1
/
+28
2022-09-03
r/4628
feat(tvix/eval): implement OpGetUpvalue in the VM
Vincent Ambo
1
-4
/
+6
2022-09-03
r/4627
refactor(tvix/eval): store Closure inside of the VM's call frames
Vincent Ambo
1
-6
/
+6
2022-09-03
r/4625
feat(tvix/eval): compile creation of closure objects
Vincent Ambo
1
-1
/
+8
2022-09-03
r/4623
feat(tvix/eval): implement compilation of upvalue access
Vincent Ambo
1
-0
/
+2
2022-09-03
r/4622
refactor(tvix/eval): add opcode::Count type for less ambiguity
Vincent Ambo
1
-6
/
+6
2022-09-03
r/4621
refactor(tvix/eval): add opcode::StackIdx type for less ambiguity
Vincent Ambo
1
-3
/
+3
2022-09-03
r/4619
refactor(tvix/eval): add opcode::JumpOffset type for less ambiguity
Vincent Ambo
1
-5
/
+5
2022-09-03
r/4616
refactor(tvix/eval): avoid cloning in NixAttrs::update if possible
Vincent Ambo
1
-3
/
+9
2022-09-03
r/4613
refactor(tvix/eval): rename Value::NotFound & OpAttrOrNotFound
Vincent Ambo
1
-4
/
+4
2022-09-03
r/4605
refactor(tvix/eval): introduce Closure struct in Value type
Vincent Ambo
1
-2
/
+2
2022-09-02
r/4597
refactor(tvix/eval): add NixAttrs::contains function
Vincent Ambo
1
-1
/
+1
2022-09-02
r/4585
feat(tvix/eval): add initial representation of builtins
Vincent Ambo
1
-0
/
+5
2022-09-02
r/4583
feat(tvix/eval): implement opcode for function calls in VM
Vincent Ambo
1
-8
/
+24
2022-09-02
r/4582
refactor(tvix/eval): add VM::call helper to set up call frames
Vincent Ambo
1
-7
/
+12
2022-09-01
r/4578
refactor(tvix/eval): use call frame for top-level lambda
Vincent Ambo
1
-14
/
+29
2022-09-01
r/4577
feat(tvix/eval): add call frame struct to VM
Vincent Ambo
1
-0
/
+8
2022-09-01
r/4576
refactor(tvix/eval): return a lambda from the compiler
Vincent Ambo
1
-3
/
+3
2022-09-01
r/4571
feat(tvix/eval): carry optional SyntaxNode in error type
Vincent Ambo
1
-13
/
+16
2022-09-01
r/4567
refactor(tvix/eval): Upgrade to latest rnix-parser
Vincent Ambo
1
-1
/
+1
2022-09-01
r/4566
feat(tvix/eval): implement `assert` operator
Vincent Ambo
1
-0
/
+6
2022-08-31
r/4556
feat(tvix/eval): Implement OpResolveWith instruction
Vincent Ambo
1
-1
/
+20
2022-08-31
r/4553
feat(tvix/eval): implement OpPopWith
Vincent Ambo
1
-0
/
+3
2022-08-31
r/4552
feat(tvix/eval): implement with_stack in VM
Vincent Ambo
1
-1
/
+6
2022-08-31
r/4551
feat(tvix/eval): compile `with` expression
Vincent Ambo
1
-0
/
+2
2022-08-30
r/4543
fix(tvix/eval): `or` should handle non-attrset values, too
Vincent Ambo
1
-5
/
+9
2022-08-30
r/4542
fix(tvix/eval): allow use of ? operator on non-set types
Vincent Ambo
1
-3
/
+9
2022-08-30
r/4537
fix(tvix/eval): address various clippy lints
Vincent Ambo
1
-12
/
+12
2022-08-30
r/4533
feat(tvix/eval): implement optional runtime tracing
Vincent Ambo
1
-1
/
+13
2022-08-28
r/4524
feat(tvix/eval): add local identifier access
Vincent Ambo
1
-0
/
+5
2022-08-28
r/4522
feat(tvix/eval): compile simple `let ... in ...` expressions
Vincent Ambo
1
-0
/
+14
2022-08-26
r/4499
feat(tvix/vm): add opcodes for new Value::NotFound sentinel
Vincent Ambo
1
-0
/
+17
[next]