Commit graph

289 commits

Author SHA1 Message Date
Remko Tronçon
cec3595dbf Clean up comments 2022-05-28 09:25:55 +02:00
Remko Tronçon
87e805ad9e Clean up dictionary entries 2022-05-28 09:00:59 +02:00
Remko Tronçon
c3e919cd2c Fix expression 2022-05-27 22:42:37 +02:00
Remko Tronçon
7efbba2aea Update standard testsuite 2022-05-27 20:43:35 +02:00
Remko Tronçon
4d0c67f60a Remove unused base pointers 2022-05-27 11:52:09 +02:00
Remko Tronçon
067a12301d Documentation updates 2022-05-26 21:29:23 +02:00
Remko Tronçon
534c4a3bdb WORDS: Remove accidental spaces after hidden words 2022-05-26 20:48:18 +02:00
Remko Tronçon
8c9a9426a2 Update README.md 2022-05-26 20:27:08 +02:00
Remko Tronçon
d40dcc1b4d standalone: Add wasmer to makefile 2022-05-26 19:44:26 +02:00
Remko Tronçon
e8202a153d standalone: Implement KEY 2022-05-26 14:06:15 +02:00
Remko Tronçon
7a1e7de085 github: Package standalone 2022-05-26 13:08:03 +02:00
Remko Tronçon
77a4df1609 github: Standalone build 2022-05-26 11:43:01 +02:00
Remko Tronçon
e5b1e5e892 standalone: Switch to wasmtime 2022-05-26 09:24:17 +02:00
Remko Tronçon
177c2808b7 standalone: Switch to wasm-c-api 2022-05-26 08:48:22 +02:00
Remko Tronçon
cc284482ea standalone: Initial version using wamr 2022-05-26 08:48:22 +02:00
Remko Tronçon
7a6a94d7d5 Reorder words 2022-05-25 16:12:45 +02:00
Remko Tronçon
42eeb5b377 Remove unreachable instructions 2022-05-25 15:52:25 +02:00
Remko Tronçon
13a6a612df Move standard testsuite 2022-05-25 15:50:39 +02:00
Remko Tronçon
6738aff33e interpret: Add silent mode 2022-05-24 22:50:42 +02:00
Remko Tronçon
236ad04aa5 Support reading long strings 2022-05-24 21:58:13 +02:00
Remko Tronçon
ff84035919 Update documentation 2022-05-23 21:49:57 +02:00
Remko Tronçon
ce54272eb6 Remove unused table index from loader 2022-05-23 21:42:14 +02:00
Remko Tronçon
532d9e1f34 Grow table from within WebAssembly 2022-05-23 21:37:39 +02:00
Remko Tronçon
308e7c3077 Cleanup 2022-05-23 21:27:19 +02:00
Remko Tronçon
f90b8062e1 Replace memcopy and memset by memory bulk operations 2022-05-23 20:54:43 +02:00
Remko Tronçon
c013b2493d Revert "Grow table from within WebAssembly"
It doesn't work in Node 16 (used by GitHub actions)

