José Valim
3e6e6ee99b
Update exdoc links
2013-04-24 11:16:28 -06:00
José Valim
c125636535
Ensure the macro system respects imports hygiene, closes #875
2013-04-13 18:25:43 -07:00
José Valim
531bd8da0c
Ensure hygiene also works with directl calls to Kernel.function
2013-04-13 17:19:19 -07:00
José Valim
a4d8fc2893
Ensure hygiene applies to function and partial applications
2013-04-13 17:19:19 -07:00
José Valim
b96c3c52ae
Remove check_require in favor of a meta tag
2013-04-13 17:19:19 -07:00
José Valim
3f7b867740
Refactor elixir_dispatch to rely more on elixir_scope
2013-04-13 17:19:19 -07:00
Yurii Rashkovskii
8d2034f07c
Implement Record.import macro that allows using private macros on public records
2013-04-11 16:28:44 -07:00
José Valim
ca0250a9d7
Refactor find_dispatch to loop data functions and macros lists just once
2013-04-10 15:47:37 -07:00
alexrp
a34f38ee40
Only error on ambiguous imported function calls, not on the imports themselves. Fixes #788 .
2013-04-11 00:18:09 +02:00
José Valim
f7cad1cffc
Improve error messages
2013-03-27 09:54:00 -06:00
José Valim
98e488a52d
Aliases defined inside macros should be carried over
2013-02-26 14:18:37 -07:00
José Valim
5557e620ff
Backwards incompatible change on before_compile and after_compile
...
Both callbacks now receive the environment as
first argument instead of the module.
2013-02-16 19:57:14 -07:00
José Valim
28211b2714
Ensure aliases expansion also works for implicit aliases
2013-02-03 21:57:39 -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
4e651c8aae
Expand aliases inside quote
2013-01-11 09:55:38 +01:00
José Valim
eaa9714b3a
Improve hygiene for variables, related to #722
2013-01-10 14:29:45 +01:00
Yurii Rashkovskii
36c9e11064
Remove __info__/1 from __info__(:functions)
...
Closes #734
2012-12-24 12:51:09 +01:00
José Valim
743213d8c1
halt was moved to System module
...
`halt` is a function that is less frequently used than the other
functions in Kernel, not allowed in guard clauses and its outcome
is to shutdown the whole runtime, being a great fit to the System
module.
2012-11-13 09:23:21 +01:00
José Valim
2f3289aaef
Try a different and simpler approach to clauses warnings, closes #567
2012-10-24 16:57:23 +02:00
José Valim
69e4f6c24c
Make function naming consistent across modules
2012-10-10 08:54:38 +02:00
José Valim
fac57e78b2
Ensure Kernel.__info__(:functions|:macros) returns the complete set
2012-10-05 15:45:28 -07:00
José Valim
6c87df4c7a
If we are connected to a remote node, print "rem" in iex
...
This makes it easy to check if we are on a remote node or not.
2012-08-09 10:42:54 -03:00
José Valim
152c784a07
Add binary_part to the list of guard functions
2012-07-24 13:04:33 +02:00
José Valim
7d1ef13f17
Rename Elixir.Builtin to Kernel, according to #390
2012-07-22 11:23:35 +02:00
José Valim
6a7602d974
Avoid nil conversion if expression is known to return a boolean
2012-07-22 10:30:16 +02:00
José Valim
175e90d6af
Initial work on removing fn ambiguity
2012-07-21 12:31:03 +02:00
José Valim
fea9455eb7
Add self() back since it is allowed in guard clauses
2012-07-17 13:49:34 +02:00
José Valim
6c5b3134af
Add function_exported?, improve warnings for behaviors
2012-07-16 15:29:29 +02:00
José Valim
1b4603160c
Add elixir's parse transform to be used with erlang code
2012-07-12 11:29:46 +02:00
José Valim
d5031b6347
Move all code to erlang style apps
2012-07-05 20:20:16 +02:00