Calvin Rose
62fc55fc74
Remove pthread.h from janet.h
...
Should make janet a bit easier to use. Also changes the
header to not expose the size of native mutexes and rwlocks, except
with janet_os_mutex_size and janet_os_rwlock_size.
2022-06-17 17:13:58 -05:00
Calvin Rose
80729353c8
Add :lazy option for ffi/context for jpm quickbin usage.
2022-06-13 21:26:03 -05:00
Calvin Rose
105ba5e124
Add ffi/context and ffi/defbind helpers.
...
Wrap the very bare-bones FFI library to be a bit more
useful out of the box.
2022-06-12 18:48:47 -05:00
Calvin Rose
ad1b50d1f5
Update dofile function signature.
2022-06-12 18:03:23 -05:00
Calvin Rose
6d970725e7
Update boot.janet for typos.
2022-06-11 21:19:42 -05:00
Calvin Rose
c75b088ff8
Format boot.janet with janet-format.
2022-06-10 19:13:23 -05:00
Calvin Rose
33bb08d53b
Merge branch 'master' into ffi
2022-06-10 16:24:55 -05:00
Calvin Rose
6d188f6e44
Improve .ppasm function.
2022-06-10 16:24:40 -05:00
Calvin Rose
c3648331f1
Expose an easy to use debugger
function.
2022-06-10 15:39:29 -05:00
Calvin Rose
a5b66029d3
Expose the built-in debugger in more places.
2022-06-10 15:23:15 -05:00
Calvin Rose
282d1ba22f
Implement sys v abi on x64 partially.
2022-06-06 18:54:17 -05:00
Calvin Rose
2f64a6b0cb
Add parse-all
function as a natural extension to the parse
function.
2022-05-28 19:02:17 -05:00
Calvin Rose
487d333024
Add module/value
function to make grabbing bindings out module tables.
2022-05-05 19:24:44 -05:00
John Gabriele
471204b163
boot.janet docstrings (part 3, last part)
...
Added some backticks around code in docstrings to distinguish them from prose.
Also some light editing.
2022-04-20 18:31:06 -04:00
John Gabriele
9287b26042
boot.janet docstrings (part 2)
...
Added some backticks around code in docstrings to distinguish them from prose.
Also some light editing.
2022-04-19 01:55:37 -04:00
John Gabriele
96602612ba
boot.janet
...
Added some backticks around code in docstrings to distinguish them from prose.
2022-04-17 22:35:04 -04:00
Calvin Rose
e01b65fd3d
Fix some printing issues for docs.
2022-04-16 11:40:33 -05:00
Calvin Rose
a964b164a6
Merge branch 'master' of github.com:janet-lang/janet
2022-04-13 17:20:49 -05:00
Calvin Rose
1aac0489d7
Add a number of defs for used dynamic bindings.
2022-04-13 17:20:33 -05:00
sogaiu
bf9a60f70d
Use defdyn for syspath in boot.janet
2022-04-13 19:39:41 +09:00
Calvin Rose
3715d7a184
Auto update copyright date.
2022-03-21 18:22:59 -05:00
Calvin Rose
4e31d85349
Address #804 - save and restore module cache when flychecking.
...
Calling flychecking cannot change the module cache.
2022-02-12 10:36:45 -06:00
Calvin Rose
461576e7a2
Add defdyn
macro to allow docs and checking for dyns.
...
Using keywords for the names of dynamic bindings emphasized their
dynamic nature and how they actually work, but is opaque when it comes
to documentation and error detection. Janet uses early binding for name
resolution by default in most places, dyns should be no different.
The `defdyn` macro allows one to create aliases for keywords that can
have docstrings, be imported and exported, etc. The aliases _must_
follow the usual lisp convention of earmuffs - this is not
restricting since the underlying keyword lookup mechanism is still
completely accessible to users.
Example:
(defdyn *my-dynamic-binding* "Sends the plumbus to the thingamizer when
enabled")
The above creates a normal binding (as created with `def`) for
`*my-dynamic-binding*` that is bound to the keyword
`:my-dynamic-binding`.
There is an optional prefix for defdyns that can be used to avoid name
collisions - *defdyn-prefix*
Example:
(setdyn *defdyn-prefix* "mylib/")
(defdyn *my-dynamic-binding* "Plumbus thingamizer")
(pp *my-dynamic-binding*)
> :mylib/my-dynamic-binding
2022-02-11 20:37:52 -06:00
Ian Shehadeh
6412768000
Add match documentation for & rest pattern
2022-01-20 09:19:21 -05:00
Ian Shehadeh
82688b9a44
add checks to & _ pattern in match macro
...
This commit adds 2 checks for & rest pattern in the match macro:
- & is followed by exactly 1 item
- & is followed by a symbol
2022-01-20 09:16:02 -05:00
Ian Shehadeh
db631097b1
add support for & _ to match macro
...
This commit adds support for using & _ syntax to bind the remaining
values in an array in the match macro.
The commit also adds a few tests for the new syntax in suite0008
2022-01-19 13:29:34 -05:00
Calvin Rose
a37dc1af9d
Merge branch 'redefs-work'
...
- Change the global binding name from :redefs to :redef
- Simplify internal representation of "redefinable bindings"
- Store "redefinable bindings in :ref rather than :value inside the
environment entries. This makes such bindings more like vars that
can't be set rather than defs.
2022-01-06 20:45:20 -06:00
Calvin Rose
03458df140
Merge pull request #898 from pyrmont/feature.redefs
...
Support redefinable `def` and `defmacro` bindings using `:redef`
2022-01-06 20:44:18 -06:00
Calvin Rose
99cfbaa63b
Tweaks on redef feature branch.
2022-01-06 20:38:15 -06:00
Michael Camilleri
ea9d5ec793
Change metadata keyword back to :redef
2022-01-02 12:35:22 +09:00
Michael Camilleri
ec65f038a8
Support :dynamic-defs dynamic binding
2021-12-29 16:39:00 +09:00
sogaiu
1326ded048
Tweak match docstring
2021-12-25 16:56:10 +09:00
Michael Camilleri
939d1dcae9
Only set :current-file in run-context if source is a path
2021-12-13 12:06:58 +09:00
Michael Camilleri
bf29a54272
Clarify nested loop behaviour in loop macro
2021-12-09 10:41:56 +09:00
Calvin Rose
e8c738002b
Add extra "prefix" parameter to debug/stacktrace.
2021-12-04 13:03:05 -06:00
Grazfather
139bef2142
map: Fix indexing for 3+ data structures
2021-12-03 16:15:43 -05:00
Michael Camilleri
6bf9f89429
Update location of current file in run-context
2021-11-29 10:05:04 +09:00
Calvin Rose
425a0fcf07
Add quoted literal support in the match macro.
2021-11-08 15:33:11 -06:00
sogaiu
fdc94c1353
Tweak short-fn docstring
2021-11-04 18:11:53 +09:00
Calvin Rose
9cc4e48124
Update changelog and allow evaluating streams with dofile.
2021-10-30 14:43:06 -05:00
Calvin Rose
9a06660fdb
fix call to table/proto-flatten
2021-10-30 09:15:23 -05:00
Calvin Rose
5c35d24e13
Fix nil check issue.
2021-10-29 19:29:54 -05:00
Calvin Rose
fd37567c18
Docstring fix.
2021-10-29 11:13:07 -05:00
Calvin Rose
8b2d278840
Add min-of and max-of.
2021-10-26 17:46:24 -05:00
Calvin Rose
74c9cf03d0
Fix -r switch in repl
2021-10-14 17:25:12 -05:00
Calvin Rose
50bced49ad
Merge branch 'master' into use-deprecation-mechanism-for-file-popen
2021-09-21 15:15:36 -05:00
Calvin Rose
033c6f1fdb
Add -i flag to run .jimage files as scripts.
2021-09-19 19:47:57 -05:00
Calvin Rose
6c58347916
Remove thread module.
...
Instead, use the more general and non-blocing `ev/` module.
2021-09-19 14:19:32 -05:00
Calvin Rose
b0d0d9cad2
Address #809 - treat first docstring line different from others.
...
Only do this if the docstring starts with an open parentheses.
2021-09-18 12:41:11 -05:00
sogaiu
d5c8eb048a
Apply deprecation machinery to file/popen
2021-09-18 17:08:56 +09:00