Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
nox_
searching Neon…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
17 ms
·
1.
▲
by
nox_
7y ago
Cf. `try` becoming a keyword, when there are hundreds of calls to a method named `try` in Servo, one of the largest Rust projects in existence.
2.
▲
by
nox_
10y ago
The inflate crate is absolutely devoid of tests and full of unsafe code though, so the foundations of all of that are quite weak.
3.
▲
by
nox_
10y ago
I implemented them in R17. José doesn't dislike them but doesn't have a syntax that fits Elixir for them, given parens around arguments of a lambda are optional.
4.
▲
by
nox_
11y ago
I have rarely read things that were that much wrong. Just because the code can be represented as a data structure, or just because the compiler is written in its own language, that doesn't make a language homoiconic.
5.
▲
by
nox_
11y ago
Erlang is not homoiconic. Did you mean Elixir? Neither are anyway.
6.
▲
by
nox_
12y ago
Metaphors make sense, that reusing of isomorphism doesn't, however you quote Greek words to justify your means.
7.
▲
by
nox_
12y ago
Isomorphism was already a word before Nodejitsu abused it. Your examples are acronyms and abbreviations. Nevermind that this concept is not even worth a name.
8.
▲
by
nox_
12y ago
In which universe is polymorphism the opposite of isomorphism? Couldn't we just have said "JavaScript that runs everywhere" instead of trying to sound educated?
9.
▲
by
nox_
12y ago
Replying with an attack and closing comments is definitely something a douchebag would do. Free or opensource doesn't mean you get to be irresponsible about what you release or maintain, if your project has some caveats they should be
10.
▲
by
nox_
12y ago
You introduced a closure there. Bindings set in if, case, receive, etc will spill in their surrounding environment. Obviously they won't spill outside closures without mutable terms, which BEAM lacks. The bits about SSA transformation
11.
▲
by
nox_
12y ago
You can. And even if you couldn't, what I mentioned is still different scoping rules, whether you put scare quotes or not.
12.
▲
by
nox_
12y ago
Variables in Elixir can be rebound, and there are no unsafe variables at all in Elixir.
13.
▲
by
nox_
12y ago
Sharing a common subset does not make them "fundamentally the same language".
14.
▲
by
nox_
12y ago
Quotes don't magically let you say wrong things.
15.
▲
by
nox_
12y ago
When two languages have different scoping rules, they don't have the same semantics. When two languages differ in their opinion about macros, they don't have the same semantics. When two languages have different semantics, they ar
16.
▲
by
nox_
12y ago
Syntax is the least of your worries when learning a new language. Elixir isn't Ruby. Some new projects may be developed in Elixir but it will never supplant Erlang.
17.
▲
by
nox_
12y ago
Hah, yeah, let's port everything for no obvious reason.
18.
▲
by
nox_
12y ago
Elixir's compiler emits Erlang forms, and then relies on OTP's Erlang's compiler. It is not a direct process.
19.
▲
by
nox_
12y ago
> - Elixir compiles directly to Erlang byte code No, it compiles to Erlang. Which is then compiled by the Erlang compiler.
20.
▲
by
nox_
12y ago
For the terse badmatch error and such, you might be interested in Shippai: https://github.com/nox/shippai
21.
▲
by
nox_
12y ago
Why was this downvoted when it clearly shows how this article is misguided? Just because a language uses parentheses for some of its constructions doesn't mean we can call Lisp syntax.
22.
▲
by
nox_
12y ago
Too bad that this isn't type checking in the traditional sense though. That's just runtime tag checking.
23.
▲
by
nox_
12y ago
"Tries" is the operative word here. There is a documented history of utter incompetence in Linguist.
24.
▲
by
nox_
12y ago
And what exactly is standard about this?
25.
▲
by
nox_
13y ago
> C++ gets often recognized as C. The disambiguation test for C++ headers is ridiculous: matches << Language["C++"] if data.include?("#include <cstdint>")
26.
▲
by
nox_
13y ago
There is no unicity check anymore; I just kept the first one special because some private code at GitHub seems to rely on the primary_extension property for the Gist editor. As I can't hack this (it is private), I can't remove it
27.
▲
by
nox_
13y ago
Except that primary_extension does not serve any purpose.
28.
▲
by
nox_
13y ago
Do you mean, a fix like https://github.com/github/linguist/pull/985 ?
29.
▲
by
nox_
13y ago
> My understanding is that primary_extension is simply used to short circuit analysis when it's unique to a language. No, the primary_extension is only used in a gists_helper.rb file outside the Linguist repos. Note that the feature
30.
▲
by
nox_
13y ago
Yes, Erlang patterns are non-linear, Haskell has view patterns. Neither are more powerful than the other. They are just different. Erlang non-linear patterns fit more with the semantics of match where an already bound name isn't shadow
More ›