Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
_halgari
searching Neon…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
9 ms
·
1.
▲
by
_halgari
3y ago
Same halgari, yes :D. Yeah he took it from Bagwell, and adapted it, but in general there was a whole discussion way back in the day (~2012) questioning how creating this much garbage by boxing and throw away collections could ever be fast.
2.
▲
by
_halgari
3y ago
Oh for sure, it's a bit wonky on the JVM due to the lack of tail calls, but that sort of thing can be done via full-stack bytecode transformation. But these people are doing this in Clojure, which is quite removed from the JVM bytecode
3.
▲
by
_halgari
3y ago
That was my issue for a long time. I even talked with their founder several times on twitter back a few years ago. Each time I was greeted with buzzwords, that I knew the meaning of but I think they assumed I didn't. They would claim
4.
▲
by
_halgari
7y ago
Author here, a few things to keep in mind: Firstly, I wrote this about 3.5 years ago. I was wondering why people were suddenly commenting on it and now it all makes sense. Part of the fun of writing articles about this is watching everyone
5.
▲
by
_halgari
8y ago
Why compile ahead of time when you know nothing about what the target platform is capable of? Why compile before profiling to make sure you run the correct optimizations? Startup times are sometimes important, but it's not the end-all-
6.
▲
by
_halgari
8y ago
Closed source I understand, they must have something in there they don't want to give away completely for free. But "no commercial use" just cuts out something like 90% of the user base. Because depending on your definition o
7.
▲
by
_halgari
8y ago
From the license: > You may not use REBL for commercial use.
8.
▲
by
_halgari
8y ago
Correct, the first game to use ECS was Dungeon Siege back in 2002: https://www.gamedevs.org/uploads/data-driven-game-object-sys...
9.
▲
by
_halgari
8y ago
Anyone who has done serious performance testing on a DB knows that there's a massive gap between initial findings and a well tuned system designed with the help of the database maintainers. I've seen some nasty performance out of
10.
▲
by
_halgari
8y ago
"Generalization of abstraction" sounds a lot like "a maze of twisted passages, all alike" That's exactly what I don't like about some languages, if everything is a function, then it's all a big ball of mud
11.
▲
by
_halgari
9y ago
Kind of saw this coming after the third reimplementation in yet another language. And why Rust? 2 years ago they decided to use Rust to implement a new language (IIRC Rust wasn’t even 1.0 at that time). That’s a huge amount of technical ris
12.
▲
by
_halgari
9y ago
Well, for the first time since the langauge was created you can now do `brew install clojure`, and then `clj` on the commandline and get a repl. I would have loved something that painless when I was learning Clojure.
13.
▲
by
_halgari
9y ago
I had the great pleasure of interviewing Zach Oakes (author of nightcoders.net) the ~1hr podcast is available here: http://blog.cognitect.com/cognicast/130
14.
▲
by
_halgari
9y ago
Sad thing is...Noir was dead for 4 years before Arachne came along. Go to the GitHub page, the deprication notice is from 2013! And Arachne isn’t even a Cognitect project. The author of Arachne temporarily quit his job at Cognitect to perus
15.
▲
by
_halgari
9y ago
What's interesting is that for me Clojure was my first lisp. One of the main reasons I never learned lisp before Clojure was all the parens that made the language impossible to read. Clojure cleans up the "normal" lisp syntax
16.
▲
by
_halgari
9y ago
Maintainable code is very important, unless you work for some company that just produces code then dumps it on a client. The key is to balance functional purity with understandability. Let's take something like Clojure. I get immutable
17.
▲
by
_halgari
9y ago
"In particular, algebraic effects are combined seamlessly, whereas monad transformers are needed in the monadic style." Implies otherwise...but to be frank, I don't care. As long as I can get these features without type pollu
18.
▲
by
_halgari
9y ago
Most of his stories are more related to immutable data, and proper programming, than anything else.
19.
▲
by
_halgari
9y ago
It's the design patterns if you are trying to use a 100% pure language, which is a waste of time. Here's the thing...at some point being functionally pure stops paying off. At some point you end up paying more to fit your work int
20.
▲
by
_halgari
9y ago
Every time I've studied Category Theory I've later found a better, simpler, easier to understand, cleaner approach to doing the same thing, perhaps with a little mutation. And then there's languages like Eff that completely
21.
▲
by
_halgari
10y ago
Fun fact: The Lost Vikings was created by Silicon Synapse. They were later renamed "Blizzard Entertainment" and went on to make Warcraft/Starcraft. The Vikings are now featured in Blizzard's game Heroes of the Storm: ht
22.
▲
by
_halgari
10y ago
Yes! Pycket is a great language, I used your paper as a reference more than once while working on Pixie.
23.
▲
by
_halgari
10y ago
I'm the original author of pixie, and yeah, I'm a bit surprised to see this hit HN today. It should be mentioned that I put about a year of work into this language, and then moved on about a year or so ago. One of the biggest reas
24.
▲
by
_halgari
10y ago
And yet, Clojure has less parens than your average JS program. Even Java has more syntactic sugar. Just compare: foo.bar(baz) to: (.bar foo baz) Same number of parens...they're just in different places. Sure CommonLis
25.
▲
by
_halgari
10y ago
I've been a full-time Clojure dev for about 4-5 years now. And the number of times you have to refactor (in the traditional sense) Clojure code is pretty rare. And the reason is that Clojure leverages it's use of immutable data st
26.
▲
by
_halgari
10y ago
Same data in Clojure: [{:appt/start #inst "01-02-2014T9:15:00Z" :appt/end #inst "01-02-2014T9:15:00Z" :appt/description "See Anderson"} {:appt/start #inst "01-02-2014T10:45:0
27.
▲
by
_halgari
10y ago
Sure, but what do those functions do? In clojure they manipulate data. That's pretty much the gist of the language: using pure functions to manipulate data. Almost all the work I do these days as a software engineer is data transformat
28.
▲
by
_halgari
10y ago
STM and concurrency...sure those are "aspects" of Clojure, Clojure's biggest strength is that it's data-centric. The vast majority of the language is focused around manipulating hashmaps, vectors, sequences, etc, and do
29.
▲
by
_halgari
10y ago
Can we get some sort of edit to this title to show that it's from back in 2014? A ton of work has gone into Clojure since then and in some aspects the language has gotten orders of magnitude faster (not that it was really that slow to
30.
▲
by
_halgari
10y ago
Clojure - prioritized rich immutable data. I haven't found any other language that prioritizes open data sets: where a map has "a" and "b" but it could also have "c" and "d", if you only care abo
More ›