Product
Features and capabilities
A precise, honest account of what RUDRA does today. Each capability is labeled with a verification status; the evidence behind each is on the Transparency page.
Compile and run a program
The released 1.1.0 compiler, ruxc, builds a .rux source file into a native Linux x86-64 executable, which you then run.
ruxc <file.rux> <output> && ./output
Static zero-dependency compiler
ruxc is written in RUDRA and is a statically linked ELF: it has no runtime library dependencies and needs no C compiler, assembler or linker.
Structs and enums
Structs and tagged enums with payload variants, accessed as Shape.Circle(5), with exhaustiveness-checked match.
match s { Shape.Circle(r) => { ... } }
Runtime safety checks
Integer division by zero traps, list access is bounds-checked, and lists are capped at 512 elements.
Channels (std/chan)
A standard-library module, not a builtin: FIFO channels carrying 64-bit integers over an OS pipe, with blocking, non-blocking and timeout receive and explicit status codes. Capacity is finite (about 64 KB by default).
import "chan"; chan_new(); chan_send_status(c, v); chan_recv_status(c, out)
Process concurrency (std/thread)
fork-based processes, not shared-memory threads. There are no spawn or mutex builtins and no mutex module in 1.1.0.
thread_fork(); thread_wait()
JSON (std/json)
json_get reads a value from a JSON object by key and json_valid checks a document. json_parse does not exist.
import "json"; json_get(doc, key)
HTTP helpers and sockets (std/http, std/net)
Request and response builders and parsers plus raw TCP socket calls, for plain HTTP to a numeric IP address. There is no http_get builtin and no HTTPS.
import "http"; http_get_request(host, path)
DNS (std/dns)
A-record (IPv4) lookups using the system resolver configuration. AAAA (IPv6) and TCP fallback are not supported.
import "dns"; dns_resolve(host)
HTTPS / TLS
TLS 1.3 and X.509 modules exist in the standard library with documented limits. The encrypted transport works, but certificate authentication is not wired into a live client, so authenticated HTTPS is not available.
Honest scope
The released 1.1.0 toolchain targets Linux x86-64 only. Language features such as traits, closures, tuples, fixed-size arrays and hex or binary literals are not implemented, and generics are erased rather than specialized. Authenticated HTTPS is not available.