sforman
d285d13290
egad
2023-07-30 16:14:52 -07:00
sforman
e9cee15c64
weird symbols in table
2023-07-30 16:03:17 -07:00
sforman
c23a3a5317
mdtableeeeee
2023-07-30 16:01:09 -07:00
sforman
a38fc62074
MD TABLE!?
2023-07-30 15:54:07 -07:00
sforman
540bdd97bd
Sort out the and/or/... ops.
2023-07-30 15:51:29 -07:00
sforman
c0fa319c9c
Crude type checking.
...
I forget why I was doing "not not" so I made it a little more clear. In
practice this is regressive: The built-in "isnt_bool" function should
be in the dictionary? Or prohibit type checking and let the bugs flow?
Rely on inference to prevent bugs that would pass the non-checking
versions of the functions? Hmm...
2023-07-30 15:42:55 -07:00
sforman
373666bf39
Name Boolean ops.
...
So they don't overshadow the defs for the short-circuiting combinators.
2023-07-30 15:41:58 -07:00
sforman
1089ab7c24
Error type (not just a string.)
...
This is mostly for fun, but I bet it comes in handy, eh?
At the very least, it's a nice catalog of the possible errors that the
basic Joy system might encounter.
2023-07-30 14:59:09 -07:00
sforman
850bc3a500
type alias JoyFunction
2023-07-30 14:27:27 -07:00
sforman
64d9bb75a4
Format.
2023-07-30 07:47:26 -07:00
sforman
9963a73322
inscribe, definitions.
2023-07-30 07:45:06 -07:00
sforman
200c390fd5
Initialize dict with defs.
...
Just sqr for now, but it shows that it works.
I would like to return Results from add_def but it makes using foldl
slightly tricky, not a lot, just slightly, and my brainpower is low at
the mo'.
2023-07-29 17:10:45 -07:00
sforman
edfd7c526f
Look up words in the dictionary.
...
If they are not built-in, which means you can't "shadow" built-ins with
"inscribe", which may or may not turn out to be what we want?
2023-07-29 12:35:47 -07:00
sforman
4acdec71ed
Thread the dictionary through the call stack.
2023-07-29 12:30:22 -07:00
sforman
4d6230e01d
Empty string is not an unknown word.
2023-07-29 12:11:43 -07:00
sforman
9220361871
Gotta keep a Dict around.
2023-07-29 12:09:08 -07:00
sforman
b1d4c3c5b8
Logical ops.
2023-07-29 11:37:07 -07:00
sforman
2c9d5cf4bf
Left- and Right-shift.
2023-07-29 11:32:22 -07:00
sforman
a69b988684
Comparison ops.
2023-07-29 11:07:50 -07:00
sforman
36dc5b619f
loop
2023-07-29 10:44:51 -07:00
sforman
8fb48008cd
branch
2023-07-29 10:38:12 -07:00
sforman
ed8f8f9edf
dip
2023-07-29 10:28:31 -07:00
sforman
9c381f0e8f
i
2023-07-29 10:23:06 -07:00
sforman
99a5fd93b1
truthy
...
I have to check into this: the Python version has "bool" and no
"truthy".
2023-07-29 10:19:39 -07:00
sforman
7c9ea764ea
swap
2023-07-29 10:09:40 -07:00
sforman
fcdf916013
stack, swaack
2023-07-29 10:00:16 -07:00
sforman
c50f2a7541
pop
2023-07-29 09:55:28 -07:00
sforman
4a0fce2492
first, rest
2023-07-29 09:53:00 -07:00
sforman
b50be3b64b
dup
2023-07-29 09:22:26 -07:00
sforman
eb8b282bc2
cons
2023-07-29 09:17:27 -07:00
sforman
70c5223319
clear, concat
2023-07-29 09:06:14 -07:00
sforman
af882e2be4
Minor cleanup.
2023-07-29 08:57:58 -07:00
sforman
e9f971460f
Type alias JList
2023-07-29 08:49:31 -07:00
sforman
9917a2cfba
Refactor pop_int.
...
I don't like passing the stack through isnt_int but that let's you chain
with andThen.
There's probably a clever or idiomatic way to not do that and couple the
stack to the result without passing it through the type checker function
but I don't know what it is right now, and this works.
2023-07-29 07:51:31 -07:00
sforman
b6b3acf350
Binary Math Ops
2023-07-29 07:32:56 -07:00
sforman
dc065d1943
I don't think andThen helps here?
2023-07-29 07:19:08 -07:00
sforman
48f6e78196
I can add integers!
2023-07-29 06:54:15 -07:00
sforman
5315edbe83
Parsing working.
...
Modeled on the OCaml code.
2023-07-28 21:51:34 -07:00
sforman
9d57545533
A start on Joy types.
2023-07-28 15:04:35 -07:00
sforman
590a5b207c
In Elm.
2023-07-28 14:18:12 -07:00
sforman
23504f6ede
Use Python as SHELL in Makefile.
...
It's a simple task, but I'm not up on my CLI tools, so I went with
Python instead of sh. The split command doesn't have '-p' switch on
Ubuntu. (I'm using Ubuntu on this laptop because it can correctly
configure the WiFi and the laptop has no ethernet port.)
2023-07-27 10:32:45 -07:00
sforman
f60c138a2c
minor cleanup
2023-07-27 09:55:26 -07:00
sforman
08262ac861
minor cleanup
2023-07-27 09:55:02 -07:00
sforman
ef504aa1c4
Rename joy_to_ast to parser.
2023-07-27 09:19:12 -07:00
sforman
0a1b150eb5
Working on the docs.
...
The nbconvert tool has different behaviour now, so the HTML versions of
the notebooks look different.
2023-07-27 08:55:43 -07:00
sforman
9ca9239738
Minor work on the new site.
...
I'm moving away from OSDN, there have been a few technical issues
recently.
2023-07-26 20:47:57 -07:00
sforman
ae9da29921
Bold.
2023-07-26 16:34:03 -07:00
sforman
33fe5c688b
Minor edits.
2023-07-26 16:32:30 -07:00
sforman
3f9f558ebb
the BinInt zero vanished?
2023-07-25 22:01:55 -07:00
sforman
bc5af441dc
Minor edits.
2023-07-25 21:46:36 -07:00