Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
thunderseethe
searching Neon…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
5 ms
·
1.
▲
by
thunderseethe
7mo ago
Yeah I was just wrong here. I was under the impression clang had a concept of a request the same way Swiftc does and that is just not true. That's my bad!
2.
▲
by
thunderseethe
7mo ago
What are you calling bidir, if the introduction of unification means its no longer bidir?
3.
▲
by
thunderseethe
7mo ago
> You can get localised unification but bidir as a whole like in Rust but you lose most of the advantage of unification. Could you expand on this? I do not follow. You can create a bidir system that never requires annotations and uses un
4.
▲
Compiler Education Deserves a Revolution
(thunderseethe.dev)
2 points
by
thunderseethe
7mo ago
|
0 comments
5.
▲
by
thunderseethe
7mo ago
It is a double edged sword of the single page layout that you really have to make one point briefly and get out of there. I had to pare down many details to fit the layout. If you want to learn more about query based compilers as a concept,
6.
▲
by
thunderseethe
7mo ago
In general I agree with what youre advocating for. Languages should require annotations on function parameters and return types and most top level definitions. But even if you only infer types locally you'll still want unification to d
7.
▲
by
thunderseethe
7mo ago
> The real question is unification vs bidir Quite the opposite, imo. Unification does not exclude bidir and the two fit together very well. You can have one system with both Unification and bidir and get all the advantages of both.
8.
▲
by
thunderseethe
7mo ago
> I wonder if this is a reference to "I need you to understand that people don't have conversations where they randomly recommend operating systems to one another" It is! > my understanding is that there are areas where
9.
▲
How to choose between Hindley-Milner and bidirectional typing
(thunderseethe.dev)
153 points
by
thunderseethe
7mo ago
|
49 comments
10.
▲
by
thunderseethe
8mo ago
There's an interactive playground to show off the LSP we implement at https://thunderseethe.dev/making-a-language
11.
▲
by
thunderseethe
9mo ago
This is probably my biggest regret with this article. Much earlier and much more prominently I should've explained that the title is a play on a running joke Andreas Rossberg includes in a couple of his talks "wasm does not stand
12.
▲
Building a Brainfuck DSL in Forth using code generation
(venko.blog)
3 points
by
thunderseethe
9mo ago
|
0 comments
13.
▲
by
thunderseethe
1y ago
Take a look at The Rapier in GHC: https://www.researchgate.net/publication/220676611_Secrets_o... It employs a similar idea. Track the set of in scope variables and use them to unique variables on collision.
14.
▲
by
thunderseethe
2y ago
Lowering our typed base AST into a System-F based IR
15.
▲
by
thunderseethe
2y ago
Implicits are motivated, atleast in part, by a desire to improve upon this baseline. In the world of ML modules this is the current state. Typeclasses (as modules) have to be passed everywhere they're used explicitly and it's exha
16.
▲
by
thunderseethe
2y ago
I think rather than at odds with without.boats is saying, this is very much aligned with what they are suggesting. While not literally `use A::impl std::hash::Hash for i32` is for all intents and purposes naming the impl. Similarly, `HashMa
17.
▲
by
thunderseethe
2y ago
That ones on me. I blog as a way to practice writing, and right now I'm working on picking more interesting verbs. I have a usage of `proselytize` later on that is outright smarmy.
18.
▲
by
thunderseethe
2y ago
Great write up, and you're absolutely right that implicits are moving towards ML modules. Quite possibly a production system would end up being synonymous with ML modules out of the need for named impls. Small nit in terminology, the i
19.
▲
by
thunderseethe
2y ago
It's also custom logic to embed the code snippets within the article, they're all working code that gets pulled in from rust files. Really stellar stuff.
20.
▲
by
thunderseethe
3y ago
Damn I love this article, what a cool series of words to say. And I wrote it, so you know it must be true!
21.
▲
What's in a Module?
(thunderseethe.dev)
3 points
by
thunderseethe
3y ago
|
0 comments
22.
▲
Tying Up Type Inference
(thunderseethe.dev)
1 points
by
thunderseethe
3y ago
|
0 comments
23.
▲
Type Inference: Bidirectional Constraint Generation
(thunderseethe.dev)
1 points
by
thunderseethe
3y ago
|
0 comments
24.
▲
by
thunderseethe
3y ago
Absolutely! That's what I'm attempting this time. I'm hoping if I start with literally just the lambda calc + integer literals I can get something working e2e and layer stuff on top from there
25.
▲
by
thunderseethe
3y ago
This captures exactly the sentiment I was trying to express. Thanks for chiming in!
26.
▲
Designing a Language Without a Parser
(thunderseethe.dev)
114 points
by
thunderseethe
3y ago
|
127 comments