From 33aadce096a947300a2531940efc962c979542da Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Thu, 22 Jan 2015 00:18:39 -0400 Subject: WARNING: Broken [Enhancements] - Restructured the lexer a bit. - Restructured the parser a lot. - Changed the syntax a bit. - Module-names are now separated from def-names by a colon (e.g. module/submodule:var) - i+ -> iadd, i- -> isub, i* -> imul, i/ -> idiv - Added a (incomplete) way to annotate defs. Currently, only serves to mark defs as macros. - Removed "import" and "use". "require" is meant to be the way to load modules. - Did some major refactoring, cleaning and upgrading in the analyser. Though there is still some work pending. --- src/lux.clj | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'src/lux.clj') diff --git a/src/lux.clj b/src/lux.clj index d5c76cea9..045e6b0f2 100644 --- a/src/lux.clj +++ b/src/lux.clj @@ -18,15 +18,18 @@ ;; TODO: Add records. ;; TODO: throw, try, catch, finally ;; TODO: Add extra arities (apply2, apply3, ..., apply16) - ;; TODO: When doing partial application, skip "apply" and just call constructor appropiatedly. - ;; TODO: Add "new". Allow setting fields. + ;; TODO: Allow setting fields. ;; TODO: monitor enter & monitor exit. ;; TODO: Reinplement "if" as a macro on top of case. ;; TODO: Remember to optimized calling global functions. ;; TODO: Reader macros. + ;; TODO: Automatic currying of functions. + ;; TODO: + ;; TODO: + ;; TODO: ;; TODO: - (&compiler/compile-all ["lux" "test2"]) + (time (&compiler/compile-all ["lux" "test2"])) -- cgit v1.2.3