From 0ff2342db6999abf7dbe50163a0a6e1db80cb473 Mon Sep 17 00:00:00 2001 From: Shautvast Date: Tue, 14 Oct 2025 14:09:49 +0200 Subject: [PATCH] draft --- CRUD-lang.org.md | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 CRUD-lang.org.md diff --git a/CRUD-lang.org.md b/CRUD-lang.org.md new file mode 100644 index 0000000..6323f26 --- /dev/null +++ b/CRUD-lang.org.md @@ -0,0 +1,28 @@ +This is now in first-draft phase. Meaning, I just had the idea and I am jotting down preliminary design decisions. + + * an experimental language for CRUD applications (backend only though) + * Enterprise as a first-class citizen + * urls are made up directories and filenames + * a controller sourcefile is a file with the .ctl extension + * likewise + * .svc services + * .cl service clients (that call other services) + * .dao database access code (not objects) + * .qc queueconsumers + * .qp queueproducers + * .utl utilities + * there is a strict calling hierarchy. A service can not call a controller. It can only go 'down'. + * Services can not call other services, because that is the recipe for spaghetti. Refactor your logic, abstract and put lower level code in utilities. + * Utilities are allowed to call other utilities. OMG, spaghetti after all! + + * It is an interpreter written in rust. OMG! + * And it has everything I like in other languages + * strictly typed + * [] is a list + * {} is a map + * no objects, no inheritance + * structs and duck typing + * everything is an expression + * +* + \ No newline at end of file