Commit Graph

138 Commits

Author SHA1 Message Date
Araq
cd03f59432 implemented arrow like operators 2014-12-08 08:56:44 +01:00
Araq
e27ab36731 implements 'defer' 2014-12-04 10:12:32 +01:00
Araq
b2f577df23 fixes #1473 2014-11-12 02:36:59 +01:00
Araq
2781fea9e2 Nimrod renamed to Nim 2014-08-28 09:38:14 +02:00
Araq
2f43fdb837 renamefest 2014-08-23 01:43:49 +02:00
Araq
212293197f fixes #1161 2014-07-01 21:47:53 +02:00
flaviut
ce29b9f78c fix tokenizing bug 2014-06-08 19:41:36 -04:00
flaviut
145cb3ae8c fix overlooked grammer comment 2014-06-08 15:46:19 -04:00
flaviut
6b9359d901 updated grammer, fixed oversight 2014-06-04 15:40:31 -04:00
flaviut
90dc35c109 fix bug with unexpected tkInvalid,tkEof,tkComment 2014-06-04 15:30:37 -04:00
flaviut
7a9bcf4769 Clean up code 2014-06-03 19:05:12 -04:00
flaviut
20cb567bf5 Fix accents in enums 2014-06-03 14:15:32 -04:00
flaviut
3db3c0e382 Generalize accent parsing 2014-06-03 10:12:31 -04:00
Clay Sweetser
3afbe24b7c Document parser structures and procedures. 2014-05-25 01:50:23 -04:00
Araq
b961e47bfe new concurrency model: first steps; shared is not a keyword anymore 2014-04-14 08:45:43 +02:00
Araq
d96f25619a implemented 'R ptr T' syntax 2014-04-13 22:31:49 +02:00
Araq
9fdb131686 fixes #992 2014-03-26 16:22:34 +01:00
Zahary Karadjov
8a0509b3b2 implements `distinct with/without X, Y`
This still doesn't work quite right, because some common operations like array
indexing lay completely outside the scope/symbol lookup system - they are not
even magics.
2014-03-20 01:16:50 +02:00
Zahary Karadjov
7080d02af4 allow multi-line expressions using the dot operator
this enables parsing of expressions like:

``` Nimrod
s.items
  .map(proc (x): auto = x * 2)
  .filter do (x) -> auto:
    return x % 2 == 0
  .group_by((x) => x.length)
```
2014-03-16 20:42:06 +02:00
Zahary Karadjov
63d93ad1ab grammar fix: allow free-standing expressions such as type(foo) is bar 2014-03-16 20:42:06 +02:00
Araq
91d842e1ec implements strongSpaces parsing mode 2014-03-07 22:25:05 +01:00
Zahary Karadjov
492fa86638 the delegator pragma becomes a set of dot operators 2014-02-15 17:41:35 +02:00
Araq
3be07d842a fixes regression: constant fac4 didn't work 2014-02-06 02:41:53 +01:00
Araq
c30f6cfcf1 cleaned up command expressions 2014-02-02 14:34:37 +01:00
Araq
70eff919cd only 1 argument allowed for command expressions 2014-02-02 00:00:56 +01:00
Araq
9af1ab5f43 fixes a minor parser bug 2014-01-25 14:22:05 +01:00
Araq
3e5cb6644f typeClasses now documented in grammar.txt 2014-01-23 17:19:12 +01:00
Araq
37229df7fc next steps for closure iterators 2014-01-22 17:32:38 +01:00
Araq
4a0aadef4d parser support anon iterators 2014-01-20 20:07:44 +01:00
Araq
d18f40b4e2 updated grammar.txt 2014-01-20 08:35:09 +01:00
Araq
79f59d18f1 command syntax is allowed in expressions 2014-01-20 08:29:02 +01:00
Araq
73c6efdf66 'nil' as a statement is deprecated, use an empty 'discard' instead 2014-01-19 16:54:59 +01:00
Zahary Karadjov
afddae5aaf Merge branch 'upstream' into devel
Conflicts:
	compiler/ccgutils.nim
	compiler/msgs.nim
	compiler/sem.nim
	compiler/semexprs.nim
	compiler/seminst.nim
	compiler/semmagic.nim
	compiler/semstmts.nim
	compiler/semtypes.nim
	compiler/semtypinst.nim
	compiler/sigmatch.nim
	compiler/types.nim
	compiler/vmgen.nim
	lib/core/macros.nim
	lib/system.nim
	tests/reject/tenummix.nim
	web/news.txt
2013-12-29 17:21:00 +02:00
Araq
b731e6ef1c case consistency: cs:partial bootstraps on windows 2013-12-29 03:19:10 +01:00
Araq
438703f59e case consistency: next steps 2013-12-29 01:13:51 +01:00
Araq
92b8fac94a case consistency part 4 2013-12-27 23:10:36 +01:00
Araq
2df9b442c6 case consistency part 1 2013-12-27 15:48:53 +01:00
Zahary Karadjov
027f30610e static params: expr[T] is now static[T]
This introduces tyStatic and successfully bootstraps and handles
few simple test cases.  Static params within macros are no longer
treated as PNimrodNodes - they are now equivalent to constants
of the designated type.
2013-12-19 01:06:38 +02:00
Zahary Karadjov
31dd66acbf support for multiple test variables and var qualifiers in user-defined type classes 2013-11-13 02:24:08 +02:00
Araq
422327c010 fixed another semicolon related parsing bug 2013-10-02 07:57:30 +02:00
Araq
a943905d6c fixes #609 2013-10-01 20:24:37 +02:00
Araq
8b5aa221ad support for multiple modules of the same name; niminst supports 'platforms'; minor bugfixes 2013-09-24 16:07:07 +02:00
Araq
83584bf889 implemented 'import a as b' 2013-09-24 09:36:31 +02:00
Zahary Karadjov
6082595e96 Merge branch 'type-classes' into upstream 2013-09-03 03:14:56 +03:00
Araq
f2b9af6ae1 bugfix: line information for comments 2013-09-01 18:50:03 +02:00
Zahary Karadjov
b5d833b329 implemented the using statement 2013-08-31 19:40:36 +03:00
Zahary Karadjov
03577bc936 fix parsing of `proc foo(x: distinct Type)` 2013-08-24 23:44:37 +03:00
Zahary Karadjov
037a1a3e0f parsing of user defined type classes 2013-08-23 21:36:56 +03:00
Zahary Karadjov
ea54aa386c Revert "Revert "allow keyword params for the [] and {} operators""
This reverts commit b7ea4a7e65.
2013-08-19 01:29:22 +03:00
Araq
fd2a808266 fixes token's column information 2013-07-30 08:45:00 +02:00