Zahary Karadjov
c1ad05c4c5
Merge branch 'master' of github.com:Araq/Nimrod into upstream
2012-04-10 22:39:00 +03:00
Zahary Karadjov
a64f03230a
proper order of initialization for .global. variables
2012-04-10 20:53:44 +03:00
Zahary Karadjov
e941a14767
completing the "types as first class values" reform
2012-04-06 18:14:12 +03:00
Zahary Karadjov
efb53233cb
the foundations of a type traits module; better error messages for expr, typedesc and typeclasses params
2012-04-06 13:46:31 +03:00
Araq
0f96e72b18
fixed another docgen bug; initial mongodb wrapper
2012-04-06 00:41:27 +02:00
Zahary Karadjov
98b7bdaa50
when expressions, proper rendering for nkDo and nkLambda and parser support for x.type and x.addr
2012-04-05 22:43:37 +03:00
Zahary Karadjov
6d80583d5a
Added `global` pragma that can be used to introduce new global variables from within procs
2012-04-05 20:43:22 +03:00
Zahary Karadjov
8d698b2bdd
Merge branch 'master' of github.com:Araq/Nimrod into upstream
2012-03-31 18:51:11 +03:00
Zahary Karadjov
22dc76a361
typedesc and expr params
...
types are now valid proc/template/macro params and you can overload over them:
proc foo(T: typedesc) # accept any type
proc foo(T: typedesc{int}) # overload specifically for int
proc foo(T: typedesc{int or float or Callable}) # overload for any type matching the constraints
expr{type} is a param expecting compile time value of the designated type (or type class).
when typedesc or expr params are used with a proc, the proc will be instantiated once
for each unique type/value used as parameter.
2012-03-31 18:50:48 +03:00
Araq
142e849b91
implemented support for the AVR CPU and standalone OS
2012-03-31 01:03:14 +02:00
Araq
97743faa83
tests tcnstseq and tcnstseq3 work again
2012-03-28 23:03:55 +02:00
Araq
1af0601011
bugfix #100 again
2012-03-28 16:43:05 +02:00
Araq
a79acb58fc
attempt to fix a bug concerning implicit type conversions in case statements
2012-03-27 00:48:59 +02:00
Zahary Karadjov
6216046bc6
genSym support for hygienic macros and templates.
...
example:
template hygienic(val: expr) =
var `*x` = val
echo `*x`
*x was chosen as mnemonic for "opposite of public" and thus private
2012-03-26 04:36:26 +03:00
Zahary Karadjov
bc2eb0ea9b
generic types can be used like type classes. distinct can be applied to type classes.
2012-03-25 20:55:21 +03:00
Araq
91db6bd9c9
fixes #102
2012-03-23 20:28:35 +01:00
Araq
5c33f76517
bugfix: GC marker procs; making tests green again
2012-03-23 09:29:53 +01:00
Araq
0857efe512
some bugfixes for symbolfiles
2012-03-23 00:16:29 +01:00
Zahary Karadjov
296ef07955
tyOrdinal now means "integral types". tyTypeClass created to take care of type constraints
2012-03-22 16:24:12 +02:00
Zahary Karadjov
3a5cf3d63a
expr params implemented for procs; paving the way for type classes
2012-03-22 03:27:00 +02:00
Araq
4f22326b24
Merge branch 'master' of github.com:Araq/Nimrod
2012-03-21 23:11:16 +01:00
Araq
03ba0f3e25
implemented marker procs for the GC resulting in huge speedups
2012-03-21 23:10:56 +01:00
Zahary Karadjov
70f5236d48
untyped proc/template/macro params default to expr
2012-03-20 17:44:30 +02:00
Zahary Karadjov
a72fe16f9d
making tests green again
2012-03-20 14:44:23 +02:00
Araq
bb1885115d
Merge branch 'master' of github.com:Araq/Nimrod
2012-03-19 22:12:08 +01:00
Araq
7cd2f353c7
preparations for marker procs generation
2012-03-19 22:11:19 +01:00
Zahary Karadjov
7b41b0f841
missed file from the previous commit
2012-03-19 12:14:32 +02:00
Zahary Karadjov
e43f8d842b
merged branch overloading-for-macros
2012-03-19 12:06:38 +02:00
Araq
be1154106a
clean separation of PNimrodNode and tyExpr
2012-03-16 19:33:24 +01:00
Zahary Karadjov
72f2a6e275
the test suite is mostly green again
2012-03-16 05:33:21 +02:00
Zahary Karadjov
6975ba401b
fix for template redefinition. test cases added.
2012-03-15 14:15:37 +02:00
Araq
4da067691e
implemented 'static'; macros do not work anymore
2012-03-15 00:28:28 +01:00
Zahary Karadjov
d1d5fc8254
allowing definitions of procs and templates to be overridden in local scopes
2012-03-14 21:01:18 +02:00
Zahary Karadjov
c45b714dfb
allowing multiple definitions of templates
2012-03-14 21:01:18 +02:00
Zahary Karadjov
e5bd3b5b97
bootstraps fine with overloadable templates
2012-03-14 21:00:42 +02:00
Araq
c25ffbf262
first steps for cleaner static/const distinction
2012-03-13 02:01:56 +01:00
Araq
1d8ff40f56
vars can be 'compileTime'; shallow introduced weird string aliasing bug
2012-03-11 12:01:10 +01:00
Araq
ec0f982ed4
attempt to make tests green again
2012-03-11 01:46:37 +01:00
Araq
e88123fb17
fixes #100
2012-03-10 12:43:04 +01:00
Araq
ff4a69b624
win64 is a supported target; bugfix: nimrod c -r on windows; stdlib uses wide char versions of the WinAPI
2012-03-04 21:44:56 +01:00
Araq
34d3c042af
c2nim, pas2nim compile again
2012-02-29 00:04:34 +01:00
Araq
4a9e07a47c
ERecoverableError exception contains the error message
2012-02-25 12:57:16 +01:00
Araq
96e7ee91cc
added docgen.rst2html for the forum; fixed tester bug concerning removeDir
2012-02-21 21:03:36 +01:00
Araq
ccd58fba2c
bugfix: semfold supports merging of '&'
2012-02-19 21:01:04 +01:00
Araq
a13a14327a
fixes #99
2012-02-17 20:19:14 +01:00
Araq
547e8aa418
Merge branch 'master' of github.com:Araq/Nimrod
2012-02-17 02:16:50 +01:00
Araq
97366d4419
bugfix: optimization of complex constant string concatenations
2012-02-17 02:16:33 +01:00
dom96
6901a725d5
niminst is now able to create build files for debhelper so that .deb packages can be created. Implemented $ in the times module for TWeekDay and TMonth.
2012-02-16 22:11:00 +00:00
Araq
375c95d3ad
bugfix: no need for arrows to be new token kinds
2012-02-12 18:56:36 +01:00
Zahary Karadjov
560a3bad28
`do' keyword in the grammar for lambda blocks
2012-02-10 14:50:35 +02:00