From 9ea666b63c5105131bb7f772ae3fbe9b56a865ff Mon Sep 17 00:00:00 2001 From: nodist Date: Thu, 3 Sep 2026 12:32:13 -0400 Subject: change spec layout --- docs/objectives.md | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 docs/objectives.md (limited to 'docs/objectives.md') diff --git a/docs/objectives.md b/docs/objectives.md new file mode 100644 index 0000000..313b3f6 --- /dev/null +++ b/docs/objectives.md @@ -0,0 +1,37 @@ +# Objectives + +--- + +### Implicit Error Handling + +* All operations return a `Result` that can be manually or automatically checked + +### Asynchronous First + +* No functions, only coroutines + +### All Code Is Thread Safe + +* Values are atomic and all containers have a `mutex` like mechanism that is implicitly locked before use + +### Strongly Typed + +* Dynamic types are represented by `Any`, these types have to be matched to a type before they can be used + +### Single Invocation + +* Just In Time Compilation + +### Asymmetric C Interoperability + +* KPL code can call C code, C code can call certain KPL code + +### Minimal Dependencies + +* Run On Linux With `io_uring` For `X86-64` (X64) And `Aarch64` (A64) Only + +* GCC, Make and OpenSSL; should compile on *most* distributions without any extra steps + +### Low Resource Usage + +* Should work on servers with 1 Core and 1 Gigabyte of RAM -- cgit v1.2.3