Richard Feldman
e29d956b0d
Give repl proper access to builtins
2020-08-22 22:43:04 -04:00
Folkert
0e5283efd2
Merge remote-tracking branch 'origin/trunk' into infer-borrow
2020-08-19 23:56:29 +02:00
Richard Feldman
608c4eebd9
Drop unnecessary arg_basic_types
2020-08-16 16:17:10 -04:00
Folkert
d8c71c23f4
thread in borrow signature inference
2020-08-13 20:56:33 +02:00
Richard Feldman
295cb00499
wip
2020-08-12 23:18:40 -04:00
Richard Feldman
3f0b08a992
Have Stmt::new accept LayoutCache
2020-08-12 23:14:06 -04:00
Folkert
380e34d296
Merge remote-tracking branch 'origin/trunk' into tail-call-elimination
2020-08-12 15:46:50 +02:00
Richard Feldman
edafbfe525
Replace unsorted.csv with algorithm
2020-08-12 08:33:36 -04:00
Richard Feldman
12ed20b5cd
Use fast calling convention internally
2020-08-11 09:02:26 -04:00
Folkert
84a8b69437
generate IR that uses uniqueness
2020-08-11 14:47:14 +02:00
Richard Feldman
f7a905d8ef
Fix expected test output
2020-08-10 23:16:03 -04:00
Richard Feldman
96419a55b0
cargo fmt
2020-08-10 19:27:52 -04:00
Richard Feldman
80b6781b19
Drop unused dbg!
2020-08-10 19:26:46 -04:00
Folkert
79ea62b9d4
make uniqueness change codegen
2020-08-10 21:13:57 +02:00
Folkert
65db338435
add test for quicksort example
2020-08-10 16:10:07 +02:00
Folkert
8f7d842d41
apply optimization passes
2020-08-10 13:34:28 +02:00
Folkert
4caef70668
Merge remote-tracking branch 'origin/trunk' into refcount
2020-08-09 13:49:13 +02:00
Richard Feldman
3fe2a4e3fd
Drop unused jump_counter
2020-08-08 19:53:21 -04:00
Folkert
078c6df677
Merge remote-tracking branch 'origin/trunk' into refcount
2020-08-08 22:34:14 +02:00
Richard Feldman
c8e647ccfc
Use is_zero_sized to remove lots of ptr_bytes
2020-08-07 20:08:06 -04:00
Folkert
378fe1d5d1
phase out old mono stuff
2020-08-06 21:05:14 +02:00
Folkert
4e55a4bf92
more pattern matching fidling
2020-08-05 16:10:45 +02:00
Richard Feldman
62fdae8b45
Don't send separate start_time arg
2020-08-03 23:16:46 -04:00
Richard Feldman
7f1e666ad3
Add some basic timings
2020-08-03 22:46:14 -04:00
Richard Feldman
9e0cf4cd35
Restore CLI
2020-08-02 22:04:31 -04:00
Folkert
5548bf136d
conditionally leak memory
2020-08-01 21:37:54 +02:00
Richard Feldman
1c49e116b3
wip
2020-07-30 00:59:03 -04:00
Richard Feldman
13c589af7d
Remove an unnecessary transmute
2020-07-27 01:10:04 -04:00
Richard Feldman
eaaeda728a
Use synchronous file I/O over mmap
2020-07-27 01:10:04 -04:00
Richard Feldman
e1fdabd5ef
Fix problem with CLI paths
2020-07-22 19:34:14 -04:00
Richard Feldman
d6c54645ce
cargo fmt
2020-07-22 19:33:36 -04:00
Richard Feldman
2465c204e3
Restore CLI
2020-07-22 19:33:36 -04:00
Richard Feldman
b5ad6e17b4
Don't print subs on error
...
It's way too verbose and unhelpful!
2020-07-06 21:23:59 -04:00
Richard Feldman
e559deecbf
Improve LLVM verification error messages
2020-07-05 22:24:04 -04:00
Richard Feldman
9d31c667fa
Merge remote-tracking branch 'origin/trunk' into specialize-separately
2020-06-18 21:02:50 -04:00
Richard Feldman
b638970c84
Make repl Windows-friendly
2020-06-18 00:24:27 -04:00
Richard Feldman
68f64835f0
Add target triple for Windows
2020-06-16 23:04:00 -04:00
Richard Feldman
1b3b9ee1c4
Merge remote-tracking branch 'origin/trunk' into specialize-separately
2020-06-13 23:54:30 -04:00
Richard Feldman
269da82840
Make VarStore no longer use atomics
2020-06-13 21:59:01 -04:00
Richard Feldman
245a9fc951
Merge remote-tracking branch 'origin/trunk' into specialize-separately
2020-06-13 21:03:38 -04:00
Richard Feldman
99dcda8603
Use inlinable_string 0.1
2020-05-31 20:14:19 -04:00
Richard Feldman
639c132ce0
wip
2020-05-26 21:18:25 -04:00
Richard Feldman
4295dec955
Fix load_builtin_aliases ordering
2020-05-26 00:04:59 -04:00
Richard Feldman
c386192e8b
Reorganize when solving and constraint gen happen
2020-05-26 00:04:42 -04:00
Richard Feldman
df7d017287
cargo fmt
2020-05-10 15:15:09 -04:00
Richard Feldman
64fd0ceed9
Address some unused warnings via TODOs
2020-05-10 15:13:18 -04:00
Richard Feldman
bf11262e61
Move layout_id from mono to gen
...
This is because it's actually important that mono never use this.
It should only be used in gen, because it's only safe to use
synchronously, and it's important that mono be done in parallel.
Moving it to gen guarantees that mono will not use it, even accidentally!
2020-05-10 15:13:18 -04:00
Richard Feldman
6e05ba816f
Have CallByName use Layout
2020-05-10 15:13:18 -04:00
Richard Feldman
8572879e0d
Remove unused procs argument
2020-05-09 22:41:59 -04:00
Richard Feldman
c49abfe2de
Add layout to CallByName
2020-05-09 22:41:59 -04:00
Richard Feldman
510ab36f51
Use LayoutCache to avoid recomputing layouts
2020-05-09 22:11:32 -04:00
Richard Feldman
6a79a75648
Don't regenerate anonymous function symbols
2020-05-09 12:56:55 -04:00
Richard Feldman
d7ee713bc5
Have the editor theoretically take filepaths
2020-05-04 21:41:45 -04:00
Richard Feldman
7e7c6ef4af
Drop obsolete symbol_counter field
2020-05-04 20:32:21 -04:00
Richard Feldman
b0e2134121
Launch editor when given no CLI args
2020-05-03 22:04:28 -04:00
Richard Feldman
ce9e7a91f6
Clean up some Cargo.toml files
2020-05-03 21:37:59 -04:00
Richard Feldman
13dd937a71
Revert "Attempt to add builtin_defs to CLI"
...
This reverts commit 2679077de9
.
2020-05-01 22:00:06 -04:00
Richard Feldman
2679077de9
Attempt to add builtin_defs to CLI
2020-05-01 21:59:38 -04:00
Richard Feldman
101dc80ae5
Move parse::operator into module::operator
2020-05-01 21:58:53 -04:00
Richard Feldman
095844c2c1
Use iterator chaining over hash insertion
2020-05-01 19:40:59 -04:00
Richard Feldman
ee31eac0c5
Code gen toplevel module functions
2020-05-01 19:30:55 -04:00
Richard Feldman
1a2367c8aa
appease clippy
2020-05-01 19:30:55 -04:00
Richard Feldman
5c31369072
Code gen thunks for top-level module decls
2020-05-01 19:30:55 -04:00
Richard Feldman
072cf4e844
Revert "wip canonical builtins in modules"
...
This reverts commit e1935a1e9f0c7ea1ffefe5f2f4f07f2c7666363b.
2020-05-01 19:30:55 -04:00
Richard Feldman
a1750567ff
wip canonical builtins in modules
2020-05-01 19:30:55 -04:00
Richard Feldman
929e2240d4
Appease clippy
2020-04-21 23:44:13 -04:00
Richard Feldman
526d7cb4ba
Support multiline repl input
2020-04-21 23:35:39 -04:00
Richard Feldman
0b670baad4
Make welcome message more helpful.
2020-04-18 16:58:26 -04:00
Richard Feldman
dd223c5d5c
clippy clip
2020-04-18 16:39:39 -04:00
Richard Feldman
088df46a76
cargo fmt
2020-04-18 16:38:47 -04:00
Richard Feldman
c9ef2deb80
Have the repl loop
2020-04-18 16:02:33 -04:00
Richard Feldman
a99a339672
Spice up the repl visuals a bit
2020-04-18 16:01:58 -04:00
Richard Feldman
114815a323
Add types to the repl
2020-04-18 15:45:48 -04:00
Richard Feldman
73fbc0e490
Add basic 1-iteration repl
2020-04-18 15:32:04 -04:00
Richard Feldman
d4a45ed489
Add CLI subcommands roc run
and roc build
2020-04-18 14:32:50 -04:00
Folkert
7f299356d3
define our own cargo features
2020-04-18 15:56:54 +02:00
Folkert
98d451b240
only enable arm and wasm when the feature is enabled
2020-04-18 15:28:10 +02:00
Richard Feldman
6f75ce6680
Add CLI test for Hello World
2020-04-17 06:38:29 -04:00
Richard Feldman
e61ac3b41b
Clippy doin' clippy things
2020-04-16 22:21:26 -04:00
Richard Feldman
16ff40a836
Use clap to parse CLI flags
2020-04-16 22:02:29 -04:00
Richard Feldman
d2e242ccbe
Have cli accept an --optimize flag and use it
2020-04-16 20:26:37 -04:00
Richard Feldman
b19386c1f6
Have CLI use the given file's directory as src_dir
2020-04-16 19:26:25 -04:00
Richard Feldman
57c4261b08
Fully qualify roc_load::file::load
2020-04-16 19:26:25 -04:00
Folkert
719ef5b70e
parse error infrastructure
2020-04-15 21:10:42 +02:00
Richard Feldman
8f2a5f2133
cargo fmt
2020-04-15 07:06:21 -04:00
Richard Feldman
0e48f512fd
Use tokio for CLI process stuff
2020-04-15 07:06:11 -04:00
Richard Feldman
1517581ced
Load main
in the CLI and use it for gen
2020-04-15 07:06:11 -04:00
Richard Feldman
9ca754b8fd
First pass at loading modules from cli
2020-04-15 07:06:11 -04:00
Folkert
97c10e1211
setup for mono reports
2020-04-12 01:56:57 +02:00
Folkert
a67fe6540c
update cli
2020-04-10 23:34:03 +02:00
Folkert
fcb62cdf8e
add titles to errors
2020-04-09 23:58:28 +02:00
Richard Feldman
9288e20469
Upgrade to LLVM 10
2020-04-08 06:41:53 -04:00
Richard Feldman
30df69af4f
Improve error message when example fails to run
2020-04-08 06:41:53 -04:00
Richard Feldman
950ca4436b
Replace build.sh with cargo run
2020-04-06 23:32:47 -04:00
Richard Feldman
d28f8449d0
Report errors in the CLI
2020-04-03 21:58:44 -04:00
Folkert
604dbf7215
Merge remote-tracking branch 'origin/trunk' into precedence-error
2020-04-02 23:29:15 +02:00
Folkert
2e822e739f
report circular type error
2020-04-02 23:13:35 +02:00
Richard Feldman
658dc34313
Don't make a JIT execution engine in the CLI
2020-04-01 23:24:00 -04:00
Richard Feldman
37492f4aa6
Load builtins on startup
2020-03-31 23:50:55 -04:00
Richard Feldman
26655f7355
Address clippy's concerns
2020-03-30 22:34:59 -04:00
Richard Feldman
1a41f0b32a
Make cli work on multiple OSes, in theory
2020-03-30 21:27:41 -04:00
Richard Feldman
5f817d8019
Add a basic CLI
2020-03-30 21:27:37 -04:00
Richard Feldman
578fa28821
Update cli/examples
2020-03-06 18:24:37 -05:00
Richard Feldman
08f9eb883d
rustfmt cli/
2019-09-18 19:00:01 -04:00
Richard Feldman
fde3cedfef
Fix paren parsing bug, thread errors through eval
2019-07-09 23:19:50 -04:00
Richard Feldman
07a05b90fc
Restore eval, add |> operator
2019-07-08 23:35:11 -04:00
Richard Feldman
d9c1e23105
Update examples to new closure syntax
2019-07-07 11:06:57 -04:00
Richard Feldman
78df28c463
Add cli/README.md
2019-06-23 19:19:06 -04:00
Richard Feldman
77f3199ec9
Move examples into cli/examples
2019-06-23 19:16:41 -04:00
Richard Feldman
38d86fc9f3
Add a recursive Fibonacci example
2019-06-23 19:12:52 -04:00
Richard Feldman
f7cfe1d396
Accept arbitrary filenames in roc-cli
2019-06-23 18:55:10 -04:00
Richard Feldman
9892a27f21
Fix example
2019-06-22 10:26:34 -04:00
Richard Feldman
77d9a13b10
Update Example.roc
2019-06-22 10:17:20 -04:00
Richard Feldman
f6096d629d
Update Cargo.lock
2019-06-22 10:17:11 -04:00
Richard Feldman
d743818f74
Rename test.roc to Example.roc
2019-06-19 21:33:01 -04:00
Richard Feldman
e1286ae526
Don't print anything on success.
2019-06-14 00:05:24 -04:00
Richard Feldman
32f19428ac
Add some comments to main.rs
2019-06-14 00:05:17 -04:00
Richard Feldman
7165f55d6e
Trim input from stdin
2019-06-13 22:48:41 -04:00
Richard Feldman
9fc30fbbc4
Update test.roc
2019-06-13 22:48:19 -04:00
Richard Feldman
8761873980
Fix displaying eval problems
2019-06-13 22:48:12 -04:00
Richard Feldman
140fa5ffa9
Reading from stdin works
2019-06-13 21:32:07 -04:00
Richard Feldman
1c3cf5f675
Progress on test.roc
2019-06-13 19:03:03 -04:00
Richard Feldman
abf3bf9df7
Get beginning of test.roc working
2019-06-13 18:44:22 -04:00
Richard Feldman
352ab5ed34
More syntax changes
2019-06-12 21:25:15 -04:00
Richard Feldman
9895e0c0ae
Use () -> closure syntax
2019-06-12 21:25:15 -04:00
Richard Feldman
f4b43e43e2
Alternate syntaxes
2019-06-12 21:25:15 -04:00
Richard Feldman
4d27a274c6
Implement await demo
2019-06-12 21:25:15 -04:00
Richard Feldman
88f8325fb3
Hardcode Read and Echo
2019-06-12 21:25:15 -04:00
Richard Feldman
6c0e34f5fc
Use SmallVec for patterns
2019-06-12 21:25:15 -04:00
Richard Feldman
9cb93dfdd5
Add first-ever .roc file
2019-06-12 21:25:15 -04:00
Richard Feldman
fc58c5db0e
Add basic CLI
2019-06-12 21:25:15 -04:00