Calvin Rose
1e30f4f973
Merge pull request #427 from pyrmont/nil-empty-string
...
Change default string representation of nil to empty string
2020-06-26 22:47:16 -05:00
Jason Pepas
51bf8a3538
Add ppc to os/arch
2020-06-26 04:11:21 -05:00
Calvin Rose
ac5de1f96e
Change compare-primitive to cmp.
...
cmp is implemented as a VM instruction rather than
a function.
2020-06-24 16:00:00 -05:00
Calvin Rose
de9951594e
Allow setting dynamic bindings at C top level.
...
Before, these bindings we just ignored. However, it useful for
controlling janet_printf and janet_eprintf, for example. These can
be called from C code without being inside a call to janet_continue.
2020-06-22 08:56:04 -05:00
Calvin Rose
561fc15ae9
Address #426 parse errors in *out janet_dostring
...
This should make its use a little more robust for
simple usage. To avoid printing to stderr, use
janet_table_put(env, janet_ckeywordv("err"), janet_wrap_false());
2020-06-22 08:34:17 -05:00
Calvin Rose
803f17aa90
Add eachy and repeat to make looping easier.
...
Like eachk and eachp, use eachy and repeat to bring loop
verbs outside of the loop macro. These new macros are very simple
and easy to understand, in contrast to the loop macro which is of
medium complexity.
2020-06-21 18:48:06 -05:00
Michael Camilleri
c4035b2273
Change string representation of nil to empty string
2020-06-21 17:54:06 +09:00
Calvin Rose
5c364e0f7c
Better roundtrip jdn.
...
Use the most precise format specifier, such that output jdn numbers
are more accurate.
2020-06-18 21:54:34 -05:00
Calvin Rose
79f5751375
Add array/trim and buffer/trim.
2020-06-14 17:40:48 -05:00
Calvin Rose
106437bd45
Fixes #423
...
Re-add ifdef for realpath config option.
2020-06-14 15:50:09 -05:00
Calvin Rose
1bddb87a0c
Fix MSVC Warnings.
2020-06-14 14:20:38 -05:00
Calvin Rose
17bdfbb08b
Fix broken trace functionality.
...
This was an older regression that caused trace to emit
garbage output in most cases.
2020-06-14 11:58:20 -05:00
Calvin Rose
c87a0910d0
Add some flags to creating threads for more control.
...
Allow lightweight/heavyweight threads, and make default lightweight.
This means multithreaded programs can save lots of memory by default.
2020-06-13 09:42:16 -05:00
Calvin Rose
86e12369b6
Add alias for PEG repeat.
...
A tuple where the first element is an integer is
a shortand for this.
2020-06-11 11:23:43 -05:00
Calvin Rose
6d096551f0
Add Peg combinators 'to' and 'thru'.
...
Inpsired by the REBOL operators of the same name, these
combinators match bytes up to or inculding a given pattern.
(to patt) is (almost) equalivalent to (any (if-not patt 1)), and
(thru patt) is equivalent to (* (to patt) patt). The one difference
is that if the end of the input is reached and patt is not
matched, the entire pattern does not match.
2020-06-10 21:18:50 -05:00
Mike Beller
9824a34d76
Remove dead code.
2020-06-06 08:55:20 -04:00
Mike Beller
76c3436377
Remove vestigial comparison methods from int types
2020-06-05 11:07:48 -04:00
Mike Beller
a4178d4b3c
All tests pass for compare.
2020-06-05 10:51:35 -04:00
Mike Beller
3e423722c6
Actually got the comparisons working for s64 (still need to fix u64)
2020-06-04 18:27:48 -04:00
Mike Beller
01837f2bb6
All tests pass.
2020-06-04 15:27:36 -04:00
Leaf
75bc69ba2f
Implement os/realpath on Window with _fullpath
...
This is similar to realpath but differs in that realpath will complain
if the path does not exist. We could add our own exists check if we
really wanted to match that behaviour.
2020-06-02 09:05:41 +00:00
Calvin Rose
eb9f74a273
Silence MSVC warning.
2020-05-30 10:06:39 -04:00
Matthew Carter
ee94828355
Fix for double free on fclose due to GC not knowing it failed
2020-05-28 15:35:09 -04:00
Calvin Rose
fff66649aa
Fix issue #416 .
...
Be really sure we don't pass too large of a size to memcpy.
There seem to be some situations where the slotcount and the ua.count
do not match at all, so use the mimimum for copying.
2020-05-28 10:47:22 -05:00
Calvin Rose
057ba8a4e1
Fixes #409
...
Use the correct count in a memcpy.
2020-05-21 01:35:37 -05:00
Calvin Rose
677737d345
Fixes #412 Lookahead does not move cursor.
2020-05-21 01:22:08 -05:00
Mike Beller
8263789602
Fix issue #408 -- make "next" work for typed arrays, and also fix
...
bug where tarray/new failed to fully check the type of it's last
argument.
2020-05-20 13:30:48 -04:00
Calvin Rose
b72845609f
Add JANET_GIT to jpm.
...
This should allow work arounds for some windows installs.
Also, be clever about finding the location of te current git
executable on windows to avoid some path issues that seem to
occur on some windows installations.
2020-05-19 18:36:58 -04:00
Calvin Rose
e623690295
Use keywords in the assembly interface.
...
This is simply more idiomatic, removes some unused and undocumented
features of the assembly interface, and simplifies it somewhat.
2020-05-19 13:51:39 -05:00
Calvin Rose
0e828792ae
Fix segfault on bad loop. Fixes #407 .
2020-05-19 09:45:45 -05:00
Calvin Rose
b7cfc08fc5
Improve line and col tracking in parser.
...
Unconditionally add line and column information if
a parsed value is a tuple - before, some parsed tuples
had line and col information omitted.
2020-05-18 19:05:27 -05:00
Calvin Rose
9e5f203302
Expose line, col in macros via (dyn :macro-form)
...
This exposes line and column indirectly via
tuple/sourcemap and allows interesting debug macros.
2020-05-18 18:27:35 -05:00
Calvin Rose
1bb9a9368b
Make sure winsock2.h is included before windows.h
...
This should be true in the normal build, and especially in the
amalgamated build.
2020-05-16 12:41:26 -05:00
Calvin Rose
7a84fc4742
Fix infinite loop in some cases.
...
Problem - reusing a tainted variable without reinitializing.
2020-05-16 08:28:50 -05:00
Calvin Rose
00451777fe
Add meson builds to sourcehut CI.
2020-05-12 08:46:26 -05:00
Calvin Rose
3100080a50
Add NO_UMASK and NO_REALPATH config options.
2020-05-10 23:07:54 -05:00
Calvin Rose
e013381e72
Conditionally ignore pclose as well as popen.
2020-05-10 21:06:52 -05:00
Calvin Rose
235605bfa4
1.9.0 Release.
...
Fix up some documentation as well.
2020-05-10 16:45:33 -05:00
Calvin Rose
e8b3587946
Silence clang warnings about missing initializers.
2020-05-10 16:00:55 -05:00
Calvin Rose
9040ac6a0c
Silence some warnings about pointer signedness.
2020-05-09 23:58:45 -05:00
Calvin Rose
b1f76139a7
Add several configurable options - #379
2020-05-09 12:00:01 -05:00
Calvin Rose
7125b3430c
Merge pull request #383 from andrewchambers/rngdoc
...
Improve rng doc string accuracy.
2020-05-09 11:35:01 -04:00
Andrew Chambers
057486cf56
Avoid setting O_CLOEXEC on stdin/stdout/stderr.
2020-05-09 22:26:50 +12:00
Andrew Chambers
f94e726271
Improve rng doc string accuracy.
2020-05-09 12:11:08 +12:00
Calvin Rose
95660002e1
fix include sys/fcntl.h to fcntl.h
2020-05-07 14:54:03 -05:00
Calvin Rose
95c669389b
Merge pull request #378 from andrewchambers/tweak
...
Tweak comment, remove extra include.
2020-05-07 10:33:19 -04:00
Calvin Rose
084fc9776d
Use SOCK_CLOEXEC correctly.
2020-05-07 07:55:08 -05:00
Andrew Chambers
1498fdb7b0
Tweak comment, remove extra include.
2020-05-07 20:44:04 +12:00
Calvin Rose
79c3139748
Check for SOCK_CLOEXEC.
...
Not available on all platforms.
2020-05-06 23:44:01 -05:00
Calvin Rose
bdd64f5656
Merge branch 'master' of github.com:janet-lang/janet
2020-05-06 18:52:57 -05:00