Calvin Rose
fcca9bbab3
Add recursion to the pruning optimization.
2023-05-29 18:05:14 -05:00
Calvin Rose
4782a76bca
Add inital bytecode optimizations for #1163
...
This removes unnecessary movn, movf, lds, and a few other instructions.
Any instructions that has not side effects and writes to a slot that
isn't used can be removed. A number of other optimizations can follow
from this:
- Implement the def-aliasing-var optimization better
- This function can be iterated as a fix point until no more
instructions are removed.
- If we implement slot renaming, then we no longer need to free slots
and can simplify the initial code generation a lot.
2023-05-29 16:10:48 -05:00
Calvin Rose
4aca94154f
Be more selective when testing FFI.
...
In the future, we really should get more FFI testing for
partially supported FFI on various platforms.
2023-05-28 15:28:17 -05:00
Calvin Rose
ac5f118dac
Merge pull request #1164 from dressupgeekout/janet_h_symlink
...
More portable method of installing janet.h -> janet/janet.h symlink
2023-05-28 15:22:12 -05:00
Charlotte Koch
a2812ec5eb
More portable method of installing janet.h -> janet/janet.h symlink
2023-05-27 14:22:11 -07:00
Calvin Rose
70f13f1b62
Merge pull request #1157 from zevv/file-lines
...
Add file/lines iterator
2023-05-26 18:16:14 -05:00
Calvin Rose
77e62a25cb
Merge pull request #1160 from primo-ppcg/mapcat-et-al
...
Allow mapcat et al to accept multiple iterable arguments
2023-05-26 18:15:09 -05:00
Ico Doornekamp
09345ec786
file/linex now only acceps a file, not a path name
2023-05-26 17:50:26 +02:00
primo-ppcg
bad73baf98
Add test cases for variadic arguments to map-like functions
2023-05-26 19:08:00 +07:00
primo-ppcg
3602f5aa5d
Update boot.janet
...
`kvs` is not yet defined at this point.
2023-05-25 18:27:31 +07:00
primo-ppcg
672b705faf
Allow mapcat et al to accept multiple iterable arguments
...
#1159
2023-05-25 18:12:38 +07:00
Ico Doornekamp
64e3cdeb2b
Add file/lines iterator
2023-05-24 16:54:04 +02:00
Calvin Rose
909c906080
Fix yields inside nested fibers.
2023-05-23 20:09:46 -05:00
Calvin Rose
71bde11e95
Allow one argument to while.
2023-05-23 20:09:46 -05:00
Calvin Rose
fc20fbed92
Merge pull request #1151 from zevv/document-string-format
...
Add docstring to string/format
2023-05-23 18:57:55 -05:00
Calvin Rose
e6b7c85c37
Merge pull request #1152 from zevv/error-messages
...
Improved various error messages when handling unexpected types.
2023-05-23 18:57:20 -05:00
Ico Doornekamp
b3a92363f8
Add docstring to string/format
2023-05-23 07:21:26 +02:00
Ico Doornekamp
e9f2d1aca7
changed some error messages 'x|y' -> 'x or y'
2023-05-23 06:58:52 +02:00
Ico Doornekamp
b4e3dbf331
Improved various error messages when handling unexpected types.
...
error: bad slot #1 , expected string|symbol|keyword|buffer, got ...
error: bad slot #1 , expected a string, symbol, keyword or buffer, got ...
bad s64 initializer: "donkey"
can not convert string "donkey" to s64
2023-05-23 06:57:12 +02:00
Calvin Rose
c3620786cf
Merge branch 'master' of github.com:janet-lang/janet
2023-05-22 20:41:05 -05:00
Calvin Rose
41943746e4
Fix #1149 - deep-not= should only return true/false.
...
Also improve perf at same time.
2023-05-22 20:40:30 -05:00
Calvin Rose
176e816b8c
Merge pull request #1153 from zevv/fix-warning
...
Fix warning in janet_gettime()
2023-05-22 18:46:55 -05:00
Ico Doornekamp
50a19bd870
Fix warning in janet_gettime()
2023-05-22 20:53:03 +02:00
Calvin Rose
57b751b994
Merge branch 'master' of github.com:janet-lang/janet
2023-05-21 16:23:44 -05:00
Calvin Rose
77732a8f44
inet_test change.
2023-05-21 13:36:11 -05:00
Calvin Rose
c47c2e538d
Merge pull request #1137 from tionis/master
...
os/proc-kill now accepts an optional signal to send
2023-05-21 13:33:24 -05:00
Calvin Rose
cc5545277d
Merge pull request #1147 from zevv/error-messages
...
improved error messages for special forms
2023-05-21 13:31:06 -05:00
Ico Doornekamp
63353b98cd
improved error messages for special forms
2023-05-21 20:18:32 +02:00
tionis
4dfc869b8a
fixed formatting in src/core/os.c
2023-05-21 15:55:11 +02:00
tionis
b4b1c7d80b
Merge branch 'janet-lang:master' into master
2023-05-21 13:51:24 +00:00
tionis
e53c03028f
ignoring signals on windows in os/proc-kill again
2023-05-21 15:50:15 +02:00
Calvin Rose
8680aef42f
Merge pull request #1146 from zevv/os-clock
...
Add clock sources to os/clock (:realtime, :monotonic, :cputime)
2023-05-21 08:35:24 -05:00
Calvin Rose
c3fd71d643
Merge pull request #1142 from tionis/thaw
...
added thaw to complement freeze
2023-05-21 08:09:47 -05:00
Ico Doornekamp
30c47d685d
Fixed :cputime because msdn does not implement clock() properly
2023-05-21 07:29:27 +02:00
Ico Doornekamp
80db682109
Added tests for os/clock
2023-05-21 07:29:27 +02:00
Ico Doornekamp
e8e5f66f4c
Implement janet_gettime() for win32 and macos; need testing
2023-05-21 07:29:27 +02:00
Ico Doornekamp
aaf3d08bcd
Added 'source' argument to os/clock to select the clock source
2023-05-21 07:29:27 +02:00
Ico Doornekamp
61132d6c40
os/time and janet_gettime now use CLOCK_MONOTONIC instead of CLOCK_REALTIM, this matches the description from the documentation of os/clock. Fixes issue #1144
2023-05-21 07:29:27 +02:00
tionis
9cc0645a1e
added test for thaw and freeze
2023-05-20 17:35:25 +02:00
Calvin Rose
fc8c6a429e
Modulo should not be variadic.
2023-05-20 07:45:18 -05:00
Calvin Rose
2f966883d9
Fix #1145 - variadic imperative arith. macros.
...
Also update CHANGELOG
2023-05-20 07:42:50 -05:00
tionis
320ba80ca1
added support for tables/structs with prototypes in thaw
2023-05-20 14:00:33 +02:00
Calvin Rose
b621d4dd2e
Merge pull request #1139 from zevv/async-connect
...
changed net/connect to be non-blocking / asynchronous
2023-05-19 21:12:16 -05:00
tionis
56d927c72d
added thaw to complement freeze
2023-05-19 21:18:54 +02:00
tionis
53afc2e50a
Merge branch 'janet-lang:master' into master
2023-05-19 19:14:12 +00:00
Ico Doornekamp
89debac8f6
Fixed janet_loop1_impl stream use after dealloc
2023-05-19 20:00:59 +02:00
Calvin Rose
f2197fa2d8
Merge pull request #1141 from zevv/mingw-test
...
Add CI test for mingw/wine on linux
2023-05-19 07:25:47 -05:00
Ico Doornekamp
a6a097c111
Add CI test for mingw/wine on linux
2023-05-18 15:15:41 +02:00
Ico Doornekamp
c3e28bc924
added deferred closing of streams after async connect() fails
2023-05-18 14:10:22 +02:00
Ico Doornekamp
8d78fb1f6b
changed net/connect to be non-blocking / asynchronous
2023-05-18 10:55:48 +02:00