From 87d2c40763fb56e39b7b4d4c3047ebed79f12d21 Mon Sep 17 00:00:00 2001 From: Zak Yani Star Fenton Date: Tue, 3 Jun 2025 16:47:29 +0000 Subject: [PATCH] Update README.md --- README.md | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 6a44099..af33a82 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,21 @@ # slcc -SecureLang C Compiler \ No newline at end of file +SecureLang C Compiler + +## History & License + +The compiler is based on my years-old and heavily-extended fork of LICE with DECUS C preprocessor added, making for a completely "public domain" self-hosting compiler with some additional language extensions. The compiler is distributed with a copy of the UNLICENSE, as per LICE, but the DECUS C preprocessor public domain attribution can be checked separately (and the compiler can be built in more stripped-down forms). New features such as the RV64 backend, object-oriented extensions and command-line frontend have been written by myself (but are mixed in with the LICE code), and the rest has been heavily refactored to match. + +https://github.com/ZYSF/ZNCC +https://github.com/dorktype/LICE +https://www.google.com/search?q=decus+c+preprocessor+public+domain + +## Language Extensions + +* High level `@[a,r,r,a,y]` constructors can be used for typesafe vararg functions (experimental!) +* Supports simple `@interface`, `@implementation` and `[object messageWithArgument: x andArgument: y]` syntax + +## Limitations + +* Number support is still broken in places so the compiler shouldn't be treated as reliable except in well-tested cases +* Complex use of global variables and initialisers should be kept to a minimum, or else you will encounter compiler bugs! \ No newline at end of file