Paul Chiusano
ee3c8bd29a
Added some notes and example errors, generalized Term a bit to allow type annotations to contain locations.
...
Moving `check` over to Context2 and still fixing compiler errors there
2018-07-10 17:36:10 -04:00
Arya Irani
a91b6c81a8
no more stack allocations for Stream
...
`fp_s` and `fppp_s` accept a function returning `EnvTo[Foo]`.
The environment is passed to the resulting `EnvTo[Foo]` before
encoding the `Foo` as normal.
2018-07-07 17:49:59 -04:00
Arya Irani
dcbe3cc4d8
seems to have largely fixed itself in my sleep
...
the typedecl parser for builtins seems to work fine
fixed prettyprinting of tuples
fixed logic error in OptionalTC.isEmpty
added tuple.u and unfold.u tests
2018-07-07 13:00:39 -04:00
Arya Irani
ea3b4291b5
wip/failing attempt to implement Stream.unfold, which requires an Option type
...
Somehow I broke Pair, or something to do with Pair wrapped in Option?
2018-07-06 23:58:12 -04:00
Arya Irani
a4ef66e645
bugfix and tests for Stream.flatMap
2018-07-05 23:10:30 -04:00
Arya Irani
1f556f0bb1
add tests for Stream.takeWhile/dropWhile/zipWith
...
untested: flatMap/constant (doesnt terminate)
2018-07-05 13:22:45 -04:00
Arya Irani
510e0c07aa
add Stream.sum/append
2018-07-04 22:42:20 -04:00
Arya Irani
3063e7e57f
add more Stream builtins and thread env through (see more...)
...
added `fs_p`, `fpps_p`, etc and the `StackDecode` typeclass, which describes how
to decode a value which needs access to a stack.
builtin function adapter helper naming convention guide:
`u` = unison unboxed
`b` = Scala Boolean as unboxed booleana
`l` = Scala Long as unboxed int64
`n` = Scala Int as unboxed uint64
`d` = Scala Double as unboxed float
`p` = "polymorphic", some generic type not known to be unboxed
`s` = "stack decode", some input parameter requiring access to the runtime stack to be decoded
`z` = laZy, a result type for which the decompiled form has to be recorded with each operation, as opposed to being derived from a Value.
`p` is used when a function accepts a an `Env => Stream` that will not be consumed
`s` is used when a function accepts a `Stream` (no `Env`) that will be consumed
`z` is used when a function returns a `Stream`
add pretty printing for `Tuple` and `Sequence`
2018-07-04 21:32:56 -04:00
Arya Irani
724e93e1c8
boost HOF stack size and un-minify stream test
2018-06-29 18:44:57 -04:00
Arya Irani
593c7a6631
testing up the tests
2018-06-29 17:57:58 -04:00
Arya Irani
1d0f546a53
comments
2018-06-29 17:09:51 -04:00
Arya Irani
21935173d3
runtime FileCompilationTests
2018-06-29 15:42:59 -04:00
Runar Bjarnason
505d186b0d
Base-58 straw man implementation
2018-06-27 17:12:17 -04:00
Paul Chiusano
c75eb1f4e1
Merge pull request #205 from unisonweb/master
...
merge master into wip/typechecker
2018-06-25 18:39:29 -05:00
Arya Irani
6a221273b8
first cut at atom editor support for unison files
2018-06-16 16:17:10 -04:00
Paul Chiusano
88d62e43c4
patterns now checked against scrutinee inferred type
2018-06-13 21:48:39 -04:00
Arya Irani
92f43221d3
typechecking for pattern-matching (untested)
2018-06-12 17:01:00 -04:00
Arya Irani
b3c922df36
substed in Terms for user-defined Data and Effect constructors
2018-06-05 18:47:15 -04:00
Arya Irani
64ddd5d02d
renamed some builtins, ran harder program; problem with local data decls
2018-06-05 18:02:04 -04:00
Arya Irani
41ba5c10c5
fixed true/false parsing
2018-06-05 17:49:49 -04:00
Arya Irani
25c52d169d
3++ == 4
2018-06-05 17:40:15 -04:00
Arya Irani
d961ddf8a2
Incremento!
2018-06-05 12:59:36 -04:00
Arya Irani
58302ae563
update parser to be able to use data/effect decls it encounters
2018-06-04 14:23:44 -04:00
Paul Chiusano
80b30b7ec1
Convenience function for reading / parsing a whole file, also spotted needless attempt in effect pattern parser
2018-05-29 16:20:19 -04:00
Paul Kinsky
08b8b1caeb
fix invalid operator identifier error
2017-11-20 14:13:43 -08:00
Paul Chiusano
059d8f14fd
node and shared tests now passing with new parser, also changed precedence of effect blocks to allow them to be used in operator expressions like foo <| do Remote { ... }
2016-12-13 12:07:43 -05:00
Paul Chiusano
52840857cf
all shared tests now passing
2016-12-11 22:36:44 -05:00
Paul Chiusano
1e73a1a4be
term and types parsing again, got all of base.u parsing
2016-11-29 22:47:39 -05:00
Paul Chiusano
5b8abcb9d0
more progress on add command, handling ambiguity
2016-10-30 11:18:11 -04:00
Paul Chiusano
3064280a56
cleanup, fix missed handling of key ordering
2016-10-12 09:32:17 -04:00
Paul Chiusano
69160d31ad
fix html test, added a bit more diagnostics to searchengine.u
2016-10-11 17:24:38 -04:00
Paul Chiusano
e640c59693
added delimiter between search results
2016-10-11 17:00:23 -04:00
Paul Chiusano
c5a1c6fed2
clean up search engine example and add a few more builtins
2016-10-11 16:53:00 -04:00
Paul Chiusano
ad3f52250a
some search engine tweaks, spawning crawlers from multiple roots
2016-10-07 17:01:36 -04:00
Paul Chiusano
6e8a4df406
minor tweaks to searchengine.u
2016-10-07 16:13:22 -04:00
Paul Chiusano
4459246024
rename Node -> Codebase, split out evaluation functions, tests passing in shared
2016-10-07 12:37:51 -04:00
Paul Chiusano
3fe4807d55
search engine implementation + various utilities and tweaks
2016-10-05 16:57:32 -04:00
Paul Chiusano
75a24f5a7c
update sort call, due to rename
2016-10-04 21:00:34 -04:00
Paul Chiusano
9b4233e079
Vector.dedup and Order.equal
2016-10-04 20:53:51 -04:00
Paul Chiusano
e3e134cb83
Text.take/drop/words, Vector.dedup-adjacent
2016-10-04 20:37:59 -04:00
Paul Chiusano
d18364fa84
Fix quadratic performance bug in interpreter, added simple test of indexed traversal
2016-10-03 13:50:48 -04:00
Paul Chiusano
47f891d1f5
fix issue with IndexedTraversal.intersect
2016-09-30 14:34:33 -04:00
Paul Chiusano
c7e698b036
missed a few eval calls
2016-09-26 20:21:38 -04:00
Paul Chiusano
dbb2cd0de2
convert to strict interpreter, add if-then-else syntax
2016-09-26 17:59:13 -04:00
Paul Chiusano
328939809c
DIndex seems to be working, added simple test
2016-09-15 13:03:24 -04:00
Paul Chiusano
2eaacba7e0
fix issues with Remote.sleep and Remote.race
2016-09-15 12:35:16 -04:00
Paul Chiusano
4e4b1e17ae
Remote.send is strict
2016-09-15 00:09:51 -04:00
Paul Chiusano
d62745a74d
added receive-async example, toned down logging
2016-09-15 00:06:02 -04:00
Paul Chiusano
5b844512c0
got rid of node worker processes, spawning node worker in same process
2016-09-14 12:31:41 -04:00
Paul Chiusano
0dc9e37a47
fix compile errors in dindex.u and extra.u
2016-09-13 11:54:59 -04:00