You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: _posts/2012-04-24-a-peek-inside-elixir-s-parallel-compiler.markdown
+1-1
Original file line number
Diff line number
Diff line change
@@ -74,7 +74,7 @@ In order to customize this process, we are going to take a look at Erlang's erro
74
74
75
75
## Custom error handler
76
76
77
-
By default, Elixir (and Erlang) code is autoloaded. This means that, if we invoke `List.delete` and the module `List` was not loaded yet, the Erlang VM is going to look into the `ebin` directory (the directory where we put compiled files) and try to load it. This process is controlled by the [`error_handler` module in Erlang](http://erlang.org/doc/man/error_handler.html) via two callback functions: `undefined_function` and `undefined_lambda`.
77
+
By default, Elixir (and Erlang) code is autoloaded. This means that, if we invoke `List.delete` and the module `List` was not loaded yet, the Erlang VM is going to look into the `ebin` directory (the directory where we put compiled files) and try to load it. This process is controlled by the [`error_handler` module in Erlang](http://www.erlang.org/doc/man/error_handler.html) via two callback functions: `undefined_function` and `undefined_lambda`.
78
78
79
79
As discussed in the previous section, we want to extend the error handler to actually stop the currently running process whenever a module is not found and resume the process only after we ensure the module is compiled. To do that, we can simply define our own error handler and ask Erlang to use it. Our custom error handler is defined as follows:
Copy file name to clipboardExpand all lines: _posts/2012-05-25-elixir-v0-5-0-released.markdown
+2-2
Original file line number
Diff line number
Diff line change
@@ -37,9 +37,9 @@ With v0.5.0 finally out, we are committing to a stable syntax and a basic standa
37
37
38
38
## Looking forward
39
39
40
-
There are still many, many things to do! In the next months, we will continue working on growing our community, talks and other documentation material. A huge thanks to [Alexei Sholik](http://twitter.com/true_droid) who is moving this area forward.
40
+
There are still many, many things to do! In the next months, we will continue working on growing our community, talks and other documentation material. A huge thanks to [Alexei Sholik](https://twitter.com/true_droid) who is moving this area forward.
41
41
42
-
We will also work on better integration and documentation on building Erlang systems. Erlang ships with the [Open Telecom Platform](http://en.wikipedia.org/wiki/Open_Telecom_Platform) which provides many tools to build distributed applications. In v0.5.0, all these tools are already available but we want to make the build process even simpler.
42
+
We will also work on better integration and documentation on building Erlang systems. Erlang ships with the [Open Telecom Platform](https://en.wikipedia.org/wiki/Open_Telecom_Platform) which provides many tools to build distributed applications. In v0.5.0, all these tools are already available but we want to make the build process even simpler.
43
43
44
44
In parallel, we will improve our [documentation generation tool](https://github.com/elixir-lang/ex_doc) and [build tool](https://github.com/elixir-lang/elixir/tree/master/lib/mix) which will likely be merged into core when they are solid enough.
Copy file name to clipboardExpand all lines: _posts/2012-08-01-elixir-v0-6-0-released.markdown
+2-2
Original file line number
Diff line number
Diff line change
@@ -19,8 +19,8 @@ When [we released version v0.5.0](/blog/2012/05/25/elixir-v0-5-0-released/), we
19
19
20
20
Our interactive shell (IEx) also had many improvements, thanks to the Elixir developer community. We now have easy access to documentation, remote shells, autocomplete and much more. In order to show you a bit of what you can do in this release, we have prepared a short (~6 min) screencast:
<ahref="http://vimeo.com/46709928">Elixir v0.6 quick tour - Mix and IEx</a> from <ahref="http://vimeo.com/user3182384">Plataformatec</a> on <ahref="http://vimeo.com">Vimeo</a>.
<ahref="https://vimeo.com/46709928">Elixir v0.6 quick tour - Mix and IEx</a> from <ahref="https://vimeo.com/user3182384">Plataformatec</a> on <ahref="https://vimeo.com">Vimeo</a>.
24
24
25
25
That's it. For the next months, we will continue improving Elixir (you can see some ideas floating around in the [issues tracker](https://github.com/elixir-lang/elixir/issues)) but we will start to focus on other tools and libraries for the community.
Copy file name to clipboardExpand all lines: _posts/2012-11-18-elixir-v0-7-1-released.markdown
+1-1
Original file line number
Diff line number
Diff line change
@@ -13,7 +13,7 @@ This is a minor release that contains a couple enhancements regarding UTF-8, [di
13
13
14
14
During this time traveling around, we have spoken at many conferences, as [Strange Loop](http://thestrangeloop.com/), [Øredev](http://oredev.org/), [QCon SP](http://qconsp.com/) and [Rupy](http://rupy.eu/) as well as at different companies. Developers from different backgrounds have shown interest in Elixir, [written about it](http://spin.atomicobject.com/2012/10/31/elixir-erlang-and-the-dining-philosophers/), joined us at #elixir-lang on freenode and contributed to the language. As of today, Elixir is powered by 51 different contributors!
15
15
16
-
In case you missed any of those conferences, [the talk I presented at Øredev is available and you can watch it now](http://vimeo.com/53221562). The slides are also available below.
16
+
In case you missed any of those conferences, [the talk I presented at Øredev is available and you can watch it now](https://vimeo.com/53221562). The slides are also available below.
17
17
18
18
If you want to hear more about Elixir at a conference or an event, please let us know. Thank you and don't forget to [give Elixir a try](/getting-started/introduction.html)!
Copy file name to clipboardExpand all lines: _posts/2013-05-02-elixir-on-xen.markdown
+1-1
Original file line number
Diff line number
Diff line change
@@ -18,7 +18,7 @@ You can learn more about Xen and the LING VM on the [Erlang on Xen website](http
18
18
19
19
## Getting started
20
20
21
-
In order to run Elixir on the LING VM, you need to produce a Xen image of your Elixir project. This can be done with the help of the [lingex project](http://github.com/maximk/lingex), created by the LING VM team.
21
+
In order to run Elixir on the LING VM, you need to produce a Xen image of your Elixir project. This can be done with the help of the [lingex project](https://github.com/maximk/lingex), created by the LING VM team.
22
22
23
23
Producing an Elixir image using the free Erlang on Xen Build Service requires just a few steps:
Copy file name to clipboardExpand all lines: _posts/2013-05-23-elixir-v0-9-0-released.markdown
+2-2
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ category: Releases
6
6
excerpt: Elixir v0.9.0 is released with support for reducers, umbrella projects, faster compilation times and dropped support for R15 and earlier OTP versions.
7
7
---
8
8
9
-
While [Programming Elixir](http://pragprog.com/book/elixir/programming-elixir) was being announced, we have been working on Elixir v0.9.0 which is finally out. This release contains new features, important performance optimizations and bug fixes.
9
+
While [Programming Elixir](https://pragprog.com/book/elixir/programming-elixir) was being announced, we have been working on Elixir v0.9.0 which is finally out. This release contains new features, important performance optimizations and bug fixes.
10
10
11
11
Elixir v0.9.0 also removes support for Erlang R15 and earlier versions. In case you still need to run Elixir software on R15, we have also released Elixir v0.8.3, which contains many of the enhancements in v0.9.0. Check the [CHANGELOG for more details for both releases](https://github.com/elixir-lang/elixir/blob/v0.9.0/CHANGELOG.md).
12
12
@@ -130,4 +130,4 @@ We have also many other smaller improvements:
130
130
131
131
A huge thank you to our community for sending bug reports, providing bug fixes and contributing all those amazing features. And when are **you** joining us? :)
132
132
133
-
Give Elixir a try! You can start with our [getting started guide](/getting-started/introduction.html), or [check this 30 minute video from PragProg](http://www.youtube.com/watch?v=a-off4Vznjs&feature=youtu.be) or buy the beta version of [Programming Elixir](http://pragprog.com/book/elixir/programming-elixir).
133
+
Give Elixir a try! You can start with our [getting started guide](/getting-started/introduction.html), or [check this 30 minute video from PragProg](https://www.youtube.com/watch?v=a-off4Vznjs&feature=youtu.be) or buy the beta version of [Programming Elixir](https://pragprog.com/book/elixir/programming-elixir).
Copy file name to clipboardExpand all lines: _posts/2013-08-08-elixir-design-goals.markdown
+1-1
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ category: Internals
6
6
excerpt: Highlight of Elixir design goals.
7
7
---
8
8
9
-
During the last year, we have spoken at many conferences spreading the word about Elixir. We [usually started with introducing the Erlang VM](http://vimeo.com/53221562), then went on to talk about Elixir goals, saving some time at the end to do a live demo, showing some goodies like exchanging information between remote nodes and even hot code swapping.
9
+
During the last year, we have spoken at many conferences spreading the word about Elixir. We [usually started with introducing the Erlang VM](https://vimeo.com/53221562), then went on to talk about Elixir goals, saving some time at the end to do a live demo, showing some goodies like exchanging information between remote nodes and even hot code swapping.
10
10
11
11
This post is a summary of those talks, focusing on the language goals: compatibility, productivity and extensibility.
Copy file name to clipboardExpand all lines: _posts/2014-04-21-elixir-v0-13-0-released.markdown
+5-5
Original file line number
Diff line number
Diff line change
@@ -8,7 +8,7 @@ excerpt: "Elixir v0.13.0 comes with substantial improvements to the language: ma
8
8
9
9
Hello folks!
10
10
11
-
Elixir v0.13.0 has been released. It contains changes that will effectively shape how developers will write Elixir code from now on, making it an important milestone towards v1.0! On this post we are going to cover some of those changes, the road to Elixir v1.0, as well as the announcement of [hex.pm](http://hex.pm).
11
+
Elixir v0.13.0 has been released. It contains changes that will effectively shape how developers will write Elixir code from now on, making it an important milestone towards v1.0! On this post we are going to cover some of those changes, the road to Elixir v1.0, as well as the announcement of [hex.pm](https://hex.pm).
12
12
13
13
Before we go into the changes, let's briefly talk about ElixirConf!
14
14
@@ -261,22 +261,22 @@ Dependencies now are also automatically compiled before you run a command. For e
261
261
262
262
## hex.pm
263
263
264
-
This release also marks the announcement of [hex.pm](http://hex.pm/), a package manager for the Erlang VM. Hex allows you to package and publish your projects while fetching them and performing dependency resolution in your applications.
264
+
This release also marks the announcement of [hex.pm](https://hex.pm/), a package manager for the Erlang VM. Hex allows you to package and publish your projects while fetching them and performing dependency resolution in your applications.
265
265
266
266
Currently Hex only integrates with Mix and contributions to extend it to other tools and other languages in the Erlang VM are welcome!
267
267
268
268
## The next steps
269
269
270
270
As seen in this announcement, this release dictates many of the developments that will happen in Elixir and its community in the following weeks. All projects are recommended to start moving from records to structs, paving the way for the deprecation of records before 1.0.
271
271
272
-
The next months will also focus on integrating Elixir more tightly to OTP. During the keynote at Erlang Factory, [Catalyse Change](http://www.youtube.com/watch?v=Djv4C9H9yz4), Dave Thomas and I argued that there are many useful patterns, re-implemented everyday by developers, that could make development more productive within the Erlang VM if exposed accordingly.
272
+
The next months will also focus on integrating Elixir more tightly to OTP. During the keynote at Erlang Factory, [Catalyse Change](https://www.youtube.com/watch?v=Djv4C9H9yz4), Dave Thomas and I argued that there are many useful patterns, re-implemented everyday by developers, that could make development more productive within the Erlang VM if exposed accordingly.
273
273
274
274
That said, in the next months we plan to:
275
275
276
276
* Integrate applications configuration (provided by OTP) right into Mix;
277
277
* Provide an Elixir logger that knows how to print and format Elixir exceptions and stacktraces;
278
278
* Properly expose the functionality provided by Applications, Supervisors, GenServers and GenEvents and study how they can integrate with Elixir. For example, how to consume events from GenEvent as a [stream of data](/docs/stable/elixir/#!Stream.html)?
279
-
* Study how patterns like tasks and agents can be integrated into the language, often picking up the lessons learned by libraries like [e2](http://e2project.org/erlang.html) and [functionality exposed by OTP itself](http://erlang.org/doc/man/rpc.html);
279
+
* Study how patterns like tasks and agents can be integrated into the language, often picking up the lessons learned by libraries like [e2](http://e2project.org/erlang.html) and [functionality exposed by OTP itself](http://www.erlang.org/doc/man/rpc.html);
280
280
* Rewrite the Mix and ExUnit guides to focus on applications and OTP as a whole, rebranding it to "Building Apps with Mix and OTP";
281
281
282
-
You can learn more about Elixir in our [Getting Started guide](/getting-started/introduction.html) and download this release in the [v0.13 announcement](https://github.com/elixir-lang/elixir/releases/tag/v0.13.0). We hope to see you at [ElixirConf](http://elixirconf.com/) as well as pushing your packages to [hex.pm](http://hex.pm/).
282
+
You can learn more about Elixir in our [Getting Started guide](/getting-started/introduction.html) and download this release in the [v0.13 announcement](https://github.com/elixir-lang/elixir/releases/tag/v0.13.0). We hope to see you at [ElixirConf](http://elixirconf.com/) as well as pushing your packages to [hex.pm](https://hex.pm/).
Copy file name to clipboardExpand all lines: _posts/2014-08-07-elixir-v0-15-0-released.markdown
+3-3
Original file line number
Diff line number
Diff line change
@@ -29,7 +29,7 @@ By default, the code above will log the following message to your console:
29
29
10:27:39.083 [debug] hello
30
30
```
31
31
32
-
Logger provides multiple backends to where messages are logged. For now Elixir ships only with a console backend but there are developers already working on file (with support to external log rotation) and [syslog](http://en.wikipedia.org/wiki/Syslog) backends.
32
+
Logger provides multiple backends to where messages are logged. For now Elixir ships only with a console backend but there are developers already working on file (with support to external log rotation) and [syslog](https://en.wikipedia.org/wiki/Syslog) backends.
33
33
34
34
When we started Logger, the main objective was to translate Erlang messages into Elixir, so terms are formatted in Elixir syntax. Before this release, the following code
35
35
@@ -74,7 +74,7 @@ As soon as we started working on Logger, we realized we could go further than si
74
74
* Custom translators: so you can translate log messages coming from any Erlang application into Elixir syntax
75
75
* Metadata: metadata allows developers to store information in the current process that will be available to all logged messages. For example, a web application can generate a `request_id`, store it as metadata, and all messages logged during that request will be properly identified with `request_id=...` in the log
76
76
77
-
We have also relied a lot on the [research and work done by Andrew Thompson and the folks at Basho behind Lager](http://www.youtube.com/watch?v=8BNpOHFvg_Q) to ensure our logger is performant and robust. On this front, Logger
77
+
We have also relied a lot on the [research and work done by Andrew Thompson and the folks at Basho behind Lager](https://www.youtube.com/watch?v=8BNpOHFvg_Q) to ensure our logger is performant and robust. On this front, Logger
78
78
79
79
* alternates between sync and async modes when logging messages to keep it performant when required but also apply back-pressure when under stress
80
80
* formats and truncates messages on the client to avoid clogging the backends
@@ -142,7 +142,7 @@ We also would like to thank [Anthony Grimes](https://github.com/raynes) for the
142
142
143
143
## Elixir Web Installer for Windows
144
144
145
-
At the beginning of this summer, [Chris Hyndman](http://github.com/chyndman) joined us as a Google Summer of Code student to help us improve the Elixir story on Windows. Chris has been essential in:
145
+
At the beginning of this summer, [Chris Hyndman](https://github.com/chyndman) joined us as a Google Summer of Code student to help us improve the Elixir story on Windows. Chris has been essential in:
146
146
147
147
* Guaranteeing our test suite is green on Windows, fixing many bugs in the process;
148
148
*[Documenting how to compile Elixir from source on Windows](https://github.com/elixir-lang/elixir/wiki/Windows)
Copy file name to clipboardExpand all lines: _posts/2014-09-18-elixir-v1-0-0-released.markdown
+1-1
Original file line number
Diff line number
Diff line change
@@ -33,7 +33,7 @@ Elixir is composed of 6 applications, all under the same versioning constraints:
33
33
34
34
With v1.0, we are providing a stable platform for the community to leverage and extend, and we are extremely excited with the projects and possibilities that are ahead of us!
35
35
36
-
We hope the [Hex package manager](http://hex.pm) will be the home of many of those projects and remember the whole Erlang ecosystem is also available to Elixir developers.
36
+
We hope the [Hex package manager](https://hex.pm) will be the home of many of those projects and remember the whole Erlang ecosystem is also available to Elixir developers.
0 commit comments