Commit Graph
78 Commits
Author SHA1 Message Date
José Valim 0510512375 Deprecate to_binary in favor of to_string
We also rename Binary.Chars to String.Chars.

As Binary.Chars was the protocol used for interpolation,
it is semantically correct to have a protocol that works
on strings, instead of raw binaries.
2013-08-22 12:19:30 +02:00
José Valim 3e1099830a Properly handle @file that comes from warnings 2013-08-20 11:39:29 +02:00
José Valim baf647986f Avoid extra eval on EEx 2013-08-19 22:17:29 +02:00
José Valim cea31f69dc Review and deprecate list <-> binary conversion 2013-08-14 11:16:37 +02:00
José Valim 52188fab89 Move from unicode to list to String.to_char_list 2013-08-13 08:39:16 +02:00
José Valim 19ac199b06 Move from unicode to binary to String.from_char_list 2013-08-13 08:39:16 +02:00
José Valim 6a68ca5eef Deprecate function/1 and function/3 2013-07-31 12:58:07 +02:00
José Valim ac666a9731 Improve docs for EEx.AssignsEngine, closes #1499 2013-07-27 09:55:24 +02:00
José Valim 7ed1f2cbef EEx exprs should receive binaries and use Behaviour 2013-07-20 16:35:32 +02:00
José Valim ebe522ec50 Tighten up the grammar rules regarding parentheses omission
Prior to this commit, Elixir allowed too many ambiguous calls
by ommitting the parentheses:

    do_something 1, is_list [], 3
    [1, is_atom :foo, 3]

Both cases above would lead to a compilation error, as an attempt
to call is_list/2 and is_atom/2 would happen. Those examples will
now raise a syntax error, pointing to the ambiguous location.

We have disallowed such examples throughout the language with
the exception of one argument calls:

    assert is_list []

Examples as above are extremely frequent and were kept as is.
2013-07-04 18:48:55 +02:00
José Valim cdd8e5862d Rename the ExUnit option from debug to trace 2013-07-01 16:41:34 +02:00
José Valim 3bac4ddec6 Support --debug on internal tests which are not run through mix 2013-07-01 14:20:33 +02:00
Rafael Mendonça França 7cdc25538e Uniform use of whitespace after commas on codebase
This make easier to read and also follow some standard in the code
2013-06-15 16:52:48 -03:00
Yuki Ito 961099746e Implicit super arguments is deprecated 2013-06-13 00:42:34 +09:00
José Valim 6d2569ff9b Merge pull request #1023 from alco/eex-unicode
Add support for unicode to EEx.Tokenizer
2013-05-06 16:21:56 -07:00
Alexei Sholik ce39f23388 Add support for unicode to EEx.Tokenizer 2013-05-07 02:14:48 +03:00
José Valim cbe82e0912 Add __DIR__, closes #1019 2013-05-06 11:03:37 -06:00
José Valim 8994feb0a3 Fix unused vars warnings 2013-02-02 13:33:00 -07:00
José Valim 4d3d61e173 Deprecate :local.(args) syntax 2013-01-28 21:21:18 -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 fda6f0ce09 Move path related functions from File to Path 2013-01-19 09:36:03 -07:00
José Valim 9b3d851a9c Deprecate record default-based generated functions 2012-12-01 11:14:45 +01:00
José Valim 4f3e66cdfd Refactor elixir_tokenizer scope options 2012-10-18 14:46:54 +02:00
Yurii Rashkovskii 435c4615d1 Make tokenizer be able to limit atoms to existing atoms only 2012-10-18 13:10:35 +02:00
José Valim 626ed9532b Erlang. syntax is deprecated in favor of simply using atoms 2012-10-05 17:08:22 -07:00
José Valim adbe6fc3b6 Support <%% and <%# in EEx, closes #287 2012-10-03 21:42:10 -07:00
José Valim c63a07f928 Now we employ consistently zero-based indexes, closes #459 2012-09-10 10:39:21 +02:00
José Valim fe381f970e Break IEx into its own application 2012-09-06 13:50:51 +02:00
José Valim 68828d2b49 Code.require_file and Code.load_file now expect the full name as argument 2012-08-21 11:21:21 -03:00
José Valim bc4918ee0d Ensure quoted variables are properly carried in clauses 2012-08-17 11:11:04 -03:00
José Valim a00c64681d Add Enum.reverse 2012-08-09 08:53:48 -03:00
José Valim d857b7b3f5 MixFile -> Mixfile 2012-07-31 15:37:04 +02:00
José Valim 72dd2507b0 Initial work on mix new 2012-07-25 10:34:44 +02:00
José Valim 61a27d1be6 Remove the need for special <& &> tags, closes #393 2012-07-21 18:40:57 +02:00
José Valim cc99da19dc Simplify EEx.Tokenizer 2012-07-20 23:04:05 +02:00
José Valim c9756b55f2 Add run and deps.loadpaths to mix 2012-07-19 16:00:31 +02:00
José Valim ba17e8ac78 Use mix to generate .app files 2012-07-19 08:38:26 +02:00
José Valim 2c396b9cc1 Make the default for ExUnit case to be sync 2012-07-16 15:29:28 +02:00
José Valim d59f2f9e16 Allow env as a @file argument 2012-07-09 23:04:21 +02:00
José Valim d5031b6347 Move all code to erlang style apps 2012-07-05 20:20:16 +02:00
José Valim ebe7f6d226 Split eex from kernel 2012-07-04 22:13:00 +02:00
José Valim 77d018758b Move Elixir's kernel to lib/kernel 2012-07-04 18:52:40 +02:00
José Valim ab61e6f95c Provide ranges and support them in the in operator 2012-06-18 21:49:38 +02:00
José Valim e51bc9e5aa Change comprehensions syntax to be more compatible with Erlang behavior, closes #335 2012-06-06 12:27:28 +02:00
José Valim aaf6c91e0e Rewrite use in Elixir, force it to rely on __CALLER__ 2012-05-28 13:23:04 +02:00
José Valim 1b22d34749 Implement EEx rules 2012-05-18 14:52:07 +02:00
José Valim 6029467073 Fix EEx (currently it does not support functions) 2012-05-13 22:00:53 +02:00
José Valim e476a5ef0d Stab at new syntax 2012-05-13 15:33:57 +02:00
José Valim 245c9788ce Docs for EEx 2012-05-08 10:57:34 +02:00
José Valim 7301733970 Do not hardcode blocks to use = as marker 2012-05-05 11:29:32 +02:00