Zahary Karadjov
dbcca9b3b9
Moved the parseAST magics to evals.nim
...
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.
2011-09-20 14:13:45 +03:00
Zahary Karadjov
9b95ca407d
Some very small steps towards an uuid generation module.
...
I did some basic research on cross-platform UUID generation and didn't want to lose any information, so this code only represents what I learned (uuidMacTime should work tho).
2011-09-20 14:13:45 +03:00
Zahary Karadjov
91351e5996
Initial implementation of the parseExpr, parseStmt, getAst macro routines:
...
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.
2011-09-20 14:13:45 +03:00
Zahary Karadjov
d541815e4b
Added AST introspection routines as a part of the standard library
2011-09-20 14:13:45 +03:00
Araq
daa2c8732d
Merge branch 'master' of github.com:Araq/Nimrod
2011-09-20 00:57:06 +02:00
Araq
fd62116f6e
bugfixes for generics; new threads implementation still broken
2011-09-20 00:56:48 +02:00
Keita Haga
8fa8ab5960
lib/wrappers/sphinx.nim: fix typo, use 'shpinx' instead of 'sphinx'
2011-09-09 19:03:33 +09:00
dom96
4896f63129
Some improvements relating to the IRC module.
2011-09-04 20:28:32 +01:00
dom96
fd01772634
Added IRC module.
2011-09-04 19:47:46 +01:00
Araq
dc3ace4f37
Merge branch 'master' of git@github.com:Araq/Nimrod
2011-08-29 01:15:42 +02:00
Araq
b9d0806e3b
added actors.nim file; compiler not up for this task
2011-08-29 01:15:29 +02:00
Araq
4839800c22
new actors implementation for nimrod; compiler's generics still not up for the task though
2011-08-29 01:14:26 +02:00
Araq
5112677904
attempt to fix tester.nim file handle leak
2011-08-29 01:13:38 +02:00
Keita Haga
15b1bda82b
lib/pure/strutils.nim: fix doc comment for splitLines
2011-08-25 21:04:55 +09:00
Araq
82af6387d9
bugfix: fixed built-in 'reset'
2011-08-20 15:36:26 +02:00
Araq
dd190a5c01
more occurences of 'pure' proc pragma fixed
2011-08-20 01:01:46 +02:00
Araq
d560e84fcc
locks now in their own core module
2011-08-20 00:24:02 +02:00
Araq
5cba831c88
'pure' is now 'noStackFrame' for procs
2011-08-19 19:11:58 +02:00
Araq
c7b130b4e2
implemented --nimcache config option; big clean up of magic words
2011-08-19 01:46:24 +02:00
Araq
dd9a591f7a
Merge pull request #51 from keitahaga/fix-typo
...
Fix typo in cgi module; many thanks to keitahaga
2011-08-16 11:50:34 -07:00
Keita Haga
9da77eb5cb
lib/pure/cgi.nim: fix typo 'passwort' instead of 'password'
2011-08-17 02:08:49 +09:00
Araq
b0742c5b27
finally got rid of nkPassAsOpenArray
2011-08-16 08:56:53 +02:00
Araq
f3007cbd72
Merge branch 'master' of git@github.com:Araq/Nimrod
2011-08-15 19:40:12 +02:00
Araq
2183bf77a6
added xmltree.innerText; fixes #49
2011-08-15 19:40:00 +02:00
Keita Haga
b40d55b68e
lib/pure/terminal.nim: fixed bug where the styleReverse doesn't work on Unix-like systems
2011-08-16 01:48:56 +09:00
Araq
c6038dda04
bugfix: running for threads
2011-08-12 01:24:47 +02:00
Araq
7ad5cab17e
added system.running for threads
2011-08-11 21:22:23 +02:00
Araq
72e7a98543
added system.slurp for easy embedding of resources
2011-08-10 00:43:58 +02:00
Araq
7000cf51b7
modifyable results for generics; teventemitter works
2011-08-09 01:40:12 +02:00
Araq
cb21fd4f8f
json code generation works again
2011-08-07 23:54:03 +02:00
Araq
5131b3cea4
support for C++ code generation; importcpp and importobjc pragmas
2011-08-07 21:02:09 +02:00
dom96
3e660efeb4
Fixed osproc.terminate for posix and improved some other osproc posix functions.
2011-08-03 22:38:21 +01:00
Araq
6a8a409f1b
preparation for new 'is' operator; breaks bootstrapping again, sorry (use generated C code)
2011-07-31 00:21:32 +02:00
Araq
68d7c61c24
fixed typo in events.nim; last commit fixed #39
2011-07-28 01:40:53 +02:00
Araq
f622647704
Merge pull request #41 from Amrykid/master
...
Updated events.nim
2011-07-27 16:15:15 -07:00
Amrykid
4f54b93bb9
Removed 'unnecessary' whitespace.
2011-07-27 18:12:32 -05:00
Amrykid
79dafe08e3
Renamed new* to init*.
...
Added example code for documentation.
Fixed a small documentation issue.
Rewrote newEventEmitter...
Updated test.
2011-07-27 18:04:13 -05:00
Araq
2f066395ba
bugfixes; step one for 'var T' as return type support
2011-07-28 00:53:52 +02:00
Amrykid
ecd62b955b
Small edit to documentation.
2011-07-27 17:41:32 -05:00
Amrykid
5209469fd7
Updated events.nim to use TEventEmitter instead of PEventEmitter.
2011-07-27 17:39:43 -05:00
Araq
0e7f2ca3f1
bugfixes; added events module, sequtils module
2011-07-26 00:46:41 +02:00
Araq
ef039a1325
doc improvements; added lazarus example
2011-07-24 23:07:40 +02:00
Araq
246b8d18a1
tests repaired; serious typo in the allocator fixed; fixes #32
2011-07-22 23:58:19 +02:00
Araq
569c1ce5ec
bugfix: proper cache for generic instantiations
2011-07-21 00:57:39 +02:00
Araq
81a917390b
shared untraced heap; bugfix: mem corruptions in message passing code
2011-07-18 23:59:39 +02:00
Araq
42e6130b2c
first steps to explicit channels for thread communication; added mainThreadId
2011-07-16 18:34:18 +02:00
Araq
3ed1c958f3
version 0.8.12
2011-07-10 16:53:24 +02:00
Araq
5b96eaa953
preparations for 0.8.12
2011-07-10 15:48:13 +02:00
Araq
2565ff8dde
basic message passing working
2011-07-09 01:18:33 +02:00
Araq
99bcc233cd
bugfix: 'set' overloadable; further steps for multi threading support
2011-07-08 01:29:15 +02:00