Commit Graph
51 Commits
Author SHA1 Message Date
José Valim c6284557e7 Rename sigils from __ to sigil_$, closes #1301 2013-06-23 20:38:37 +02:00
José Valim 903aa60fec Finish operator table clean up 2013-06-23 13:18:25 +02:00
José Valim 969bc968ee Move ++, --, ** and // to new table 2013-06-23 13:18:25 +02:00
José Valim e941d78daf Move operator table clean up 2013-06-23 13:18:25 +02:00
José Valim 8d3475825b Group arrow-like ops together 2013-06-23 13:18:25 +02:00
José Valim 68c890e179 Move and and or operators to the new table 2013-06-23 13:18:25 +02:00
José Valim 6f73d7dbb9 Move comp_op to the new table 2013-06-23 13:18:25 +02:00
José Valim c2ac967123 Move all unary operators to new schema 2013-06-23 13:18:25 +02:00
José Valim dd573c9806 Initial work cleaning up op table 2013-06-23 13:18:25 +02:00
José Valim 2d8259b432 Support (x, y) when z, closes #1313 2013-06-22 18:53:18 +02:00
José Valim 67896b56c5 Ensure errors point to the proper -> clauses
This commit changes the -> clauses representation from:

    { :->, meta, list({ list(expr), expr }) }

To:

    { :->, meta, list({ list(expr), meta, expr }) }

Now clauses can store metadata, which allows us to provide
accurate reporting information.

Closes #1215
2013-06-16 17:27:14 +02:00
José Valim 99cdb412e3 Give higher precedence to |> than =~ 2013-05-29 03:19:45 +02:00
José Valim 0dcd5501f0 Fix a bug where unquote_splicing did not work on the left side of a stab op 2013-05-23 23:50:16 +02:00
José Valim 2c98c0999d An Elixir module now translates to Elixir.Module instead of Elixir-Module 2013-05-23 14:36:56 +02:00
José Valim 9b0353a747 Improve error messages when there is a space in between function name and parenthesis 2013-05-21 12:57:22 +02:00
José Valim 05b650f373 Change preference of |> to support constructs like 1..5 |> Enum.to_list 2013-05-19 18:33:14 +02:00
José Valim 16e18240c6 Remove special case for implicit splicing inside quote 2013-05-01 00:29:40 -07:00
José Valim 61727e5c5d Ensure do/else|*/end are inlinable, closes #966 2013-04-30 14:47:14 -07:00
José Valim 20942ee329 Better support for Unicode lists 2013-01-28 11:43:25 -07:00
José Valim fef7ef7233 Ensure consistent use of stab operator in do/end, parens and fn/end, closes #780 2013-01-27 11:00:59 -07:00
José Valim 89cbe93bba The AST now allows metadata to be attached to each node
This means the second item in the AST is no longer an integer
(representing the line), but a keywords list. Code that relies
on the line information from AST or that manually generate AST
nodes need to be properly updated.
2013-01-21 15:42:03 -07:00
José Valim 4633c6449d Update LICENSE 2013-01-21 07:55:39 -07:00
alexrp 531e64c66a Add back /> as a deprecated operator.
This commit can simply be reverted when the operator is to be removed.
2013-01-08 01:12:15 +01:00
alexrp c9908a23dd The pipeline operator is now '|>'.
Fixes #718.
2013-01-07 23:38:55 +01:00
José Valim f249eab01e Ensure parenthesis are allowed in call args 2012-11-29 23:58:25 +01:00
José Valim ced5a4386b Support -> inside parenthesis
This is consistent with the fact that do...end
is a direct translation to do: (...).
2012-11-29 23:47:53 +01:00
José Valim e11285007e More work on improved typespec syntax 2012-11-29 14:13:26 +01:00
José Valim 7ddab53707 Also allow multiclause functions on fn
The function macro is still necessary for function
retrieval and it will be extended when R16 is out
to supported named functions
2012-11-25 00:06:39 +01:00
José Valim ce489eae2b Only allow () under special circunstances 2012-11-08 16:00:16 +01:00
José Valim 02e63e4849 Ensure parenthesis can be used in macros and fn shortcut, closes #634 2012-11-08 15:52:52 +01:00
José Valim 833a153b33 Avoid dispatching to locals from compiled structures 2012-10-29 00:45:32 +01:00
José Valim ca0dbe8f46 Merge pull request #555 from elixir-lang/jv-unordered-keywords
Unordered keywords
2012-10-19 02:54:14 -07:00
José Valim 43d3e3eba6 Remove convertion to atom from parser 2012-10-18 15:12:52 +02:00
Yurii Rashkovskii baa28932f9 Keywords are no longer sorted 2012-10-17 00:06:41 -07:00
José Valim fe788964bd Add optional comma in lists, tuples, bit strings and keywords, closes #479 2012-09-23 11:43:38 -05:00
José Valim d025e9f149 Fix regression in parser 2012-09-13 14:01:21 +02:00
José Valim c7a7022bf3 Properly expand other unquote expressions 2012-09-11 22:19:31 +02:00
José Valim 6a516efc1b Allow mod.unquote(fun)(args) on quote 2012-08-28 16:10:08 -03:00
José Valim c229d34c03 Fix precedene of @ operator 2012-08-27 19:12:09 -03:00
José Valim cb78831b4e Properly expand access on module attributes 2012-08-27 15:54:43 -03:00
José Valim e0d585b1d2 Improvements to the access protocol
* Allow @config[:access] to expand to (@config)[:access]

* Allow nil[:access] to work as expected
2012-08-24 13:03:02 -03:00
José Valim 7c4e7fe077 Allow nested access 2012-08-08 09:23:43 -03:00
José Valim d35d0f41c8 Clean up fn implementation 2012-07-21 13:40:02 +02:00
José Valim 175e90d6af Initial work on removing fn ambiguity 2012-07-21 12:31:03 +02:00
José Valim efd161d145 Add File.iterator 2012-07-20 20:23:28 +02:00
José Valim 9c4c9e8bb0 Ensure there is no ambiguity in tuples 2012-07-18 20:57:07 +02:00
José Valim df2254f8a3 Pipeline op must be right associative 2012-07-11 11:48:38 +02:00
José Valim acc4b8e6fe Introduce regex match operator (=~) 2012-07-08 21:17:10 +02:00
José Valim 7e068aca85 Introduce pipeline op 2012-07-06 11:56:04 +02:00
José Valim 3f82624d0f Introduce new operators: <<<, >>>, &&&, |||, ^^^, ~~~ 2012-07-06 10:58:39 +02:00