Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
artagnon
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
14 ms
·
91.
▲
by
artagnon
11y ago
Thanks for the feedback. The ~ is a substitute for :, which is used in other languages for optional type annotations. You're right about removing ~ altogether, Go style. ~Function(Int -> Int -> Int) is a function which takes two
92.
▲
Show HN: Rhine – A typed Elixir-inspired language on LLVM
(github.com)
81 points
by
artagnon
11y ago
|
16 comments
93.
▲
Scala Collection API for C# Developers
(medium.com)
1 points
by
artagnon
11y ago
|
0 comments
94.
▲
by
artagnon
11y ago
It's interesting to me that shell integration is becoming a harder problem with editors these days. Emacs has a multi-term which kind-of works (there were many packages before this that didn't work), Vim does not have a package th
95.
▲
by
artagnon
11y ago
Very coherent piece on a familiar concept. I think of spikes as ways to sustain streams. They're also the quick route to making bad decisions. It's encouraging to see your investments jump in value every now and then, but if you s
96.
▲
by
artagnon
11y ago
Git has some serious disadvantages when compared to a centralized VCS like Perforce. It just can't handle anything more than 10~15 million lines of code (this is the size of linux.git). In a way, Perforce is a cute middle ground. It ha
97.
▲
by
artagnon
11y ago
Cool project. Another experiment that'd be useful is auto-filling responses to emails based on historical data (Inbox on my phone does an okay job of this). I think it's a similar challenge.
98.
▲
by
artagnon
12y ago
Let me try to break this down. This is a wrong transformation: void writer(Tuple tuple) { tuple.nonVolatileF = 5; tuple.volatileF = 1; } void reader(Tuple tuple) { int regNV = 0; int cache = tuple.nonVolatileF; i
99.
▲
by
artagnon
12y ago
Only special ref objects are mutable in Clojure (via STM). I was talking of `setq` in the context of mutating normal variables. It's perhaps a bad idea, and I have to study how LT manages its plugin system without mutation.
100.
▲
by
artagnon
12y ago
The plan is to eventually stick with LLVM MCJIT with custom optimizations. There's really no point in producing an AOT binary. I don't do GC yet. I suspect it happens because the VM becomes too large and complex for anyone to debu
101.
▲
by
artagnon
12y ago
I didn't quite understand how LT works. I have the following tasks in mind: 1. Set indent-tabs-mode in all modes which use that variable. So, if I install a hs-mode, the indent-tabs-mode in my .emacs should be the one that it picks up.
102.
▲
by
artagnon
12y ago
Because one type may use more than one field. Vectors and strings use the nr field additionally, and functions use the vector/fenv field additionally. Instead of creating a hierarchy, I figured a flat structure would be easier to under
103.
▲
by
artagnon
12y ago
Currently, vectors are the only real data structures; they're naively persistent: operations like rest and cons create a fresh copy (I haven't implemented COW yet). I'm not quite sure how to implement it for `setq` though (a
104.
▲
by
artagnon
12y ago
One of the major problems with Emacs is that it's hard to isolate, debug, and rollback Elisp fragments; the only way to fix many problems is to restart Emacs. I still haven't figured out how to solve this problem with Rhine: keep
105.
▲
by
artagnon
12y ago
Rust has an FFI to C, which is how it calls out to LLVM. Can you point me to the part of the codebase that codegens the basic constructs?
106.
▲
by
artagnon
12y ago
Many modern high-level languages use some kind of VM (most notably Clojure and V8). This is a means to provide a JIT, do runtime optimizations, and garbage collection. AOT means that you don't have a chance to do anything about the gen
107.
▲
by
artagnon
12y ago
Actually, there's a hidden motive behind not targeting Clojure: the eventual plan is to allow Elisp-like mutability so it can be used to build an Emacs-like editor. I chose OCaml because of the relatively mature OCaml-LLVM bindings. A
108.
▲
Rhine – A Lisp on LLVM
(github.com)
143 points
by
artagnon
12y ago
|
91 comments
109.
▲
by
artagnon
12y ago
The post is targeted at too many audiences. Lacks focus.
110.
▲
Facebook open sources some machine learning tools
(facebook.com)
2 points
by
artagnon
12y ago
|
0 comments
111.
▲
by
artagnon
13y ago
I'm curious to know how the latest Linux fares on a Macbook Air.
112.
▲
Show HN: clayoven; modern website generator with a traditional design
(github.com)
4 points
by
artagnon
13y ago
|
0 comments
113.
▲
by
artagnon
13y ago
For a theory to be good science, it must fit a very large number of observations and not contradict any a single one. Here's my attempt. We must get a tight definition of consciousness to begin with. Are animals conscious as well (and
114.
▲
by
artagnon
13y ago
Any Indian village. Come over sometime ;)
115.
▲
by
artagnon
13y ago
Did the original post claim otherwise?
116.
▲
by
artagnon
13y ago
True, but let's factor out the current state of availability of weed in most parts of the US for a second here.
117.
▲
by
artagnon
13y ago
It's illegal in most places, but it's quite widely available in many poor countries; not everyone lives in the US.
118.
▲
by
artagnon
13y ago
[I'm not talking about most parts of the US, where weed is harder to obtain; I'm talking about most poor countries, where it is readily available] I've seen many of my friends waste years of their college lives running around
119.
▲
by
artagnon
13y ago
The situation is somewhat similar to what was happening on desktop Linux some years ago. On the desktop, the kernel _and_ most of the core userland is GPL (mostly v2), an extremely powerful license. nVidia got away with being able to distri
120.
▲
by
artagnon
13y ago
I'll give you a no BS version. Don't delude yourself into thinking that you're "talented" or "gifted". You're a product of your history: if you spent a significant portion of your life playing DOTA, y
More ›