a0f1f5cc17
fix sex-tests
...
;-P
2025-08-03 13:49:35 +03:00
401857e04b
remove hello-world.sex from the root directory
2025-08-02 10:49:38 +03:00
d4e1471f44
remove unused function
2025-08-02 10:49:38 +03:00
4b6a7d5209
add sex-tests
2025-08-02 10:49:38 +03:00
3e535c9517
update example and Readme.org
2025-08-02 10:49:38 +03:00
bc54ae6a05
modularize Sex compiler
2025-08-02 10:49:38 +03:00
4be0d3f5ac
prettify --help output and add it to Readme.org
2025-08-02 10:49:38 +03:00
d2998f79ff
update Readme.org
...
Add info about compilation and modules.
2025-08-02 10:49:38 +03:00
44a352849a
implement modules
2025-08-02 10:49:38 +03:00
93a4d181d0
add hello-world example
2025-08-02 10:49:38 +03:00
6fc1688e41
call C compiler from Sex directly
...
Also rework options printing, add some cmdline options, rework others,
all in all, the logic is now looking like this:
* -E to emit C code
* -m to emit macro-expanded Sex code
* -c to emit object file instead of executable
* --c-compiler to set C compiler. If not provided, check SEX_CC
enviroment variable, if it's empty, default to `cc'
* options after -- are passed to C compiler
* default mode is to compile Sex module to executable
2025-08-02 10:49:38 +03:00
7967a75313
remove some stray variable
2025-08-02 10:49:38 +03:00
5c714d8c36
fix hello-world.sex
2025-07-30 12:48:29 +03:00
0cc324e11d
fix pub wrong indent
2025-07-17 11:50:04 +03:00
76ca609ea6
Make Sex templates more pleasant syntactically
...
No more unquotes to instantiate templates.
Also no need to pass quoted substitution lists, just use them as
regular lisp macros.
2025-07-11 18:27:50 +03:00
c084eaa397
add info about Emacs sex-mode to Readme.org
2025-06-19 12:31:43 +03:00
7e8f9197fb
update Readme.org
...
a bit of spellchecking, add some examples for templates
2025-06-16 15:18:21 +03:00
12ff37c515
support unkebabification in #()-forms
...
which are vectors in Chicken, {}-initializers in C
2025-06-14 19:02:45 +03:00
075116dfd2
support cpp define
2025-06-14 18:10:20 +03:00
e932afab0a
prefix define and define-syntax with chicken-
...
as we have define in cpp
2025-06-14 18:09:50 +03:00
97205ed8ef
don't unkebabify -> in symbols (it's -> from C)
2025-06-14 17:48:41 +03:00
650bff6d0e
fix pub function prototypes
2025-06-14 17:10:09 +03:00
923900a6ae
fix non-symbolic template replacements causing error on expansion
...
symbol->string doesn't work for anything besides synmols. And not
any (not (list? ...)) is a symbol. String are not, for example.
2025-06-14 17:08:18 +03:00
ef19ff4e56
add define and define-syntax syntax coloring in sex-mode.el
2025-06-14 14:10:19 +03:00
5f919c387d
change load to chicken-load in sex sources
...
to explicitly denote that it is chiken
2025-06-14 14:09:39 +03:00
bd71dcc8a7
add chicken-import support to sex
...
also fix unquoting to single atom processing wrongly in walk-sex-tree
2025-06-14 14:07:00 +03:00
f309f83dbb
rename dir lib -> example
...
because it is not quite lib yet, but an example dump definitely
2025-06-14 12:40:15 +03:00
6e59e523d4
hanlde pub for global vars correctly
2025-06-14 12:39:13 +03:00
84550be2bd
add union support to sex-mode.el
2025-06-13 18:20:58 +03:00
16dec0728f
add extern support
2025-06-13 18:20:51 +03:00
3dddad8c27
sex headers are now seh, not hsex
2025-06-13 14:47:55 +03:00
e4c243e113
update Readme.org
2025-06-13 14:31:10 +03:00
3cce26dc5c
add field access support (also unfuck tree walker a bit)
2025-06-12 23:40:35 +03:00
f767a80700
remove useless empty line
2025-06-12 23:40:15 +03:00
29fbd44366
fix indent
2025-06-12 23:40:08 +03:00
f247a65bf0
sex-mode inherits scheme mode
2025-06-11 20:24:12 +03:00
19cc3ad43a
unshittify templates
2025-06-11 20:23:54 +03:00
241d605db4
implement templates (kinda)
...
uh oh
2025-06-09 00:30:14 +03:00
408c0c1441
make some exceptions for unkebabification
2025-06-09 00:29:31 +03:00
1286fc14ec
add clean target
2025-06-09 00:28:50 +03:00
5220e0eafd
[] isn't gonna work with Sheme reader
2025-06-09 00:27:36 +03:00
839a6cb350
don't need map here, for-each is enough
2025-06-09 00:27:21 +03:00
0d72b1950d
fix reading from files not in current dir
2025-06-09 00:27:03 +03:00
469db7b92e
add auto typedefs for structs
2025-06-09 00:21:42 +03:00
f74d1b0c1c
typo
2025-06-05 17:17:58 +03:00
39e1e4a664
rewrite tree walk with tree module
...
also add pub support
2025-06-05 17:11:30 +03:00
dd9765bd62
filter out '()s from the tree
2025-06-05 12:15:06 +03:00
46877241d9
add cmdline options
...
-h help
-o write to file
-m expand macros in Sex code and print result
2025-06-05 07:32:05 +03:00
06d8dd331e
add sex-mode.el
2025-05-30 12:38:18 +03:00
5dece2275a
maybe rewrite map-filter-tree with tree.scm's tree inversions?
...
They don't seem intuitive, need to mess around a bit to understand
them.
2025-05-30 12:37:28 +03:00