Commit Graph

25 Commits

Author SHA1 Message Date
Andreas Rumpf
70ea45cdba deprecated unary '<' 2017-10-29 08:37:13 +01:00
Andreas Rumpf
46efaf294b big compiler refactoring; avoid globals for multi method dispatcher generation 2017-02-22 16:27:52 +01:00
Andreas Rumpf
b47d9b7b91 fixes #4371 2016-07-08 10:34:12 +02:00
Yuriy Glukhov
b6f5c12158 Fixed tr pattern matching for varargs 2016-04-07 21:24:43 +03:00
Adam Strzelecki
d681812465 compiler: Trim .nim files trailing whitespace
via OSX: find . -name '*.nim' -exec sed -i '' -E 's/[[:space:]]+$//' {} +
2015-09-04 23:03:22 +02:00
Adam Strzelecki
13b57dbc2f Introduce {.noRewrite.} expr pragma disabling TR
Term rewriting macros/templates are currently greedy and they will rewrite as
long as there is a match. So there was no way to ensure some rewrite happens
only once, eg. when rewriting term to same term plus extra content.

With new macro we can actually prevent further rewriting on marked expr or
stmts, eg. with given example echo(...) will be rewritten just once:

  template pwnEcho{echo(x)}(x: expr) =
    {.noRewrite.}: echo("pwned!")

  echo "ab"
2015-06-02 21:38:53 +02:00
Federico Ceratto
657dca5c3b Fix typos 2015-02-15 16:20:32 +00:00
Araq
fd532b6dab fixes #206 2014-11-16 21:59:21 +01:00
Araq
2781fea9e2 Nimrod renamed to Nim 2014-08-28 09:38:14 +02:00
Araq
3c818c89be fixes #1285 2014-06-30 23:36:46 +02:00
Araq
73c6efdf66 'nil' as a statement is deprecated, use an empty 'discard' instead 2014-01-19 16:54:59 +01:00
Araq
92b8fac94a case consistency part 4 2013-12-27 23:10:36 +01:00
Araq
9de3bc8ef6 improvements for TR macros 2013-09-17 23:43:07 +02:00
Araq
c98696d742 lazy paths for Babel support 2012-12-11 20:06:15 +01:00
Araq
7171ae62cb constraint now part of the parameter symbol and not of the type 2012-12-05 01:39:49 +01:00
Araq
92b449562e tr macros now documented 2012-09-10 19:34:16 +02:00
Araq
d3d9d32c35 first steps to deprecate 'nil' statement 2012-09-09 01:08:00 +02:00
Araq
46e9ff6139 tmatrix.nim works now 2012-09-08 18:51:52 +02:00
Araq
b64eeeb430 term rewriting improvements 2012-09-08 15:43:21 +02:00
Araq
355ae07b8f activated tests for tr macros 2012-09-06 00:23:55 +02:00
Araq
30c00aba07 bugfixes and improvements for term rewriting macros 2012-09-04 23:57:39 +02:00
Araq
6753d36854 further improvements for term rewriting macros 2012-09-04 00:55:13 +02:00
Araq
af7c92c003 term rewriting macros fully implemented; still buggy 2012-09-03 00:55:44 +02:00
Araq
1d14cb1ad8 next steps towards term rewriting macros; simple examples work 2012-08-30 22:55:32 +02:00
Araq
1786e30991 first steps towards term rewriting macros 2012-08-30 10:55:40 +02:00