Commit Graph

184 Commits

Author SHA1 Message Date
Simon Forman 810a6afdbb Bring it inline with Nim version.
See https://git.sr.ht/~sforman/joytest
2021-04-09 17:32:51 -07:00
Simon Forman 49bcab2e91 Correct i combinator. 2021-04-09 17:13:09 -07:00
Simon Forman fbdd79a8db Integer division only please. 2021-04-09 17:04:54 -07:00
Simon Forman 8c65046420 Interesting that Nim checks type of first arg...
...before stack depth of second arg.
2021-04-09 16:59:06 -07:00
Simon Forman 227e8b124b Bringing it in line with Nim version. 2021-04-09 16:58:38 -07:00
Simon Forman 65b2b4a7e3 Switch back to spaces for indentation.
For better or worse, Python 3 won.  No need to be shitty about it, eh?
2021-04-09 16:16:34 -07:00
Simon Forman 6fc77a9a4a Simplify tokenizing, raise Unknown errors.
This brings the behaviour of Python Joy into congruence with Nim Joy.
2021-04-06 12:40:04 -07:00
Simon Forman b2c449dd66 Print Boolean values with lowercase intitial letters. 2021-04-06 11:41:39 -07:00
Simon Forman 14c16d469f Parse Boolean literals. 2021-04-06 11:34:46 -07:00
Simon Forman c00c6a4e32 Add a "quiet" mode.
This brings the Python Joy interpreter into better congruence with the
Nim interpreter for ease of automated testing.
2021-04-06 11:28:30 -07:00
Simon Forman 1cf82b8bcb Don't let module imports have side-effects.
The pretty printer module was inscribing the trace command as a side-
effect of importing it.
2020-12-19 23:53:04 -08:00
Simon Forman 5a2758b50d Derp! I forgot to modify the built-in defs to use "==". 2020-12-19 23:37:39 -08:00
Simon Forman aa43eb6684 Minor cleanup. 2020-12-18 16:10:45 -08:00
Simon Forman 40a627b5ca Let '==' separate names from definition bodies. 2020-12-17 22:06:28 -08:00
Simon Forman 90eef110d1 Drag-n-Drop stack util function. 2020-12-17 21:02:26 -08:00
Simon Forman 9d9fad6dc9 Fix a typo. 2020-11-23 09:06:36 -08:00
Simon Forman 5a91f04f1a Hmm... 2020-11-23 08:59:20 -08:00
Simon Forman 7017f6b6d1 Fix a typo. 2020-11-23 08:44:33 -08:00
Simon Forman ffabda0407 Update some of the docs. 2020-05-20 19:15:47 -07:00
Simon Forman 6a6b63bf62 Fix indentation in library docstrings. 2020-05-20 16:09:19 -07:00
Simon Forman ba0c24c39b Minor cleanup. 2020-05-20 15:34:30 -07:00
Simon Forman 8bd0e7ce0e Remove the types stuff et. al. 2020-05-19 13:01:37 -07:00
Simon Forman 95cd1e6cc6 round 2020-05-18 20:48:30 -07:00
Simon Forman 605891d6d8 Zero-or-one not one-or-more. 2020-05-18 20:45:04 -07:00
Simon Forman eb42220b69 Minor cleanup. 2020-05-18 20:37:58 -07:00
Simon Forman caa3cb9a1f Let's simplify. 2020-05-18 20:00:00 -07:00
Simon Forman d158157132 Rip out type code from the library. 2020-05-18 19:07:07 -07:00
Simon Forman 56da4690d0 Rebuild docs 2020-05-17 16:40:58 -07:00
Simon Forman ef6411205d Recognize scientific notation. 2020-05-17 16:10:56 -07:00
Simon Forman 2c75a0d858 Don't use `==` for definitions. 2020-05-17 16:02:43 -07:00
Simon Forman 98a3da138e Log reset is less wordy. 2020-05-17 12:58:26 -07:00
Simon Forman 40f8e4505d Slightly more efficient to just print the string. 2020-05-17 11:51:59 -07:00
Simon Forman 5dea9349f0 Make joy/gui/controllerlistbox.py compatible with Python 3. 2020-05-16 10:44:35 -07:00
Simon Forman b0676719a5 Python 3. 2020-05-16 09:52:56 -07:00
Simon Forman 26908cf23b It must be a BytesIO. 2020-05-15 07:35:16 -07:00
Simon Forman 76ac5eca94 Trying out a different dsiplay format. 2020-05-15 07:34:47 -07:00
Simon Forman 548709c87a Format lists properly. 2020-05-10 12:46:33 -07:00
Simon Forman e5bd03ac70 Try logging just the commands. 2020-05-10 12:18:34 -07:00
Simon Forman 354539c5f4 show_stack in case you close the stack window. 2020-05-10 10:42:10 -07:00
Simon Forman 48e0462610 Set the font on the listbox. 2020-05-10 10:35:42 -07:00
Simon Forman a3e49a75f0 Update view of stack at start. 2020-05-10 08:36:05 -07:00
Simon Forman 663753a770 Connect it up.
Inelegant but functional.
2020-05-10 08:28:49 -07:00
Simon Forman cc6516698b Bring in the listbox widget with drag.
You can drag items up and down to rearrange the list.
2020-05-09 19:09:23 -07:00
Simon Forman c326f335ed With i3 use separate windows again. 2020-05-09 17:31:40 -07:00
Simon Forman 07d94a1fad primrec combinator
Ticket #40375
2020-05-05 15:22:12 -07:00
Simon Forman 8604dccc24 Put the log and scratch text in the same window.
This is a step towards Ticket #40360 without going all the way.  You can
open additional viewer windows.  They are not connected by an
Oberon-style messaging system (yet.  It would be nice to use the Tk event
system for that.)

This way the log and the main/scratch/system-menu text are conceptually
unified in the (equivelent of "desktop") base metaphor of the system.
2020-05-02 12:51:29 -07:00
Simon Forman ddf063973c Trace command.
Don't print trace by default, instead a new `trace` combinator wirks like `i` and prints a trace.
2020-04-28 15:28:43 -07:00
Simon Forman 4704799c37 Rename primrec to tailrec. 2020-04-28 11:05:19 -07:00
Simon Forman 750f498512 Fixes #38237 Sort out stack/unstack/enstacken/disenstacken 2020-04-28 10:42:09 -07:00
Simon Forman fac2d2ae5f Switch the names of unstack and disenstacken.
Part of Ticket #38237

Still need to update the docs.
2020-04-28 10:28:30 -07:00