Commit Graph

2608 Commits

Author SHA1 Message Date
Zahary Karadjov
11cd0fde42 add static assertions in the generated code about platform-related assumptions 2012-10-11 13:22:18 +03:00
Araq
74acf05e0e bugfix: prevent endless loop in the parser for 'nimrod check' 2012-10-10 00:59:09 +02:00
Araq
d43febf81e first version of a memory profiler 2012-10-10 00:41:34 +02:00
Araq
cf06131dec better extension loading for the OpenGL wrapper 2012-10-09 17:11:33 +02:00
Zahary Karadjov
c27637747a bugfix: closures as default param values 2012-10-06 14:51:46 +03:00
Araq
a85b579718 bugfix: gensym in rofiles 2012-10-05 14:33:32 +02:00
Araq
350e178d83 Merge branch 'master' of github.com:Araq/Nimrod 2012-10-05 12:10:01 +02:00
Araq
01dfcf6310 code cleanup of caas 2012-10-05 09:52:40 +02:00
Zahary Karadjov
d9d82fb0af syntax compatibility between do blocks and stmt blocks
See the section `do notation` in the manual for more info.

* nkMacroStmt has been removed
   Macro statements are now mapped to regular nkCall nodes.
   The support for additional clauses (such as else, except, of, etc)
   have been restored - they will now appear as additional arguments
   for the nkCall node (as nkElse, nkExcept, etc nodes)

* fixed some regressions in the `is` operator and semCompiles
2012-10-04 15:37:26 +03:00
Araq
cc51581937 next steps for 'compiler as a service' 2012-10-03 21:32:06 +02:00
Araq
c2b8669e04 Merge branch 'master' of github.com:Araq/Nimrod 2012-10-03 20:51:22 +02:00
Araq
9fbee85cc9 first steps for compiler as a service 2012-10-03 20:49:43 +02:00
Zahary Karadjov
2e5265bef5 experimental support for querying the type of expressions within macros
normalised the line endings of macros.nim (minor edits otherwise)
2012-10-03 01:59:50 +03:00
Zahary Karadjov
9c8bc3a244 the is operator now works with type classes and type variables
bugfixes:
the DLL tests were failing on Mac OS X, due to an incorrect DynlibFormat
2012-10-03 01:59:49 +03:00
Zahary Karadjov
770d4a997e implemented case expressions 2012-10-03 01:59:49 +03:00
Zahary Karadjov
92f70b08f9 table constructors now mimic more closely the syntax of case... of...
see the safePrintF example in the manual as a motivation
2012-10-03 01:59:49 +03:00
Zahary Karadjov
f8184e3490 always print stack traces on errors in debug builds of nimrod
I've been using this for a while and it's really more convenient than hunting the message
in msgs.nim and grepping the error code in the whole project
2012-10-03 01:59:49 +03:00
Zahary Karadjov
698785ef5e bugfix: allow tuple constructors in generic code 2012-10-03 01:59:49 +03:00
Zahary Karadjov
7e44015491 implemented return type inference
Other fixes:
* bind once is now the default for type classes as documented in the manual
* fixes an issue in template overloading (erroneous  ambiguity when different typedesc params were used)
2012-10-03 01:59:49 +03:00
Araq
2b49000cbb Merge branch 'master' of github.com:Araq/Nimrod 2012-09-29 08:07:05 +02:00
Araq
3bcf9f4e53 opengl wrapper compiles under windows 2012-09-29 08:06:43 +02:00
Zahary Karadjov
2aabae702d fixes ttypeselectors 2012-09-28 14:30:48 +03:00
Araq
36efc380dd website improvements; better opengl wrapper (still broken) 2012-09-28 00:22:07 +02:00
Araq
5538727945 Merge branch 'master' of github.com:Araq/Nimrod 2012-09-26 02:22:39 +02:00
Araq
ca447be43e bugfix: c2nim and pas2nim work again 2012-09-26 02:22:22 +02:00
Zahary Karadjov
badb6c0f66 improved support for typedesc values
* can be stored in constants and variables (including in containers like sequences)
* can be passed to and returned from macros
2012-09-25 02:03:15 +03:00
Araq
1de4effb46 Merge branch 'master' of github.com:Araq/Nimrod 2012-09-23 21:35:33 +02:00
Araq
7c08d14cfd preparations for 0.9.0 2012-09-23 21:35:12 +02:00
Zahary Karadjov
27dc9fcb8f fixes #186 and the ttypedesc1 test case 2012-09-23 19:34:20 +03:00
Araq
83b90b941b bugfix: proc bodies as expr 2012-09-23 09:02:11 +02:00
Araq
92e49aeaaf fixes #73 2012-09-23 01:18:13 +02:00
Araq
603dc36008 bugfix: 'result' cannot be captured in a closure 2012-09-23 00:52:34 +02:00
Araq
ea4435544e implements/fixes #195 2012-09-22 23:09:25 +02:00
Araq
759b3201ad proc bodies can be expressions with a type 2012-09-22 22:43:36 +02:00
Araq
3ef146b0ea 'mixin' and 'interface' are now keywords 2012-09-22 10:04:31 +02:00
Araq
4577751bad bugfix: code generator can deal with ftpclient.nim 2012-09-21 22:07:26 +02:00
Araq
e605b22ccf bugfix: typeinfo generation (2) 2012-09-21 20:19:39 +02:00
Araq
32aa46a881 bugfix: typeinfo generation 2012-09-21 16:28:57 +02:00
Araq
043921c7a7 fixes #194 2012-09-20 23:44:52 +02:00
Araq
cb6ad8cb74 bugfix: 'nimrod i' works again 2012-09-18 20:59:14 +02:00
Araq
4892d6929a bugfix: 'defined/compiles' open an implicit mixin scope in generics 2012-09-18 16:27:02 +02:00
Araq
a71c5f98ea made tests green again 2012-09-18 00:36:48 +02:00
Araq
391fb89a3e some support for passing blocks to overloaded templates/macros 2012-09-17 20:30:15 +02:00
Araq
b83dce7281 bugfix: import of pure enums 2012-09-17 17:07:09 +02:00
Araq
c934db86ad stricter symbol lookup in generics 2012-09-17 17:01:34 +02:00
Araq
214c7a2ebd implemented a stack trace profiler 2012-09-15 00:21:10 +02:00
Araq
4a435a8fb4 Merge branch 'master' of github.com:Araq/Nimrod 2012-09-13 18:48:14 +02:00
Araq
d336cb4957 bugfix: echo vs debugEcho 2012-09-13 17:33:20 +02:00
Araq
a783077cfd splitted echo into echo/debugEcho 2012-09-13 08:46:24 +02:00
Araq
23c3af80f6 semExpr/semStmt merged 2012-09-13 08:33:55 +02:00