OSDN Git Service
Simon Forman [Sun, 10 Nov 2019 04:19:15 +0000 (20:19 -0800)]
Pass through label.
Simon Forman [Sun, 10 Nov 2019 02:39:39 +0000 (18:39 -0800)]
if_literal and lookup
Simon Forman [Sun, 10 Nov 2019 02:28:01 +0000 (18:28 -0800)]
incr stack
Really decr, but I'm abstracting.
Simon Forman [Sun, 10 Nov 2019 02:15:56 +0000 (18:15 -0800)]
Refactoring and cleanup.
Simon Forman [Sun, 10 Nov 2019 02:02:07 +0000 (18:02 -0800)]
load
Simon Forman [Sat, 9 Nov 2019 23:20:06 +0000 (15:20 -0800)]
Bleah.
Simon Forman [Sat, 9 Nov 2019 23:12:44 +0000 (15:12 -0800)]
Base address in unpack_pair.
Simon Forman [Sat, 9 Nov 2019 23:03:17 +0000 (15:03 -0800)]
unpack_pair
Simon Forman [Sat, 9 Nov 2019 22:02:18 +0000 (14:02 -0800)]
Minor refactor.
Simon Forman [Sat, 9 Nov 2019 21:59:06 +0000 (13:59 -0800)]
Refactoring, with oddball quoting "symbols".
Simon Forman [Sat, 9 Nov 2019 21:42:14 +0000 (13:42 -0800)]
That works nicely, again.
Simon Forman [Sat, 9 Nov 2019 21:34:51 +0000 (13:34 -0800)]
Convert to ? DCG and it's macro-time!
Simon Forman [Sat, 9 Nov 2019 20:14:51 +0000 (12:14 -0800)]
I think that does it for cons.
Offsets in pair records can be negative.
Simon Forman [Sat, 9 Nov 2019 20:03:13 +0000 (12:03 -0800)]
That's the mainloop converted to permit negative offsets.
Simon Forman [Sat, 9 Nov 2019 19:27:29 +0000 (11:27 -0800)]
Minor cleanup, bug fixes.
Simon Forman [Fri, 8 Nov 2019 23:24:09 +0000 (15:24 -0800)]
Minor bugfix.
asr not ror.
Simon Forman [Fri, 8 Nov 2019 22:06:28 +0000 (14:06 -0800)]
Cons
Simon Forman [Fri, 8 Nov 2019 16:08:53 +0000 (08:08 -0800)]
Just do it in asm.
Simon Forman [Fri, 8 Nov 2019 04:21:26 +0000 (20:21 -0800)]
hmm...
Simon Forman [Fri, 8 Nov 2019 01:25:04 +0000 (17:25 -0800)]
WIth push2 finished that's the mainloop converted.
Simon Forman [Fri, 8 Nov 2019 00:28:28 +0000 (16:28 -0800)]
lookup
Simon Forman [Fri, 8 Nov 2019 00:15:41 +0000 (16:15 -0800)]
if_literal
Simon Forman [Thu, 7 Nov 2019 23:53:07 +0000 (15:53 -0800)]
A start on converting the mainloop.
Simon Forman [Thu, 7 Nov 2019 22:57:41 +0000 (14:57 -0800)]
Take two on the compiler.
Simon Forman [Thu, 7 Nov 2019 15:55:01 +0000 (07:55 -0800)]
Minor cleanup.
Simon Forman [Thu, 7 Nov 2019 15:54:04 +0000 (07:54 -0800)]
Modify error reporting a lil; words word.
Simon Forman [Thu, 7 Nov 2019 15:53:21 +0000 (07:53 -0800)]
Definition of ii combinator.
ii == [dip] dupdip i
a [F] ii
--------------
F a F
Simon Forman [Thu, 7 Nov 2019 15:43:21 +0000 (07:43 -0800)]
Call for_serial/2
Simon Forman [Thu, 22 Aug 2019 22:45:24 +0000 (15:45 -0700)]
Using partial deduction to inline literals, functions, and combinators.
Simon Forman [Wed, 21 Aug 2019 05:00:27 +0000 (22:00 -0700)]
minor cleanup
Simon Forman [Tue, 20 Aug 2019 05:02:06 +0000 (22:02 -0700)]
small func recognizes [] and [X].
Simon Forman [Sun, 18 Aug 2019 23:59:31 +0000 (16:59 -0700)]
Rename bar to korf and some docs.
Simon Forman [Sun, 18 Aug 2019 19:17:37 +0000 (12:17 -0700)]
minor cleanup
Simon Forman [Sun, 18 Aug 2019 18:47:48 +0000 (11:47 -0700)]
reintroduce definition of fork; it doesn't shadow func(fork, ...).
Simon Forman [Sun, 18 Aug 2019 18:09:36 +0000 (11:09 -0700)]
read child output after local thun/3
Simon Forman [Sun, 18 Aug 2019 17:53:25 +0000 (10:53 -0700)]
truly fork, sort of
Simon Forman [Tue, 13 Aug 2019 18:58:31 +0000 (11:58 -0700)]
minor cleanup
Simon Forman [Tue, 13 Aug 2019 18:51:41 +0000 (11:51 -0700)]
Minor cleanup.
Simon Forman [Tue, 13 Aug 2019 18:48:08 +0000 (11:48 -0700)]
Move DCG stuff to own file.
Simon Forman [Tue, 13 Aug 2019 18:29:49 +0000 (11:29 -0700)]
Parse ints; move line/{1,2} to main.pl.
Simon Forman [Tue, 13 Aug 2019 18:24:28 +0000 (11:24 -0700)]
Parse floating point numbers.
Simon Forman [Tue, 13 Aug 2019 05:29:09 +0000 (22:29 -0700)]
minor cleanup
Simon Forman [Tue, 13 Aug 2019 04:59:19 +0000 (21:59 -0700)]
minor cleanup
Simon Forman [Tue, 13 Aug 2019 04:29:26 +0000 (21:29 -0700)]
Numbers can be followed by space or [.
Simon Forman [Tue, 13 Aug 2019 04:13:11 +0000 (21:13 -0700)]
Parse negative numbers.
Simon Forman [Tue, 13 Aug 2019 04:08:35 +0000 (21:08 -0700)]
swapd function
Simon Forman [Tue, 13 Aug 2019 04:08:17 +0000 (21:08 -0700)]
assert_defs/1 got upset about not finding combo/5
Simon Forman [Tue, 13 Aug 2019 03:59:02 +0000 (20:59 -0700)]
Minor cleanup of the parser.
Simon Forman [Tue, 13 Aug 2019 03:12:35 +0000 (20:12 -0700)]
rework parser DCGs
Simon Forman [Tue, 13 Aug 2019 02:25:13 +0000 (19:25 -0700)]
Oops! Regression.
Simon Forman [Tue, 13 Aug 2019 02:17:15 +0000 (19:17 -0700)]
minor cleanup
Simon Forman [Tue, 13 Aug 2019 02:09:49 +0000 (19:09 -0700)]
swoncat and fiddling with parser.
Simon Forman [Mon, 12 Aug 2019 04:30:02 +0000 (21:30 -0700)]
Experiment with putting logic vars on the stack.
Simon Forman [Mon, 12 Aug 2019 03:45:49 +0000 (20:45 -0700)]
Remove a cut that sucked.
Simon Forman [Mon, 12 Aug 2019 02:57:28 +0000 (19:57 -0700)]
unstack, least_fraction
Simon Forman [Mon, 12 Aug 2019 02:41:11 +0000 (19:41 -0700)]
Copyright notices.
Simon Forman [Mon, 12 Aug 2019 02:35:05 +0000 (19:35 -0700)]
The sqrt/1 predicate wasn't working.
Simon Forman [Mon, 12 Aug 2019 01:45:57 +0000 (18:45 -0700)]
Multifile func/3.
Simon Forman [Mon, 12 Aug 2019 00:48:29 +0000 (17:48 -0700)]
Build math & comparision functions.
Simon Forman [Mon, 12 Aug 2019 00:00:38 +0000 (17:00 -0700)]
Clean up REPL formatting.
Simon Forman [Sun, 11 Aug 2019 22:12:56 +0000 (15:12 -0700)]
Don't shadow funcs and combos.
Simon Forman [Sun, 11 Aug 2019 21:56:20 +0000 (14:56 -0700)]
Don't shadow funcs & combos.
Simon Forman [Sun, 11 Aug 2019 21:51:13 +0000 (14:51 -0700)]
Extract mainloop to own file.
Simon Forman [Sun, 11 Aug 2019 05:21:57 +0000 (22:21 -0700)]
Use double-quoted string for codes.
Simon Forman [Sun, 11 Aug 2019 05:07:17 +0000 (22:07 -0700)]
cleanup old files
Simon Forman [Sun, 11 Aug 2019 05:03:44 +0000 (22:03 -0700)]
Build defs.pl from defs.txt.
Simon Forman [Sun, 11 Aug 2019 04:46:48 +0000 (21:46 -0700)]
build defs.pl
Simon Forman [Sun, 11 Aug 2019 04:45:59 +0000 (21:45 -0700)]
build defs.pl
Simon Forman [Sun, 11 Aug 2019 03:57:11 +0000 (20:57 -0700)]
Move parser to own file.
Simon Forman [Sun, 11 Aug 2019 03:42:48 +0000 (20:42 -0700)]
map combo
Simon Forman [Sun, 11 Aug 2019 03:12:41 +0000 (20:12 -0700)]
Bring in funcs and combos.
Simon Forman [Sun, 11 Aug 2019 03:06:12 +0000 (20:06 -0700)]
Omit Prolog toplevel.
Simon Forman [Sun, 11 Aug 2019 03:03:52 +0000 (20:03 -0700)]
Do not need thses files.
Simon Forman [Sun, 11 Aug 2019 02:57:00 +0000 (19:57 -0700)]
Fold in parser, main loop, and support.
Simon Forman [Sun, 11 Aug 2019 02:25:48 +0000 (19:25 -0700)]
Rename foo to thun.
Simon Forman [Sat, 10 Aug 2019 19:19:09 +0000 (12:19 -0700)]
Make a version for GNU Prolog compiler.
Simon Forman [Fri, 9 Aug 2019 23:58:34 +0000 (16:58 -0700)]
Also don't shadow combinators.
(I realized that the way defs are parsed now means that each def
(but the last) is first asserted with the wrong definition expression
(it includes the symbol of the following definition at the end) and
then the parser figures out that there's another defintion following
and re-asserts the correct expression. It would be nice to fix that
but it's kind of a PITA. I used to build a list of definitions and
then assert them all at the end. For now there aren't enough defs to
justify the extra work.
Simon Forman [Fri, 9 Aug 2019 23:53:40 +0000 (16:53 -0700)]
Prevent definitions from shadowing functions.
Simon Forman [Fri, 9 Aug 2019 23:37:33 +0000 (16:37 -0700)]
Demo grow/shrink.
Simon Forman [Fri, 9 Aug 2019 16:28:15 +0000 (09:28 -0700)]
Some trailing whitespace or something.
Simon Forman [Fri, 9 Aug 2019 14:26:37 +0000 (07:26 -0700)]
A few more functions.
reverse, shift, shunt, take, split_at
Simon Forman [Thu, 8 Aug 2019 06:36:38 +0000 (23:36 -0700)]
merge
Simon Forman [Thu, 8 Aug 2019 06:28:28 +0000 (23:28 -0700)]
grow/shrink as DCGs.
Simon Forman [Wed, 7 Aug 2019 18:40:49 +0000 (11:40 -0700)]
Integer DCGs that work in both directions.
Simon Forman [Sun, 4 Aug 2019 16:28:01 +0000 (09:28 -0700)]
loop combinator handles ambiguity.
remove some old notes.
Simon Forman [Sun, 4 Aug 2019 02:02:24 +0000 (19:02 -0700)]
Move is_numerical() to joy.gui.utils.
Simon Forman [Sun, 4 Aug 2019 02:01:45 +0000 (19:01 -0700)]
Experiment in formatting stacks for output.
Tracing, sort of...
Simon Forman [Sun, 4 Aug 2019 02:01:00 +0000 (19:01 -0700)]
Minor refactor.
crbo/4 to to_fixed_point/3
Simon Forman [Sun, 4 Aug 2019 00:56:25 +0000 (17:56 -0700)]
Gnarly fun with metaprogramming.
Simon Forman [Sat, 3 Aug 2019 01:30:43 +0000 (18:30 -0700)]
Get the path separator right on windows.
It used to use: C:\Users\sforman/.joypy
which worked, but ew.
Simon Forman [Mon, 22 Jul 2019 17:25:34 +0000 (10:25 -0700)]
Comparisions are literals too.
Also a bunch of reformatting.
Maybe I can modify the term_expansion/2 to also write the literal/1 clauses for math and comps?
Simon Forman [Mon, 22 Jul 2019 17:04:32 +0000 (10:04 -0700)]
Bits of formatting.
Simon Forman [Mon, 22 Jul 2019 01:48:11 +0000 (18:48 -0700)]
Minor cleanup.
Simon Forman [Mon, 22 Jul 2019 00:56:34 +0000 (17:56 -0700)]
Remove write_state/5.
Simon Forman [Mon, 22 Jul 2019 00:55:19 +0000 (17:55 -0700)]
Build a list of the moves taken.
Simon Forman [Mon, 22 Jul 2019 00:25:22 +0000 (17:25 -0700)]
Refactor a bit.
Simon Forman [Sun, 21 Jul 2019 21:13:48 +0000 (14:13 -0700)]
Assert definitions as they are read.
Instead of building a list then asserting them all after parsing.
Simon Forman [Sun, 21 Jul 2019 18:50:27 +0000 (11:50 -0700)]
Messing with TLA+ in Prolog.
Simon Forman [Sun, 21 Jul 2019 15:28:56 +0000 (08:28 -0700)]
Implement map combinator.
Simon Forman [Sun, 21 Jul 2019 14:32:20 +0000 (07:32 -0700)]
Tiny edits. Almost nothing.