From 8eaffe065fef691f9da7123b9cbed408f10a2717 Mon Sep 17 00:00:00 2001 From: ML Date: Sun, 15 Mar 2026 15:33:08 +0100 Subject: [PATCH] Fix typos and enhance README content Corrected typos and improved clarity in the README. --- README.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 775547ae..e913c83b 100644 --- a/README.md +++ b/README.md @@ -2,9 +2,12 @@ Clojuire Real Time (clojure-rt) is a compiler of Clojure programming language. -It is being developed to allow deterministic and fast execution that could allow Clojure to proliferate beyond its +It is being developed to allow deterministic and fast execution that could enable Clojure to proliferate beyond its original domains of application. It uses LLVM for agressive optimisations, JIT and platform independence. +It aims for C++ interoperability, with the exception model following C++ ABI. Its performance targets are much higher than any known +Clojure implementation. + The compiler strives to be a full implementation of Clojure following the reference java implementation as closely as possible. The interop part of java has been reimplemented in C to enable the compilation of *.clj part of the clojure source code (this is work in progress). @@ -16,7 +19,7 @@ Furthermore, advanced optimisations allowed by llvm enable the compiler to often Type annotations, commonly used in the java implementation to speed the execution up are not needed in clojure-rt as all the types are being discovered during programme execution and the resulting JITted representations are optimised to benefit from static type -analysis. To archieve the above result, two tiered JIT compiler designed specifically with CLojure in mind has been developed. +analysis. To archieve the above result, two tiered JIT compiler, designed specifically with Clojure in mind, has been developed. Currently the compiler is set up in bootstrap mode and consists of two separate parts @@ -54,10 +57,7 @@ leaks --atExit -- ./name_of_the_test ./compile.sh fib.clj -Please note that currently the backend prints out a lot of debug information. The primary info it prints is the LLVM code generated for given clojure statements. -Please also note, that currently the programmes compiled bu the frontend have to be *executed* by the frontend to generate the AST. Therefore, running -the naive recursive (fib 42) runs on my machine for 26 seconds (frontend using java implementation) and 0.46 seconds (backend, clojre-rt). -This not only shows how much faster clojure-rt can be, but also how much will be gained when the compiler bootstrapping process will be complete. +Please note that currently the backend prints out a lot of debug information. The primary info it prints is the LLVM code generated for given clojure statements. ## Generating protobuf models