Commit Graph

769 Commits

Author SHA1 Message Date
Richard Feldman
39229013ea
Delete some obsolete comments 2022-02-23 21:36:05 -05:00
Richard Feldman
7f1f22f81a
Delete some obsolete gui example platform stuff 2022-02-23 21:34:12 -05:00
Richard Feldman
5fa5a15d44
Drop an obsolete comment 2022-02-23 21:27:18 -05:00
Richard Feldman
655373dbe7
Merge remote-tracking branch 'origin/trunk' into gui-example 2022-02-23 21:25:01 -05:00
Richard Feldman
66057b6643
Make Hello World gui example more legible 2022-02-23 21:22:22 -05:00
Richard Feldman
4168fc7c6e
Drop some unused code 2022-02-23 21:13:37 -05:00
Richard Feldman
716a0cc8c9
Replace RgbaTup with repr(c) Rgba struct 2022-02-23 21:12:42 -05:00
Richard Feldman
5b7acf8b4f
Make Row and Col work 2022-02-23 20:36:37 -05:00
Tom Dohrmann
788c8a6af2 reimplement RocList and RocStr 2022-02-23 16:02:13 +01:00
Richard Feldman
90a25efbd8
Store button styles in Button 2022-02-23 08:35:09 -05:00
Richard Feldman
f1b7c7383f
Store rect colors and borders in FillRect 2022-02-23 08:19:39 -05:00
Richard Feldman
e5b4133a8e
Draw Drawables in reverse order 2022-02-23 08:16:44 -05:00
Richard Feldman
380f367530
Introduce Drawables 2022-02-23 08:11:50 -05:00
Richard Feldman
be3bdae36c
Render a more reasonable-looking button 2022-02-23 00:23:52 -05:00
Richard Feldman
5b92eb87ec
First button ever rendered! 2022-02-22 21:42:15 -05:00
Richard Feldman
4399a6dfee
Pass RocButton all the way to rendering 2022-02-22 21:42:14 -05:00
Richard Feldman
683b505e3a
Get Button and Text working 2022-02-22 21:42:14 -05:00
Brendan Hansknecht
a34c4f7c44 stop printing to stdout before timing completes 2022-02-21 19:19:39 -08:00
Richard Feldman
56e3fc4169
Make Elem recursive 2022-02-20 20:30:42 -05:00
Richard Feldman
5f78e9320b
Pass a tag to the gui host 2022-02-20 20:07:07 -05:00
Anton-4
50928d8578
don't use position name twice to prevent collision on macos metal 2022-02-19 17:06:18 +01:00
Anton-4
b1245ffd7f
update to wgpu master to fix M1 shader issues 2022-02-19 14:07:19 +01:00
Anton-4
7548f97221
changed whole pipeline to work with quads 2022-02-15 15:48:48 +01:00
Anton-4
3346eb4f2c
update wgpu, winit and wgpu_glyph 2022-02-12 13:55:21 +01:00
Anton-4
59a0c47038
succesfull rendering of multi-level rects and texts 2022-02-12 11:55:29 +01:00
Jan Van Bruggen
f47dbb5171
Swap List.mapWithIndex arg1 args order to put the element first 2022-02-11 16:10:29 -07:00
Jan Van Bruggen
92e0f8714f
Swap List.repeat args order to put the list first 2022-02-11 16:10:29 -07:00
Anton-4
51d86f101f
display example text on screen 2022-02-11 20:15:09 +01:00
Richard Feldman
9efd352d43
Add Http.roc to examples/gui 2022-02-07 23:51:26 -05:00
Richard Feldman
f81fbabf12
Avoid stack overflow in the compiler
(reverting this reproduces a stack overflow in the compiler!)
2022-02-07 00:13:24 -05:00
Richard Feldman
5a9d76e16f
Add Elem.translate, Elem.list, and Elem.lazy 2022-02-07 00:09:45 -05:00
Richard Feldman
38145b363f
s/tea/gui 2022-02-06 10:49:12 -05:00
Richard Feldman
9871065a3a
Add hello-gui to .gitignore 2022-02-06 08:41:15 -05:00
Richard Feldman
720d727873
Cover missing variant in match 2022-02-06 08:40:38 -05:00
Richard Feldman
d74499c356
Don't use obsolete effects syntax 2022-02-06 08:29:40 -05:00
Richard Feldman
c786d3c855
Reproduce outstanding Arc references panic
To reproduce: cargo run examples/gui/Hello.roc
2022-02-06 07:43:37 -05:00
Richard Feldman
4668a6a1b2
Move Elem and Action to examples/gui 2022-02-06 07:39:16 -05:00
Richard Feldman
26e018c45c
Reproduce a monomorphization panic 2022-02-06 07:39:16 -05:00
Richard Feldman
f8fc9cf577
Reproduce code gen crash 2022-02-06 07:39:16 -05:00
Richard Feldman
ff8937b142
s/hello-rust/hello-gui 2022-02-06 07:39:15 -05:00
Richard Feldman
ff082cb98d
wip 2022-02-06 07:39:15 -05:00
Richard Feldman
8f91574629
give TEA example graphics 2022-02-06 07:38:32 -05:00
Richard Feldman
c59aa22402
Reproduce mono::ir panic 2022-02-06 07:38:32 -05:00
Richard Feldman
bfd95d4627
Add TEA example 2022-02-06 07:38:32 -05:00
Richard Feldman
48bd267892
Merge branch 'trunk' into cleanup-cli-example 2022-02-05 20:53:55 -05:00
Richard Feldman
881bae7267
Merge branch 'trunk' into fix-module-formatting 2022-02-04 23:03:52 -05:00
Richard Feldman
f49ae01d06
Drop an obsolete comment 2022-02-04 18:41:36 -05:00
Folkert
43066dcd50 fix formatting 2022-02-04 22:26:31 +01:00
Folkert
a44a99c6cf add new Effect.roc files 2022-02-04 20:06:47 +01:00
Folkert
35efa3462d fix my mistakes 2022-02-04 00:04:08 +01:00
Folkert
885500712c remove old Effect module things 2022-02-03 23:55:02 +01:00
Folkert
a98635ed06 update other examples 2022-02-03 22:45:15 +01:00
Folkert
6f9550d792 update cli example 2022-02-03 22:39:33 +01:00
Folkert
db2d437d78 use new hosted module for benchmarks example 2022-02-03 22:02:18 +01:00
Folkert
a32e0bbd4c use new hosted module for effect example 2022-02-03 21:56:44 +01:00
Richard Feldman
34e9b1b73d
Fix module formatting 2022-02-01 21:22:35 -05:00
Drew
227f06c4a5 Indent + remove old comments 2022-01-29 17:27:17 -06:00
Folkert
3ade77374a Merge remote-tracking branch 'origin/trunk' into add_loop_examples 2022-01-27 16:49:47 +01:00
Jan Van Bruggen
04c2b5e88c Ignore tui executable 2022-01-27 06:48:27 -07:00
Jan Van Bruggen
33e5ecf8ba Manually format echo example to pass tests 2022-01-27 06:48:14 -07:00
Jan Van Bruggen
e36b94fc53 Add emoji to form example 2022-01-26 21:08:45 -07:00
Jan Van Bruggen
78be942918 Add emojis to echo example 2022-01-26 21:08:45 -07:00
Jan Van Bruggen
e1f52057cc Reformat form example for simplicity 2022-01-26 21:08:45 -07:00
Jan Van Bruggen
8e0c2408c7 Make echo example more fun 2022-01-26 21:08:45 -07:00
Folkert
1ccf7f6b34 more formatting 2022-01-26 21:08:45 -07:00
Folkert
ea10c1f665 formatting 2022-01-26 21:08:45 -07:00
Folkert
d3b51ea8ea make echo example work (with loop, not yet with forever) 2022-01-26 21:08:45 -07:00
Folkert
de84698890 use generic mainForHost in false platform 2022-01-26 21:08:44 -07:00
Folkert
accee83a3f cli platform: use generic version of mainForHost 2022-01-26 21:08:44 -07:00
Jan Van Bruggen
3866723e36 Add echo example 2022-01-26 21:08:44 -07:00
Jan Van Bruggen
97149d4530 Add countdown example 2022-01-26 21:08:44 -07:00
Jan Van Bruggen
0079f8f45c Rename name example app to "form" 2022-01-26 18:14:03 -07:00
Folkert
27d960f720 formatting 2022-01-26 20:25:31 +01:00
Folkert
b3d605cade fix failing debug_assert 2022-01-26 20:22:18 +01:00
Folkert
ddf2a09cbf use Task.loop in False 2022-01-26 19:59:50 +01:00
Folkert
4ab9a3302b use Task.loop in Deriv 2022-01-26 19:59:50 +01:00
Folkert
cbdf3f0378 tweaks 2022-01-23 21:41:54 +01:00
Folkert
f6367f72a5 Merge remote-tracking branch 'origin/trunk' into tea-example 2022-01-23 21:25:35 +01:00
Folkert
f76a75b00e formatting fixes 2022-01-23 21:25:20 +01:00
Folkert
616eccb932 make tui example that uses primitive TEA 2022-01-23 21:05:55 +01:00
hafiz
f6126cda69
Revert "Use Task.loop in examples" 2022-01-23 11:56:13 -05:00
Richard Feldman
b42cc3d625
Merge pull request #2392 from rtfeldman/tag-join-points
Improve code gen of tags in join points
2022-01-22 22:42:22 -05:00
Folkert
390a50c537 use mainForHost generic in effect platform 2022-01-23 00:20:28 +01:00
Folkert
1328e4515d use Task.loop in False 2022-01-21 20:57:03 +01:00
Folkert
06d506f63b use Task.loop in Deriv 2022-01-21 20:01:45 +01:00
Folkert
a2cb9035c4 formatting 2022-01-19 23:56:14 +01:00
Folkert
5230c6f6f3 implement Effect.loop 2022-01-19 23:06:32 +01:00
Folkert
859bdf5212 Merge remote-tracking branch 'origin/trunk' into effect-forever 2022-01-19 20:14:24 +01:00
Folkert
aecafe5c80 add Task.forever to platforms 2022-01-19 19:32:18 +01:00
Jan Van Bruggen
1e9d2d1239 Remove accidental trailing spaces 2022-01-18 22:25:46 -07:00
ayazhafiz
2c41c43aea Implement saturated add/subtract 2022-01-10 22:37:08 -05:00
ayazhafiz
4ea91b54eb Fix additional unsigned sub overflow bug 2022-01-10 21:57:29 -05:00
ayazhafiz
b5225c87d8 Make sure quicksort only ever uses non-negative values
`low` can be zero, and so `low - 1` causes an integer overflow for
unsigned ints.
2022-01-10 21:10:35 -05:00
Joshua Warner
e236703c42 Add examples/benchmarks/issue2279 to gitignore 2022-01-03 20:16:38 -08:00
Folkert
fc4cea9f75 don't throw away a jump 2022-01-03 16:50:43 +01:00
Folkert
7044e95df8 fix imported function thunk 2022-01-03 16:18:53 +01:00
Folkert
06be340bee add test for this issue 2021-12-31 21:48:14 +01:00
Joshua Warner
8b58d5cbc7 Switch to always encoding package names / paths as strings
This will simplify parsing and make it possible to have a uniform lexer for the language. Previously unquoted package names were allowed to include '-'s, which aren't valid identifiers.

