Commit Graph

7456 Commits

Author SHA1 Message Date
Araq
3628731064 unicode: invalid utf-8 bytes are preserved 2012-04-13 18:52:54 +02:00
Araq
82813e58c4 Merge branch 'master' of github.com:Araq/Nimrod 2012-04-13 18:37:17 +02:00
Araq
fe750a5cf9 performance improvements for ropes 2012-04-13 18:36:55 +02:00
Zahary Karadjov
caf7878009 Proper C scopes for if, try and case statements
even thought the setjmp implementation for try statement won't be used in C++,
using properly scoped variables for them is beneficial, because we'll be able to
establish a 1:1 relation between nimrod scopes and C scopes.
Once we have that, we'll be able to keep the original names of local variables
to greatly improve the debugging experience (i.e. watch expressions and
hover tooltips will work).
2012-04-12 17:52:55 +03:00
Zahary Karadjov
d2b45dbe85 C variables are created in their enclosing block instead of their enclosing function 2012-04-12 14:12:32 +03:00
dom96
bac790ae3b The build.sh file generated by niminst now supports a --extraBuildArgs param. 2012-04-11 20:45:27 +01:00
Zahary Karadjov
238202ccbc re-enable rodfiles tests; fixes #91 2012-04-11 01:52:12 +03:00
Zahary Karadjov
c1ad05c4c5 Merge branch 'master' of github.com:Araq/Nimrod into upstream 2012-04-10 22:39:00 +03:00
Zahary Karadjov
97ab16d46b typetraits module and tests 2012-04-10 22:32:23 +03:00
Zahary Karadjov
a64f03230a proper order of initialization for .global. variables 2012-04-10 20:53:44 +03:00
Araq
c53ad1b39f documentation improvements; higher level Mongodb wrapper 2012-04-09 11:18:10 +02:00
Araq
e9260e6c4d C sources rebuilt for BSD 2012-04-07 00:47:00 +02:00
Araq
e0e4e38272 yet attempt to fix realpath for BSD 2012-04-07 00:44:00 +02:00
Araq
1123252db5 bugfix: expandFilename for BSD 2012-04-06 23:42:33 +02:00
Araq
121e375f15 C sources rebuilt for BSD support 2012-04-06 22:45:55 +02:00
Araq
039f21ffd6 small fixes for BSD 2012-04-06 22:43:00 +02:00
Araq
ba3f90cc25 added terminal.isatty; nimgrep version 0.9 2012-04-06 21:26:48 +02: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
Araq
07b355bea4 better opengl wrapper; oids and endians modules documented 2012-04-04 21:26:23 +02:00
Araq
a4a99ae997 added libsvm wrapper 2012-04-04 16:01:28 +02:00
Araq
b9f99565e9 added new OpenGL wrapper 2012-04-04 01:40:39 +02:00
Araq
f788f603fe Merge branch 'master' of github.com:Araq/Nimrod 2012-04-01 01:01:25 +02:00
Araq
3ef9f54cc1 added strutils.parseEnum; fixes #95 2012-04-01 00:31:22 +02: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
c7fc519fa3 forgot to add lib/system/embedded.nim 2012-03-31 01:18:49 +02:00
Araq
b2c255c739 bugfix: DLLs should compile again 2012-03-31 01:16:44 +02: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
ff3e80279b corrected the index website 2012-03-28 20:50:40 +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
16adc837be added htmlgen to docs 2012-03-23 23:28:55 +01: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
22c310485a Merge branch 'master' of github.com:Araq/Nimrod 2012-03-23 00:16:50 +01:00
Araq
0857efe512 some bugfixes for symbolfiles 2012-03-23 00:16:29 +01:00
dom96
4218cde549 Forgot to rename ETimedout to ETimeout in the sockets module in some places. 2012-03-22 20:48:16 +00:00
dom96
ace6a854a6 Added benchmark tool and some benchmarks. 2012-03-22 20:15:16 +00:00
dom96
e14bad3c66 Fixed a problem with message parsing in the IRC module. Introduced timeout to procs in the sockets module. 2012-03-22 18:33:09 +00: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