K. Lange
|
52427a5147
|
Add a basic 'with' statement
This is incomplete; it's missing the necessary plumbing to ensure __exit__
still gets called if the inner block returns or raises an exception. TODO
|
2021-01-09 12:46:59 +09:00 |
|
K. Lange
|
bb6b4d09f5
|
Move file pointer to File->_internal
|
2021-01-09 10:40:52 +09:00 |
|
K. Lange
|
13620e4d6d
|
Add File.readlines()
|
2021-01-09 10:27:36 +09:00 |
|
K. Lange
|
656942f612
|
Cleanup and useful builtins
|
2021-01-09 10:12:50 +09:00 |
|
K. Lange
|
a8f95c22a8
|
The red text is a bit poor
|
2021-01-09 07:32:43 +09:00 |
|
K. Lange
|
2b6840b07d
|
Add logo?
|
2021-01-08 23:12:16 +09:00 |
|
K. Lange
|
0149f7cfee
|
Add missing free() after calling repl
|
2021-01-08 22:18:56 +09:00 |
|
K. Lange
|
c405bc1bfa
|
Reserve stack space before directly passing stack to krk_dict_of in callValue
|
2021-01-08 22:18:04 +09:00 |
|
K. Lange
|
0599ad0775
|
Replace Makefile.static with a complicated combination of config options
|
2021-01-08 20:26:29 +09:00 |
|
K Lange
|
2bd0d93596
|
Add kuroko.argv
|
2021-01-08 19:05:11 +09:00 |
|
K Lange
|
2f7503cd0d
|
Switch to a more sensible default for module_paths
|
2021-01-08 18:29:29 +09:00 |
|
K. Lange
|
070b4bc356
|
Add tuple unpacking and 'if' conditions to list comprehensions
|
2021-01-08 18:00:49 +09:00 |
|
K. Lange
|
fc05327c42
|
Support unpacking tuples in for ... in ... loops.
|
2021-01-08 17:42:57 +09:00 |
|
K. Lange
|
8f9c1a4c1d
|
Switch C-style loops to semicolons before I regret having used commas
|
2021-01-08 17:14:42 +09:00 |
|
K. Lange
|
0f44617825
|
shorten builtin collection reprs; still want to rewrite these in C
|
2021-01-08 17:13:27 +09:00 |
|
K. Lange
|
ace8357c9a
|
List comprehensions should not set their subfunctions to methods; ensures 'self' is an upvalue
|
2021-01-08 16:53:46 +09:00 |
|
K. Lange
|
0d2e115c93
|
Make sure we rebuild everything on a header file change...
|
2021-01-08 16:53:17 +09:00 |
|
K. Lange
|
3735b9c16b
|
Raise KeyboardInterrupt on ^C
|
2021-01-08 16:40:43 +09:00 |
|
K. Lange
|
3f66b85757
|
Add os.environ (missing set: TODO)
|
2021-01-08 16:36:24 +09:00 |
|
K. Lange
|
0a9276863c
|
Move module_paths to 'kuroko' insted of __builtins__
|
2021-01-08 15:59:43 +09:00 |
|
K. Lange
|
596b552219
|
Add str.[l,r]strip() suite
|
2021-01-08 15:53:39 +09:00 |
|
K. Lange
|
80c307e12a
|
Remove src/*.o on 'make clean'
|
2021-01-08 12:15:53 +09:00 |
|
K. Lange
|
f21a959b14
|
Add instructions for static builds
|
2021-01-08 12:12:44 +09:00 |
|
K. Lange
|
0658d2f4dd
|
Flags and Makefile for static building
|
2021-01-08 10:59:03 +09:00 |
|
K. Lange
|
bd644026b0
|
Try to enable a Github Actions workflow
|
2021-01-08 08:49:08 +09:00 |
|
K. Lange
|
cdd3272d0e
|
Accept tabs as being equivalent to eight spaces, but no mixing on a single line
|
2021-01-08 07:05:33 +09:00 |
|
K. Lange
|
ee518f9643
|
Fix two symbols missing namespacing prefixes
|
2021-01-08 06:49:27 +09:00 |
|
K Lange
|
44f69a78c2
|
Fix leak in _string_split
|
2021-01-07 23:18:14 +09:00 |
|
K Lange
|
3823270a8b
|
Set interpreter rpath to $ORIGIN
|
2021-01-07 22:52:38 +09:00 |
|
K Lange
|
a1fbaecabd
|
Readme and doc updates
|
2021-01-07 22:45:52 +09:00 |
|
K Lange
|
f9832be57c
|
Typos and such
|
2021-01-07 20:42:25 +09:00 |
|
K Lange
|
5e93d9c3aa
|
Cleanup interpreter flags
|
2021-01-07 20:22:49 +09:00 |
|
K Lange
|
4d31f5dc0e
|
Pretend a tab is one space, just to begrudgingly allow them.
|
2021-01-07 20:22:34 +09:00 |
|
K Lange
|
2d012e4126
|
Add more help information and some startup text to the repl
|
2021-01-07 20:00:57 +09:00 |
|
K Lange
|
330f697800
|
Embed version information in a 'kuroko' module (~= Python's 'sys', but I want to keep that name available for Python compatibility)
|
2021-01-07 20:00:31 +09:00 |
|
K Lange
|
99cb7c592f
|
closure.__doc__ should be a dynamic field, not a method...
|
2021-01-07 19:59:47 +09:00 |
|
K. Lange
|
5df14689bf
|
Tab completion for basic fields/methods in the repl
|
2021-01-07 18:47:36 +09:00 |
|
K. Lange
|
9eb5fb1cad
|
Add ternary (a) if (cond) else (b)
|
2021-01-07 14:04:42 +09:00 |
|
K. Lange
|
03ead15eaf
|
Fix segfault on compile failure
|
2021-01-07 12:34:44 +09:00 |
|
K. Lange
|
21760c1f2d
|
traceback ordering is in fact most-recent-last just like cpython...
|
2021-01-07 12:20:53 +09:00 |
|
K. Lange
|
0c4c4c95f9
|
Add module class with nice repr
|
2021-01-07 12:13:47 +09:00 |
|
K. Lange
|
ecb5f1e4ec
|
Attach __doc__ to modules, default to None (but still set) if missing
|
2021-01-07 11:30:10 +09:00 |
|
K. Lange
|
11e6b79e49
|
Remove 'export' keyword
|
2021-01-07 11:15:57 +09:00 |
|
K. Lange
|
8a1de6c4d2
|
Assign __main__ as name of executed scripts
|
2021-01-07 10:58:04 +09:00 |
|
K. Lange
|
4266bf60e7
|
Attach globals to callframes and get rid of vm.globals
|
2021-01-07 10:52:29 +09:00 |
|
K. Lange
|
fbf4dda818
|
Fix tracking what should be 'global' through function calls?
|
2021-01-07 10:39:09 +09:00 |
|
K. Lange
|
902d2222b5
|
Make modules work like in Python. TODO: module class for better repring
|
2021-01-07 09:50:58 +09:00 |
|
K. Lange
|
e19e45c59b
|
Simplify builtins.c generation
|
2021-01-07 08:39:46 +09:00 |
|
K. Lange
|
d6525a1f32
|
Add tuple.__iter__, internalize list.__iter__
|
2021-01-07 08:27:40 +09:00 |
|
K. Lange
|
5d01aae45b
|
Show local variable names, when available, in stack dumps
|
2021-01-06 22:09:27 +09:00 |
|