In the future, we'll distinguish local paths from packages in the package-manager by looking for a ".roc" suffix, which should only be present in local paths.
2021-12-23 20:11:14 -08:00
Joshua Warner
6786acb939 Remove redundant space in aliases 2021-12-21 18:16:58 -08:00
Joshua Warner
8b967f1ea8 Run formatter on all examples 2021-12-21 17:17:31 -08:00
Jan Van Bruggen
d03a51c75b Rename base package to pf everywhere, to match tutorial 2021-12-12 05:57:39 -07:00
Brendan Hansknecht
8a45b1eed8 use ManuallyDrop instead of forget for rust host fx functions 2021-12-10 17:09:49 -08:00
Joshua Warner
8038758c99 Move comment in RBTreeChk.roc to _also_ not cause an internal compilation :face-palm: 2021-12-03 12:08:32 -08:00
Joshua Warner
7e70b3ecf9 Move comment in RBTreeChk.roc to not run afoul of formatting-idempotency bug (pre-req to auto-formatting all examples) 2021-12-02 20:16:42 -08:00
rvcas
023f7f44a7 chore: update examples that reference fromInt 2021-11-30 14:55:08 -05:00
Richard Feldman
48826c79f3
Add README to examples/cli 2021-11-29 09:24:58 -05:00
Folkert
c925613cdc swap argument order 2021-11-26 23:16:47 +01:00
Folkert
b873cb0e01 update hello zig platform 2021-11-26 22:48:22 +01:00
Richard Feldman
414bad5b28
Delete executable that was accidentally checked in 2021-11-19 09:06:55 -05:00
Richard Feldman
1bfbd36662
Delete binary that was accidentally checked in 2021-11-19 08:52:45 -05:00
Richard Feldman
ef7052540f
Delete binary that was accidentally checked in 2021-11-19 08:52:34 -05:00
Nathan Bleigh
2dd86b1f18 Updates zig9 to zig
Referenced in https://github.com/rtfeldman/roc/pull/1905
2021-11-09 21:18:18 -06:00
Kevin Sjöberg
f6d055dc62 Correct minor spelling mistakes 2021-11-06 15:29:08 +01:00
Kevin Sjöberg
fa8f0bfae2 Ensure we return 0 in main 2021-11-03 19:45:43 +01:00
Folkert de Vries
416a143a7d
Merge branch 'trunk' into shritesh/hello-swift 2021-11-03 12:12:42 +01:00
Shritesh Bhattarai
d7262d4320 Add small RocStr support 2021-11-02 20:28:10 -04:00
Shritesh Bhattarai
bc63536938 A lot of todos but big RocStr works 2021-11-02 20:28:10 -04:00
Richard Feldman
ac42470c81 Drop unused libc deps 2021-11-02 19:37:38 -04:00
Richard Feldman
0bc3ff4ca5 Use std and core over libc where equivalent 2021-11-02 19:37:05 -04:00
Brendan Hansknecht
9798a27606 Merge branch 'trunk' into false-cleanup 2021-10-29 15:48:27 -07:00
Brendan Hansknecht
ecf22516fc Switch to correct c ffi in false 2021-10-29 15:48:07 -07:00
Dan Knutson
6f7a26895a handle small strings correctly 2021-10-25 20:22:37 -05:00
Brendan Hansknecht
056b10b36b Merge branch 'trunk' into false-cleanup 2021-10-24 11:49:30 -07:00
Brendan Hansknecht
8f3254bee0 Stop dropping filename 2021-10-24 11:19:20 -07:00
Folkert
da3787feb8 Merge remote-tracking branch 'origin/trunk' into remove-call-result-again 2021-10-22 12:57:36 +02:00
Folkert
83de4b55ef remove another instance of RocCallResult 2021-10-22 12:26:04 +02:00
Brendan Hansknecht
31651c6962 Fix minor typo 2021-10-21 20:21:20 -07:00
Folkert
0a12ce896f Revert "make list inc/dec non-recursive (except when freeing the list)"
This reverts commit 19eadbfe70.
2021-10-21 20:28:32 +02:00
Folkert
84950366b0 Merge remote-tracking branch 'origin/trunk' into false 2021-10-21 20:20:56 +02:00
Brendan Hansknecht
b4be6da3a4 Add cli test for false interpreter 2021-10-19 11:27:05 -07:00
Brendan Hansknecht
0ca6a3d723 Add readme to false interpreter 2021-10-19 11:15:37 -07:00
Brendan Hansknecht
fcbc4ef206 Clean up extra print outs 2021-10-19 09:33:16 -07:00
Brendan Hansknecht
ddef6ab0f8 Make happy again with trunk 2021-10-16 11:41:14 -07:00
Brendan Hansknecht
0d4ef43470 Merge branch 'trunk' into false 2021-10-16 11:23:59 -07:00
Folkert
19eadbfe70 make list inc/dec non-recursive (except when freeing the list) 2021-10-14 19:57:23 +02:00
Folkert
94e8c62613 make things compile, base64 has a memory leak 2021-10-06 22:57:11 +02:00
Richard Feldman
13a855f8dd Fix Bytes in benchmarks 2021-10-05 21:08:11 -04:00
Richard Feldman
81b6160815 Fix List.walk in Base64.Encode 2021-10-05 20:58:48 -04:00
Brendan Hansknecht
200e823ae6 Switch to List.dropAt 2021-10-05 14:15:53 -07:00
Brendan Hansknecht
86699eda90 Merge branch 'trunk' into false 2021-10-05 13:23:31 -07:00
Brendan Hansknecht
75eccf5bac Switch loading file chunks to list of bytes instead of string 2021-10-03 14:56:09 -07:00
Brendan Hansknecht
3943ff9ffd remove giant log file 2021-10-02 19:51:16 -07:00
Brendan Hansknecht
21d978bab8 Switch to 32bit number representation and fix cksum 2021-10-02 19:50:18 -07:00
Brendan Hansknecht
9920d5e6b8 Rewrite interpreter into state machine to reduce nested lambda calls 2021-10-02 15:35:24 -07:00
Brendan Hansknecht
88069b679a Fix withOpen 2021-10-02 10:40:16 -07:00
Brendan Hansknecht
f412ffd2d0 Remove '*'s and make error union nice 2021-10-02 10:22:32 -07:00
Brendan Hansknecht
e7cba9fb88 Switch to custom cksum script from old crc32. use constants to make it faster 2021-09-30 22:08:14 -07:00
Brendan Hansknecht
157a04d1ac Fix bug and comment more on the pains of recursion 2021-09-29 21:05:36 -07:00
Brendan Hansknecht
414f3a0438 Add info about stack overflows 2021-09-29 18:59:49 -07:00
Brendan Hansknecht
0cd288f623 Add false lang interpreter example 2021-09-29 16:01:54 -07:00
Brendan Hansknecht
d9e28ed4b1 Merge branch 'trunk' into test-linker 2021-09-25 12:21:05 -07:00
Brendan Hansknecht
e6c137889a Just disable gc-sections with surgical linker for rust hosts for now 2021-09-25 12:19:56 -07:00
Folkert
a6bc37ecca handle small strings 2021-09-25 15:16:17 +02:00
Folkert
45d3438b3d Merge remote-tracking branch 'origin/trunk' into hello-web 2021-09-25 14:59:27 +02:00
Brendan Hansknecht
411ed58eec Fix rust host with surgical linking 2021-09-24 21:37:58 -07:00
Brendan Hansknecht
eae8a2ea37 Add surgical linker to cli_run tests that don't use rust 2021-09-24 13:43:00 -07:00
Folkert
45774df2db fix hello-web platform 2021-09-24 10:00:33 +02:00
Brendan Hansknecht
7d1b88b3fb Merge branch 'trunk' into integrate-linker 2021-09-23 21:12:40 -07:00
Folkert
e278b820ef Merge remote-tracking branch 'origin/trunk' into hello-web 2021-09-22 21:30:27 +02:00
Folkert de Vries
9fd5ad53b5
Merge pull request #1724 from rtfeldman/gen-dev/joinpoint
Gen dev/joinpoint
2021-09-22 14:16:41 +02:00
Folkert
a4adf8f07f Merge remote-tracking branch 'origin/trunk' into hello-web 2021-09-22 14:16:11 +02:00
Folkert
faf07e65f9 Merge remote-tracking branch 'origin/trunk' into hello-web 2021-09-21 23:08:41 +02:00
Folkert de Vries
693869336d
Merge branch 'trunk' into direct-return-known-types 2021-09-21 23:01:09 +02:00
Brendan Hansknecht
d710e78ab3
Merge branch 'trunk' into integrate-linker 2021-09-21 09:39:47 -07:00
Brendan Hansknecht
16d098da5e Add join points and tail call optimization to the dev backend. 2021-09-20 23:13:30 -07:00
Folkert
879038fae6 Merge remote-tracking branch 'origin/trunk' into hello-web 2021-09-20 23:11:54 +02:00
Folkert
a25d6c82b5 provide roc_panic from javascript 2021-09-20 23:11:24 +02:00
Folkert
8bab0f4637 emit *.wasm files if the backend is wasm32 2021-09-20 23:07:07 +02:00
Folkert
fe0746951d add dummy test for the hello-web example 2021-09-20 22:59:42 +02:00
Folkert
e319d1e758 make roc main return values, instead of write them into pointer 2021-09-19 22:05:48 +02:00
Folkert
f13e65ff8e more removal of roccallresult 2021-09-19 20:54:32 +02:00
Folkert
f3bf9bdbd0 add comment to fib host.zig 2021-09-19 18:50:52 +02:00
Folkert
c5eeaab2c2 remove callresult from cli examples 2021-09-19 18:34:42 +02:00
Brian Carroll
874bf80321 README corrections 2021-09-19 11:59:24 +01:00
Brian Carroll
11f8652ff6 Refactor hello-web example for possible future automated testing
For now there's a Node.js test that works, but we're not actually running it in CI,
and Node is not a dependency of the project.
2021-09-19 11:48:31 +01:00
Richard Feldman
cda29d0706 memcpy and memset are byte-aligned 2021-09-18 23:40:36 -04:00
Richard Feldman
fa8aa20112
Merge branch 'trunk' into integrate-linker 2021-09-18 23:17:52 -04:00
Brian Carroll
c20a2e5740 Hello web is working!! 2021-09-18 23:52:18 +01:00
Folkert
712dfb2702 simplify alignment calculation 2021-09-19 00:35:09 +02:00
Folkert
8429325eed make main have callconv C 2021-09-19 00:27:57 +02:00
Brian Carroll
e0af849518 Create hello-web example 2021-09-18 22:56:33 +01:00
Brendan Hansknecht
d8d147375d update fib gitignore 2021-09-16 20:19:28 -07:00
Brendan Hansknecht
8a30b4803a Merge branch 'trunk' into integrate-linker 2021-09-16 16:27:50 -07:00
Folkert
539d90b62e make gen tests expose mainForHost like LLVM backend 2021-09-16 21:41:23 +02:00
Folkert
692ddc4c2e fix comments 2021-09-16 21:33:42 +02:00
Brendan Hansknecht
e4b3402369 Create dummy lib as libapp.so 2021-09-15 15:16:39 -07:00
Folkert
d390239577 add cli test 2021-09-15 23:35:29 +02:00
Folkert
2de9856576 add fibonacci example 2021-09-15 23:34:27 +02:00
Brendan Hansknecht
da28b669bb Get zig host working 2021-09-15 11:45:44 -07:00
Brendan Hansknecht
e2411ea83f Add surgical linking to frontend with simple dummy lib creation 2021-09-14 23:06:22 -07:00
Folkert
52d36cbe72 fix closure weirdness (skipping or infinite looping) 2021-09-13 22:50:48 +02:00
Richard Feldman
e00c8b6837 Update effects example to reproduce bug 2021-09-12 10:17:56 -04:00
Folkert
1496ee2e70 use zig allocator, not libc, in host 2021-09-10 10:15:41 +02:00
Folkert
3ace5c7660 fix invalid usize 2021-09-09 21:36:25 +02:00
Folkert
8eb032aa62 fix lints in quicksort platform 2021-09-09 21:03:08 +02:00
Folkert
f8c3351c08 better debug messages from bench host 2021-09-04 13:26:31 +02:00
Folkert
0ba91f885c make benchmark host.o more 32-bit compatible 2021-09-04 01:38:35 +02:00
Folkert de Vries
fc8fafbac8
Merge branch 'trunk' into wasm-gen-test 2021-08-30 21:53:50 +02:00
Richard Feldman
e3292cff4e Drop some more references to needing C++ 2021-08-29 16:59:15 -04:00
Folkert
904861a1e2 ignore .ll and .bc in benchmarks 2021-08-28 18:01:11 +02:00