This reverts commit 2747458242.
2022-05-23 20:08:47 +02:00
Remko Tronçon
2747458242 Grow table from within WebAssembly 2022-05-23 20:08:39 +02:00
Remko Tronçon
fd6a03cc8d getc->read 2022-05-22 16:56:39 +02:00
Remko Tronçon
ccd49c2b12 ACCEPT: Implement in terms of KEY 2022-05-22 09:53:40 +02:00
Remko Tronçon
fca7a90869 readChar: Remove unreachable 2022-05-22 09:53:40 +02:00
Remko Tronçon
b36f236c61 QUIT: Enter interpretation state 2022-05-21 20:50:43 +02:00
Remko Tronçon
96490e1915 WORDS: Use type 2022-05-21 20:04:54 +02:00
Remko Tronçon
1a29e17a24 Print undefined word 2022-05-21 19:58:13 +02:00
Remko Tronçon
eded367819 thurtle: Refactor 2022-05-21 13:00:08 +02:00
Remko Tronçon
f2e37ba093 thurtle: Document query parameters 2022-05-21 11:16:54 +02:00
Remko Tronçon
f4484be2ef thurtle: Style tweaks 2022-05-21 11:03:40 +02:00
Remko Tronçon
cce720ea73 thurtle: Clean up stack in examples 2022-05-21 10:53:45 +02:00
Remko Tronçon
b701efd803 thurtle: Share & Export 2022-05-20 20:30:56 +02:00
Remko Tronçon
69bb024a5f thurtle: Change default program 2022-05-20 08:37:10 +02:00
Remko Tronçon
bc6d68c447 thurtle: Batch draw 2022-05-20 08:34:06 +02:00
Remko Tronçon
108de077c9 thurtle: Tweak plant 2022-05-19 23:27:33 +02:00
Remko Tronçon
322dff1997 thurtle: Add fractals 2022-05-19 21:34:49 +02:00
Remko Tronçon
d6f2418248 thurtle: Add Load/Save 2022-05-18 21:10:26 +02:00
Remko Tronçon
84a06ac1ba thurtle: Add syntax highlighting 2022-05-18 21:08:11 +02:00
Remko Tronçon
9ec19dbc15 thurtle: Add SETXY & SETROTATION 2022-05-18 21:04:38 +02:00
Remko Tronçon
47b83fc610 thurtle: Tweak examples 2022-05-15 21:57:53 +02:00
Remko Tronçon
629707587a Make dictionary entries consistent 2022-05-15 21:01:03 +02:00
Remko Tronçon
f11728bec8 Make dictionary entries consistent 2022-05-15 19:48:00 +02:00
Remko Tronçon
e6f0fe0841 Make dictionary entries consistent 2022-05-15 17:07:44 +02:00
Remko Tronçon
77fb0be735 Remove redundant string 2022-05-15 16:40:01 +02:00
Remko Tronçon
168c9784d2 Put word parse region on a fixed offset after HERE 2022-05-15 12:52:44 +02:00
Remko Tronçon
eedf29d63c Put pictured output region on a fixed offset after HERE 2022-05-15 09:28:23 +02:00
Remko Tronçon
0ccc44a741 thurtle: Add GitHub link 2022-05-15 09:25:53 +02:00
Remko Tronçon
c4c83cd872 thurtle: Tweak examples 2022-05-15 08:00:57 +02:00
Remko Tronçon
65c375b0d9 thurtle: Better flower 2022-05-14 21:46:25 +02:00
Remko Tronçon
6402001a8d thurtle: Move about text to header 2022-05-14 21:37:14 +02:00
Remko Tronçon
2f99a79459 thurtle: Add 2 spiral examples 2022-05-14 21:23:31 +02:00
Remko Tronçon
90ccc78ead Fix NIP & TUCK 2022-05-14 21:23:31 +02:00
Remko Tronçon
0a7b49d29d examples: Fix stack comment 2022-05-14 20:05:01 +02:00
Remko Tronçon
18fcdc6b58 READM: Documentation update 2022-05-14 08:56:27 +02:00
Remko Tronçon
5773010948 web: Call async callbacks with WAForth object 2022-05-14 08:51:25 +02:00
Remko Tronçon
3c40468de6 web: Add bindAsync 2022-05-14 08:31:08 +02:00
Remko Tronçon
eab641d0d1 examples: Update fetch example 2022-05-14 08:01:54 +02:00
Remko Tronçon
5cbbd733ff web: Add pushString() 2022-05-14 07:40:48 +02:00
Remko Tronçon
3d3092a24e examples: Add fetch example 2022-05-13 22:02:28 +02:00
Remko Tronçon
164d7bee0f web: Expose push/pop on main object 2022-05-13 21:46:55 +02:00
Remko Tronçon
79ab8c8e7f thurtle: Use JSX 2022-05-12 21:10:04 +02:00
Rick Carlino
9e30411d1b Add documentation comment to WAForth#read. 2022-05-12 07:27:46 +02:00
Remko Tronçon
8f37f588c1 thurtle: Fix link 2022-05-10 22:47:10 +02:00
Remko Tronçon
21eb8d7073 build: Set HTML titles in index 2022-05-10 22:45:17 +02:00
Remko Tronçon
b1546ad4a3 Thurtle 2022-05-10 22:41:43 +02:00
Remko Tronçon
01fcb9e2a8 build: Resolve waforth import from examples 2022-05-08 15:32:20 +02:00
Remko Tronçon
75c6490dc5 EXECUTE: Do a character load instead of full load 2022-05-08 14:33:20 +02:00
Remko Tronçon
893d093968 Replace BASE,STATE,>IN with Forth variables 2022-05-08 14:31:43 +02:00
Remko Tronçon
945cc3bede compiler: Fix compilation of BEGIN+WHILE+WHILE+ELSE combinations 2022-05-07 17:32:00 +02:00
Remko Tronçon
860618af3e compiler: Use TOS to store branch nesting 2022-05-07 16:48:56 +02:00
Remko Tronçon
721d4912b3 compiler: Fix branch nesting of begin 2022-05-07 12:21:41 +02:00
Remko Tronçon
a11c7a10ea Make onEmit log to console by default 2022-05-06 21:47:00 +02:00
Remko Tronçon
f252014644 Documentation 2022-05-05 21:32:00 +02:00
Remko Tronçon
d7b80a49f0 Documentation 2022-05-05 21:15:35 +02:00
Remko Tronçon
f1160105cd Simplify onEmit API 2022-05-05 20:52:18 +02:00
Remko Tronçon
c583565528 build: Fix lint error 2022-05-05 20:45:58 +02:00
Remko Tronçon
a6d71029dc Support calling JS from Forth
Initial attempt at an API.

