Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | equality and hashing for closures | Araq | 2012-07-17 | 1 | -3/+2 |
| | |||||
* | 'addSon' for types deprecated for 'int literal type' analysis | Araq | 2012-07-09 | 1 | -1/+1 |
| | |||||
* | made tests green again | Araq | 2012-07-09 | 1 | -2/+2 |
| | |||||
* | added devel/logging; weakrefs test; next steps for proper unsigned support | Araq | 2012-07-05 | 1 | -1/+1 |
| | |||||
* | another bugfix | Araq | 2012-06-21 | 1 | -1/+1 |
| | |||||
* | Merge branch 'master' of github.com:Araq/Nimrod | Araq | 2012-06-19 | 1 | -0/+2 |
|\ | |||||
| * | better support for unsigned integers. | Zahary Karadjov | 2012-06-11 | 1 | -0/+2 |
| | | |||||
* | | somewhat working closures | Araq | 2012-06-19 | 1 | -1/+2 |
|/ | |||||
* | Merge branch 'master' of github.com:Araq/Nimrod into upstream | Zahary Karadjov | 2012-06-02 | 1 | -1/+1 |
|\ | |||||
| * | added system.||; lacks runtime support | Araq | 2012-05-23 | 1 | -1/+1 |
| | | |||||
* | | Added system.staticExec proc for executing external command at compile-time | Zahary Karadjov | 2012-06-02 | 1 | -1/+43 |
|/ | |||||
* | fixes #109 | Araq | 2012-05-20 | 1 | -4/+5 |
| | |||||
* | the foundations of a type traits module; better error messages for expr, ↵ | Zahary Karadjov | 2012-04-06 | 1 | -1/+19 |
| | | | | typedesc and typeclasses params | ||||
* | genSym support for hygienic macros and templates. | Zahary Karadjov | 2012-03-26 | 1 | -5/+10 |
| | | | | | | | | | example: template hygienic(val: expr) = var `*x` = val echo `*x` *x was chosen as mnemonic for "opposite of public" and thus private | ||||
* | first steps for cleaner static/const distinction | Araq | 2012-03-13 | 1 | -31/+49 |
| | |||||
* | attempt to make tests green again | Araq | 2012-03-11 | 1 | -17/+28 |
| | |||||
* | `do' keyword in the grammar for lambda blocks | Zahary Karadjov | 2012-02-10 | 1 | -1/+1 |
| | |||||
* | version 0.8.14 | Araq | 2012-02-09 | 1 | -1/+1 |
| | |||||
* | further steps for closure support; added 'system.rawProc', 'system.rawEnv' | Araq | 2012-02-08 | 1 | -11/+43 |
| | |||||
* | pragma blocks; fixed line information issue with user defined assertions | Araq | 2012-01-17 | 1 | -0/+2 |
| | |||||
* | test t99bott.nim works now | Araq | 2012-01-06 | 1 | -20/+18 |
| | |||||
* | year 2012 for most copyright headers | Araq | 2012-01-02 | 1 | -1/+1 |
| | |||||
* | alias analysis as required for the code gen and the HLO | Araq | 2011-12-08 | 1 | -8/+1 |
| | |||||
* | 'assert' is now implemented without compiler magic | Araq | 2011-12-04 | 1 | -1/+2 |
| | |||||
* | implemented 'let' statement | Araq | 2011-11-29 | 1 | -2/+2 |
| | |||||
* | proper error message when attempting to eval C'imported procs | Araq | 2011-11-20 | 1 | -60/+51 |
| | |||||
* | bugfix: 'when' sections in generic objects now work, so TThread[void] compiles | Araq | 2011-11-20 | 1 | -2/+2 |
| | |||||
* | bugfixes: objects still invalid for constants; fixed a typo concerning ↵ | Araq | 2011-11-15 | 1 | -1/+1 |
| | | | | 'high' in eval context | ||||
* | new kind of AST printer that prints indented trees | Zahary Karadjov | 2011-11-04 | 1 | -3/+0 |
| | | | | | AST-to-string conversion procs renamed to repr, treeRepr and lispRepr for better consistency new dumpTree and dumpLisp procs for quick AST inspection of arbitrary nimrod blocks | ||||
* | lazy loading of body ast implemented | Araq | 2011-10-30 | 1 | -6/+8 |
| | |||||
* | eval context for macros lives as long as the current module is compiled | Araq | 2011-10-28 | 1 | -15/+36 |
| | |||||
* | 'bind' as a declarative statement | Araq | 2011-10-10 | 1 | -1/+1 |
| | |||||
* | slurp uses path; unidecode is improved and threadsafe | Araq | 2011-10-08 | 1 | -19/+19 |
| | |||||
* | Cleaned up the circular dependecies and remaining issues | Zahary Karadjov | 2011-10-07 | 1 | -16/+64 |
| | | | | Changed: The []= operator for strings and sequences is now capable of splicing | ||||
* | Basic unit testing facilities (suites, fixtures, cases) | Zahary Karadjov | 2011-10-07 | 1 | -3/+8 |
| | | | | | | | | Added: PNimrodNode.lineinfo for better error messages from macros Added: seq.splice For easier use from templates and macros, except stament now supports the list of exception types to be supplied in nkBraket node (array literal). | ||||
* | getAst works correctly with existing AST values as template/macro arguments | Zahary Karadjov | 2011-10-07 | 1 | -2/+51 |
| | |||||
* | code generator supports constant sequences; more consistent compile time ↵ | Araq | 2011-10-07 | 1 | -9/+7 |
| | | | | evaluation | ||||
* | bugfix: internal error in evalFieldAccess; parseutils.interpolatedFragments ↵ | Araq | 2011-09-26 | 1 | -12/+16 |
| | | | | optimized; tstringinterp.nim now works | ||||
* | Moved the parseAST magics to evals.nim | Zahary Karadjov | 2011-09-20 | 1 | -1/+28 |
| | | | | | | | | | | | | | | Added string interpolation helper routines in parserutils Added a proof-of-concept string interpolation user-land macros (currently, only as a test case): the interpolated expression could either be transformed to concat("literal string ", $(interpolated), " end") or "literal string $1 end" % [$(interpolated)] Added a very initial definition of Optional[T] generic type A new overload of ParseIdent was added in hope to get around the fact that the old one doesn't work correctly in macros, but the problem persists. | ||||
* | Initial implementation of the parseExpr, parseStmt, getAst macro routines: | Zahary Karadjov | 2011-09-20 | 1 | -1/+8 |
| | | | | | | | | | | | | | | | | | | proc parseExpr*(s: string) : expr {.magic: "ParseExprToAst".} ## Compiles the passed string to its AST representation ## Expects a single expression proc parseStmt*(s: string) : stmt {.magic: "ParseStmtToAst".} ## Compiles the passed string to its AST representation ## Expects one or more statements proc getAst*(macroOrTemplate: expr): expr {.magic: "ExpandMacroToAst".} ## Obtains the AST nodes returned from a macro or template invocation ## example: ## macro FooMacro() = ## var ast = getAst(BarTemplate()) Handling of the node.toYaml magic moved to the evaluation engine. | ||||
* | small bugfix for eval | Araq | 2011-08-19 | 1 | -1/+1 |
| | |||||
* | finally got rid of nkPassAsOpenArray | Araq | 2011-08-16 | 1 | -1/+0 |
| | |||||
* | preparation for new 'is' operator; breaks bootstrapping again, sorry (use ↵ | Araq | 2011-07-31 | 1 | -3/+3 |
| | | | | generated C code) | ||||
* | bugfixes; step one for 'var T' as return type support | Araq | 2011-07-28 | 1 | -2/+3 |
| | |||||
* | implemented write access to s[i] for macros | Araq | 2011-06-21 | 1 | -19/+34 |
| | |||||
* | newStringOfCap implemented and used to optimize some procs | Araq | 2011-05-08 | 1 | -1/+7 |
| | |||||
* | const table support | Araq | 2011-04-29 | 1 | -14/+19 |
| | |||||
* | got rid of some arcane module names | Araq | 2011-04-21 | 1 | -1/+1 |
| | |||||
* | big repo cleanup | Araq | 2011-04-12 | 1 | -0/+1110 |