This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import "lib/codec/utf8" =~ [=> UTF8 :DeepFrozen] | |
import "lib/capn" =~ capn :DeepFrozen | |
import "tools/capnpc" =~ ["main" => capnpc :DeepFrozen] | |
exports (main) | |
def main(_argv, => currentProcess, => makeProcess, => makeFileResource) as DeepFrozen: | |
def [ (b`CAPNPC`) => CAPNPC ] | _ := currentProcess.getEnvironment() | |
def compile(schema): | |
def tmp := makeFileResource("/tmp/test.capnp").setContents( | |
UTF8.encode(schema, null)) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Doesn't use 'unittest' because of dependency on `makeProcess`. | |
import "lib/codec/utf8" =~ [=> UTF8 :DeepFrozen] | |
import "lib/streams" =~ [=> collectBytes :DeepFrozen] | |
exports (main) | |
def main(_argv, => makeProcess) as DeepFrozen: | |
def compile(): | |
def pr := makeProcess(b`/nix/store/wm8va53fh5158ipi0ic9gir64hrvqv1z-coreutils-8.29/bin/ls`, [b`ls`, b`-lR`], | |
[].asMap(), | |
"stdout" => true) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
object _ :null as DeepFrozen: | |
"" | |
method dependencies() :List.get(Str): | |
"" | |
_makeList.run("lib/capn") | |
method run(package :null) :Map.get(Str, DeepFrozen): | |
"" | |
def via (_mapExtract.run("makeMessageReader")) [makeMessageReader :DeepFrozen, via (_mapExtract.run("makeMessageWriter")) [makeMessageWriter :DeepFrozen, via (_mapExtract.run("text")) [text :DeepFrozen, _ :null]]] exit null := package.import("lib/capn") | |
object reader :null as DeepFrozen: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
these derivations will be built: | |
/nix/store/dac36cfcjb35z5vgzc2q5qyskxa1v11h-typhon.drv | |
/nix/store/44r96qqhxwy7jd0681sm1l44ipwfp7fg-monte.drv | |
/nix/store/mkj0lk1vdmb7dna7g5084n0i6lb88y1v-capnpc-monte.drv | |
/nix/store/awyikgz4vym0qmkc6gkcnd5ika6a9krv-monte.drv | |
building '/nix/store/dac36cfcjb35z5vgzc2q5qyskxa1v11h-typhon.drv'... | |
unpacking sources | |
unpacking source archive /nix/store/yidbvkyflvmmlihv0gl6f6xqyc2k0021-typhon | |
source root is typhon | |
patching sources |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
> {-# OPTIONS -fglasgow-exts -fallow-overlapping-instances #-} | |
-fglasgow-exts enables 'mdo', which is used for constructing vats, and existentially quantified type variables, which are used for references. | |
-fallow-overlapping-instances allows us to define different behaviors for String (i.e. [Char]) than [a]. | |
> module E where | |
> | |
> import Data.IORef | |
> import Data.Typeable |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
exports (main) | |
def id(x) as DeepFrozen: | |
return x | |
object identity as DeepFrozen: | |
"The identity monad." | |
to unit(x): | |
return x |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
expr = LiteralExpr(constant value) | |
| NounExpr(string name) | |
| SlotExpr(string name) # this currently takes a Noun | |
| BindingExpr(string name) # same here | |
| MetaContextExpr | |
| MetaStateExpr | |
| SeqExpr(expr* exprs) | |
| MethodCallExpr(expr receiver, string verb, expr* arglist, namedArg* namedArgs) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Taking initial turn in script... | |
TRACE: From vat pa | |
~ "Loader args: [\"test\", \"all-tests\"]" | |
completed/running/errors/total: 0/0/0/0 Last source: null Last test: nullTRACE: From vat pa | |
~ "audit/1: Missing methods: [[\"started\", 0], [\"stopped\", 1]].asSet()" | |
TRACE: From vat pa | |
~ "audit/1: Missing methods: [[\"started\", 0], [\"stopped\", 1]].asSet()" | |
TRACE: From vat pa | |
~ "audit/1: Missing methods: [[\"flowingFrom\", 1], [\"receive\", 1], [\"progress\", 1]].asSet()" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import "lib/iterators" =~ [=> zip :DeepFrozen] | |
import "lib/codec/utf8" =~ [=> UTF8 :DeepFrozen] | |
exports (main) | |
def filenames :List[Str] := [ | |
"mast/all-tests.mast", | |
"mast/testRunner.mast", | |
"mast/fun/elements.mast", | |
"mast/lib/codec/percent.mast", | |
"mast/lib/codec/utf8.mast", |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- out.good 2017-05-18 03:55:53.833051850 +0000 | |
+++ out.bad 2017-05-18 03:55:12.312086915 +0000 | |
@@ -1,6 +1,4 @@ | |
-[nix-shell:~/Projects/typhon]$ UV_THREADPOOL_SIZE=1 rr record ./mt-typhon -l mast loader test all-tests | |
-rr: Saving execution to trace directory `/home/washort/.local/share/rr/mt-typhon-10'. | |
-Taking initial turn in script... | |
+[nix-shell:~/Projects/typhon]$ UV_THREADPOOL_SIZE=1 ./mt-typhon -l mast loader test all-tests Taking initial turn in script... | |
TRACE: From vat pa | |
~ "Loader args: [\"test\", \"all-tests\"]" | |