1
0
forked from alex-eg/sex
Files
sex/example/test-list.sex
alex-eg 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

41 lines
911 B
Scheme

(include stdlib.h)
(include stddef.h)
(include stdbool.h)
(include stdio.h)
(chicken-import srfi-1 brev-separate) ; list routines, e.g. fold
(chicken-load "list.seh")
(define (imports-test a b c)
(fold + 0 (list 1 2 3 a b c)))
(struct foo
((float a)
(int b)
((const char *) c)))
,(list-T '(int))
,(make-list-T '(int) #f)
,(add-value-list-T '(int) #f)
,(length-list-T '(int) #f)
,(is-empty-list-T '(int) #f)
(extern fn void puk ((int a) (float b)))
(fn int bar () ,(imports-test 10 20 30))
(pub fn void baz () true)
(extern var int i)
(var int j)
(pub var int k)
(pub fn int main ()
(var (* list-int) l (make-list-int))
(printf "Size of the list: %zu\n" (length-list-int l))
(add-value-list-int l 3)
(add-value-list-int l 4)
(printf "Size of the list: %zu\n" (length-list-int l))
,(list-for-each '((printf "%d " v) l v))
(printf "\n")
0)