From 8cb04fc72d3fd3eb14d0841174c11e070c0aa7ee Mon Sep 17 00:00:00 2001 From: Simon Forman Date: Thu, 22 Sep 2022 20:43:25 -0700 Subject: [PATCH] At this point... ...I'm just relearning C semantics. (And they are garbage, as is widely known.) I don't think there's much point to this (at the moment) because I don't want to relearn C (at the moment) and Nim is available (at the moment.) Really, I'm trying to do away with the entire relationship of C et. al. to the underlying machine. (For instance, Nim gives you a much nicer relationship, without the vast distance that, say, Python imposes.) I should really look at other compiled languages, like Ocaml or Julia. --- implementations/C/joy | Bin 310384 -> 308280 bytes implementations/C/joy.c | 88 +++++++++++++++++++++++++++++++----------------- 2 files changed, 57 insertions(+), 31 deletions(-) diff --git a/implementations/C/joy b/implementations/C/joy index 22c6cf319fa8e0caaa11dfe58ffb8b23adde1306..6697c3fc0c5a7b599587c6ec38b1f8d58cd2889c 100755 GIT binary patch delta 71602 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 MX;8atK9V%_KUFQezyJUM delta 73515 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 X_~{F+6J(WQ*Rjgj@m8O0=6(MMHdiFQ diff --git a/implementations/C/joy.c b/implementations/C/joy.c index 8e75d87..7037d66 100644 --- a/implementations/C/joy.c +++ b/implementations/C/joy.c @@ -1,31 +1,57 @@ #include #include -// Example S-exprs -// https://www.hboehm.info/gc/04tutorial.pdf - -typedef union se -{ - struct cons * cp; - mpz_t i; -} sexpr; -struct cons -{ - union se head; - union se tail; +enum JoyTypeType { + joySymbol, + joyTrue, + joyFalse, + joyInt, + joyList }; -#define car(s) (s).cp->head -#define cdr(s) (s).cp->tail -#define from_i(z) ({sexpr tmp; tmp.i=z; tmp;}) -#define to_i(s) (s).i +typedef struct list_node* JoyList; -sexpr cons(sexpr a, sexpr b) { - sexpr tmp = {GC_MALLOC(sizeof(struct cons))}; - car(tmp) = a; cdr(tmp) = b; - return (tmp); -}; +typedef struct JoyType { + enum JoyTypeType kind; + union { + int b; // bool + mpz_t i; + JoyList el; + }; +} name ; + +typedef struct list_node { + struct JoyType head; + struct list_node* tail; +} *JoyList; + + +// Example S-exprs +// https://www.hboehm.info/gc/04tutorial.pdf +/**/ +/*typedef union se*/ +/*{*/ +/* struct cons * cp;*/ +/* mpz_t i;*/ +/*} sexpr;*/ +/**/ +/*struct cons*/ +/*{*/ +/* union se head;*/ +/* union se tail;*/ +/*};*/ +/**/ +/*#define car(s) (s).cp->head*/ +/*#define cdr(s) (s).cp->tail*/ +/*#define from_i(z) ({sexpr tmp; tmp.i=z; tmp;})*/ +/*#define to_i(s) (s).i*/ +/**/ +/*sexpr cons(sexpr a, sexpr b) {*/ +/* sexpr tmp = {GC_MALLOC(sizeof(struct cons))};*/ +/* car(tmp) = a; cdr(tmp) = b;*/ +/* return (tmp);*/ +/*};*/ void* reallocate_function (void *ptr, size_t old_size, size_t new_size) { return GC_realloc(ptr, new_size); @@ -40,12 +66,12 @@ void my_callback(GC_PTR void_obj, GC_PTR void_environment) { mpz_clear(*obj); } -sexpr new_int(void) { - sexpr tmp = {GC_MALLOC(sizeof(struct cons))}; - mpz_init(tmp.i); - GC_register_finalizer(tmp.i, my_callback, NULL, NULL, NULL); - return (tmp); -} +/*sexpr new_int(void) {*/ +/* sexpr node = {GC_MALLOC(sizeof(struct cons))};*/ +/* mpz_init(node.i);*/ +/* GC_register_finalizer(node.i, my_callback, NULL, NULL, NULL);*/ +/* return (node);*/ +/*}*/ int main(void) @@ -60,10 +86,10 @@ int main(void) mpz_init_set_str (pi, "25d0c79fe247f31777d922627a74624", 16); gmp_printf ("%Zd = %Zx\n", pi, pi); GC_register_finalizer(pi, my_callback, NULL, NULL, NULL); - - sexpr i = new_int(); - mpz_add(i.i, pi, pi); - gmp_printf ("%Zd\n", i.i); + + /*sexpr i = new_int();*/ + /*mpz_add(i.i, pi, pi);*/ + /*gmp_printf ("%Zd\n", i.i);*/ return 0; //return to_i(car(cons(from_i(0),from_i(1)))); -- 2.11.0