457 Commits

Author SHA1 Message Date
K. Lange
854a12f68b Fix up some threading gc stuff before diving into real debugging 2021-02-09 21:34:02 +09:00
K. Lange
fe9af7c274 cmd.exe actually does work with the Windows build 2021-02-09 19:11:35 +09:00
K. Lange
6f95124bcd Threading
Don't be deceived by its size: this commit is mostly a bunch of
sed replacements to move thread state out of "vm" and introduce
a thread-local "KrkThreadState" object to hold stack pointers and
call frames for individual threads.

Threading support is incomplete and there's almost definitely a
bunch of really easy ways to break everything just by allocating
objects, but really simple stuff like carefully modifying a
a list of ints should work okay.

The README has been rewritten to remove code samples, which have
moved to the Wiki (as has the section on integrating with C).

Some other stuff has also moved around because the threading changes
necessitated a major API break anyway, so I also took the time to
fix some ABI issues.
2021-02-09 18:51:09 +09:00
K. Lange
f2747a07e4 Add more things to os module 2021-02-09 11:14:11 +09:00
K. Lange
a51619cb0d Cleanup os module 2021-02-09 11:00:45 +09:00
K. Lange
57b810db69 Add some (dumb) character classification methods for strings 2021-02-09 09:41:13 +09:00
K. Lange
20676f790e bump libc for deb to 2.29
math module built on Ubuntu 20.04 has a symbol dep for 2.29 for
log, pow, exp
2021-02-09 09:16:02 +09:00
K. Lange
af9a4622f8 That seems correct? 2021-02-08 18:28:51 +09:00
K. Lange
ff38f7cc61 Uh, that's not quite what Python is doing, but... 2021-02-08 18:17:14 +09:00
K. Lange
d550c1be6b I need to get rid of this README-reading test... 2021-02-08 17:38:11 +09:00
K. Lange
8d14b24218 Rephrase some things in README 2021-02-08 17:36:18 +09:00
K. Lange
b3b56c8e44 Clean up Makefile and add install target 2021-02-08 17:36:03 +09:00
K. Lange
5b3a7e870b __delslice__, __setslice__ 2021-02-08 09:36:46 +09:00
K. Lange
f5d9a6b806 sets do not have stable ordering, so stop trying to print them in tests 2021-02-08 09:36:30 +09:00
K. Lange
e4df06c85f Report better size numbers for lists, dicts, C types 2021-02-08 08:52:17 +09:00
K. Lange
9fe1e92c45 drop support for kuroko.set_tracing(str); only support kwargs version 2021-02-08 08:48:37 +09:00
K. Lange
3b10257bf5 More dict methods 2021-02-07 10:49:38 +09:00
K. Lange
2e9ba3efa1 Forgot the header updates... 2021-02-06 21:41:28 +09:00
K. Lange
421d5ea000 Cleanup fileio module with new macros 2021-02-06 21:39:23 +09:00
K. Lange
47329df343 Don't use garbage-collection-triggering array resizing 2021-02-06 11:26:08 +09:00
K. Lange
c5e5980265 More str methods 2021-02-06 06:53:44 +09:00
K Lange
c79dfca79d Quick mingw build fixes 2021-02-05 22:10:10 +09:00
K. Lange
c732089a43 Add a method to fileio to read directories 2021-02-05 21:06:04 +09:00
K. Lange
e7a8d0b8e5 Attach code object for class to the resulting class object 2021-02-05 20:34:18 +09:00
K. Lange
f4216ed3a1 Implement set literals, comprehensions 2021-02-05 20:23:28 +09:00
K. Lange
19e5beba05 Implement class decorators and move class definitions into pseudo-functions 2021-02-05 19:54:46 +09:00
K. Lange
930b599e82 Expose basic operators and add more builtins, list functions 2021-02-05 19:05:08 +09:00
K. Lange
4d05ca218c Fix push ordering in attachNamed{Object,Value} 2021-02-05 17:54:55 +09:00
K. Lange
e9e86577bd Fix unbalanced stack in new Helper/LicenseReader 2021-02-05 17:54:40 +09:00
K. Lange
4ea5086541 Start labeling this as 1.1.0 2021-02-05 17:39:47 +09:00
K. Lange
b3a577294f Final cleanups 2021-02-05 17:28:36 +09:00
K. Lange
90b219cdce Eliminate builtins.krk 2021-02-05 17:22:08 +09:00
K. Lange
689cee075e C-ify set(), mostly the same as it was originally written 2021-02-05 16:09:29 +09:00
K. Lange
523dbc1371 Port list and dict, and their iterators, to use new utility macros 2021-02-05 15:08:33 +09:00
K. Lange
5c14efa085 Clean up some string functions 2021-02-04 19:22:23 +09:00
K. Lange
edc3017bcd Break out (most) object implementations into their own files 2021-02-04 09:04:56 +09:00
K. Lange
7129a3ac7d Fix handling of error tokens from within f-strings 2021-02-01 21:40:18 +09:00
K. Lange
0b6b6468a6 Prune actual file paths from test/testPackageImports.krk 2021-01-31 11:13:39 +09:00
K. Lange
8388e53235 Improve build support and prep a 1.0.1 bugfix v1.0.1 2021-01-31 11:00:01 +09:00
K. Lange
67460145fa Add a test for everything we fix... 2021-01-31 09:57:15 +09:00
K. Lange
df25225c64 And we found our first post-release bug: Fix tupleiterator.__init__ 2021-01-31 09:20:51 +09:00
K. Lange
4eceb98ffe v1.0.0 v1.0.0 2021-01-30 21:42:36 +09:00
K. Lange
0562b8b071 list.insert must use memmove, not memcpy 2021-01-29 16:44:36 +09:00
K. Lange
ed4a89ec42 Quick fix for REPLs so empty statements return None instead of '__file__' 2021-01-29 10:37:57 +09:00
K. Lange
135bf80196 Call this 1.0.0-rc1 v1.0.0-rc1 2021-01-26 08:19:54 +09:00
K. Lange
a254304f40 Move set_tracing to kuroko module 2021-01-26 08:11:34 +09:00
K. Lange
a39347d829 argc should not include the kwargs dict in native function calls 2021-01-26 08:11:18 +09:00
K. Lange
662e033bd4 Keep first error on compiler failure 2021-01-25 19:39:16 +09:00
K. Lange
6e307a38f7 I seriously don't know why I had to do this. 2021-01-24 19:34:59 +09:00
K. Lange
d6c891d245 Support -c argument to interpreter 2021-01-24 16:27:49 +09:00