HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
josevalim
elixir
HISTORICAL RECORD2011–2011
josevalim / elixir · Not publicly available

elixir

Discover this repository through its Hacker News conversations.

7Distinct people
9Mentions
0Explicit recommenders
REPOSITORY AT A GLANCE

What to know before exploring

What it is

A public description has not been verified.

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

Mentioned in the same Hacker News threads. That is not proof they are substitutes.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 1:49:46 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by month9 dated mentions

Observed mentions: 2011-03-09 19:25:21 UTC to 2011-12-22 19:00:52 UTC.

0123452011-03-01 00:00:00 UTC to 2011-04-01 00:00:00 UTC (exclusive): 5 mentions; 1 submissions, 4 commentsMar 20112011-04-01 00:00:00 UTC to 2011-05-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2011-05-01 00:00:00 UTC to 2011-06-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2011-06-01 00:00:00 UTC to 2011-07-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2011-07-01 00:00:00 UTC to 2011-08-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 commentsJul 20112011-08-01 00:00:00 UTC to 2011-09-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2011-09-01 00:00:00 UTC to 2011-10-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2011-10-01 00:00:00 UTC to 2011-11-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2011-11-01 00:00:00 UTC to 2011-12-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2011-12-01 00:00:00 UTC to 2012-01-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 commentsDec 2011

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Mar 20112011-03-01 00:00:00 UTC2011-04-01 00:00:00 UTC514
Apr 20112011-04-01 00:00:00 UTC2011-05-01 00:00:00 UTC000
May 20112011-05-01 00:00:00 UTC2011-06-01 00:00:00 UTC101
Jun 20112011-06-01 00:00:00 UTC2011-07-01 00:00:00 UTC000
Jul 20112011-07-01 00:00:00 UTC2011-08-01 00:00:00 UTC000
Aug 20112011-08-01 00:00:00 UTC2011-09-01 00:00:00 UTC000
Sep 20112011-09-01 00:00:00 UTC2011-10-01 00:00:00 UTC000
Oct 20112011-10-01 00:00:00 UTC2011-11-01 00:00:00 UTC000
Nov 20112011-11-01 00:00:00 UTC2011-12-01 00:00:00 UTC000
Dec 20112011-12-01 00:00:00 UTC2012-01-01 00:00:00 UTC303

What Hacker News says

9 sources
This definitely makes Erlang more approachable for me - I've managed to develop a strong dislike for the syntaxes in a lot of functional languages including Lisp and Haskell. From my perspective, the syntactic choices documented in https://github.com/josevalim/elixir seem rather reasonable on the whole, but functions are a tad odd. Is there any specific reason why it's "-> (x, y) x + y"? I always thought the motive for the arrow notation in the form "(x, y) -> x + y" was an obvious cognitive mapping into "x and y becomes x + y". Seems a bit bass ackwards as it is. I also have a minor issue with the atom prefix (to me : would have been more distinctive), but that's admittedly more of a personal thing.
In [Screencast] Elixir: Object Orientation and charming syntax on top of Erlang
Thanks jerf for your feedback even though it was based on rapidly reading the document. I will address a few things: 1) In general I am trying my best to not change the syntax for Erlang data structures. Atoms were one of the few exceptions due to the grammar. I chose to go with the lisp syntax (and similar to Ruby :symbol). But indeed I could have chosen it to be apos-delimited at all times to be closer to Erlang, I have to think more about it. 2) head and tail: good point. The reason they are there though, is if you need to dynamically dispatch a method to retrieve the head or the tail. But in general, I don't think we should limit the language to avoid people writing bad code. We can better solve this problem with good docs (therefore I have removed such bad examples from the README). 3) Empty lists being considered false: I was not su
Read the rest
re at the beginning if they should evaluate to false or not but after your feedback I have decided to change so just false evaluates to false. Although in some cases it if feels very weird that a proper nil is missing, for instance Object.__parent__ returning an empty list that evaluates to true feels weird. Maybe I should add nil down the road. 4) "Merely tweaking Erlang" can you give examples where we may be merely tweaking Erlang? 5) case/match: I borrowed the syntax for Ruby and yes, Elixir is not whitespace sensitive. In Ruby, people indent case/match in both ways, I am particularly fine with both. 6) try/catch: yes, I also would like exceptions to be objects (like Python and Ruby). However, the fact I cannot easily have custom guards in Erlang makes that considerably more complicated to implement. Maybe we can add it in the future if more and more people start to use Elixir enough to justify putting a lot of effort in complicated features. 7) String interpolation: I am not aware of such issues. If you could point to more references or discuss it better, I would really appreciate it! 8) The inlist is because we need to make a difference between list and binaries when there is an ambiguity. So what exactly do you propose? To always be explicit here (using inlist or inbin)? Notice that this is an Erlang limitation, the Erlang syntax uses <- and <= to make a difference between them both. 9) Method visibility: hrm, you are actually right. I could have started without this feature and have added it if I eventually needed it. We need the private methods (because they map to local not-exported methods in Erlang) but protected methods could definitely be gone. 10) The GenServer example is not missing, it is in the examples/ folder (too long for the README): https://github.com/josevalim/elixir/blob/master/examples/gen... Elixir has also Code::Server (that stores your load paths) and ExUnit::Server (that stores your test cases) that could be used as examples. GenServer in Elixir is very OO'ish and I am particularly happy with the current implementation after going through a few iterations. Writing Elixir has been an extremely rewarding experience and reading your feedback makes it even better. Thanks again for sharing and I hope you can eventually use it and help us improve it more!
In Elixir: Simple Object Orientation and charming syntax on top of Erlang

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.