1
0
forked from alex-eg/sex

move Sex to better types

Types, fns and vars are now written in another, better, more intuitive
and readable way.

Types:
"pointer to const char" is "* const char"
"array of pointers to volatile int" is "[* volatile int]"
Read left to right

Vars (as well as fn args, struct fields):
(var name type)
(struct vec3 ((x float) (y float) (z float))
(fn vec3-add ((v1 vec3) (v2 vec3)) vec3 ...)

Also fns are now have return types after arg list.

* is now must not be attached to any type name (or variable for that
matter)
This commit is contained in:
2025-10-21 21:38:41 +03:00
committed by Pavel Kulyov
parent 2228ab3b50
commit 48a3d06925
8 changed files with 318 additions and 59 deletions

View File

@@ -10,6 +10,7 @@
(include "basic.scm")
(include "semen.scm")
(include "reader.scm")
(include "fmt-c-writer.scm")
(include "utils.scm")
;;; Should be the last in the test suite