Resolves: #13
2022-05-05 20:19:39 +02:00
Remko Tronçon
674dce6514 Detect stack underflow after interpreting 2022-05-03 21:52:27 +02:00
Remko Tronçon
85efb6262e Improve sieve-raw-wasm 2022-05-03 21:38:07 +02:00
Remko Tronçon
64357b336f Name WAForth module 2022-05-03 21:37:58 +02:00
Remko Tronçon
0b1c7d2a24 benchmarks: Add C and JS version 2022-05-01 22:52:49 +02:00
Remko Tronçon
63841b65ab sieve-vanilla->sieve-raw-wasm 2022-05-01 20:34:38 +02:00
Remko Tronçon
9e0705c9cd Cleanup 2022-05-01 17:47:08 +02:00
Remko Tronçon
fffd982121 Remove sieve_direct 2022-05-01 17:09:14 +02:00
Remko Tronçon
f5df37a12f Remove obsolete environment queries 2022-05-01 16:58:33 +02:00
Remko Tronçon
ed469cbef4 <#, #>, #, #S, SIGN, HOLD 2022-05-01 16:56:20 +02:00
Remko Tronçon
ba5bff8a99 ENVIRONMENT? 2022-05-01 11:37:35 +02:00
Remko Tronçon
bed0d392c8 Refactor string comparison 2022-05-01 10:45:53 +02:00
Remko Tronçon
38ed36b337 Cleanup 2022-05-01 09:40:17 +02:00
Remko Tronçon
5d687e8253 >NUMBER 2022-04-30 23:25:23 +02:00
Remko Tronçon
504ae3e93e Fix FM/MOD + Implement SM/REM, UM/MOD. 2022-04-30 23:25:23 +02:00
Remko Tronçon
c798ad8826 compiler: Repace get+set of TOS with tee 2022-04-30 12:46:42 +02:00
Remko Tronçon
fdda5b5009 do/loop: Use diff as index
This avoids an extra local per loop, avoids a branch
in +LOOP, and fixes handling of large unsigned integers as loop indices.
2022-04-30 12:46:26 +02:00
Remko Tronçon
a07772536c tests: Enable parts of test suite 2022-04-26 22:46:54 +02:00