Viewing profile — noelwelsh
noelwelsh
HN member- Joined
- Mon, Mar 22, 2010, 1:50 PM UTC
- HN karma
- 10,079
- Public activity
- 2,245 items
- HN profile
- View on Hacker News ↗
About noelwelsh
I'm a partner at Inner Product (http://inner-product.com) and Underscore (http://underscore.io), where I teach, mentor, and develop Scala.
I'm previously was a co-founder of a startup called Myna which applied multi-armed bandit algorithms to the problem of content optimisation -- where A/B testing is traditionally used.
Recent public activity
-
comment
Comment #49220173
The general term for this is an indexed type. Specifically what is shown here is indexed codata. Indexed data is more commonly known as generalized algebraic data types (GADTs), wh…
-
comment
Comment #49148147
Writing the notes is more the point than re-reading them, at least for me. Writing stuff down forces me to kick things around and find a good structure, and that's where the useful…
-
comment
Comment #49101499
A few comments on the previous abundance of cod, from https://www.sciencehistory.org/stories/magazine/a-tragedy-wi... In 1873, French novelist Alexandre Dumas wrote that if every e…
-
comment
Comment #49083421
Very nice!
-
comment
Comment #49081220
Scala's capture checking [1] is a modal type system. [1]: https://docs.scala-lang.org/scala3/reference/experimental/cc...
-
comment
Comment #49081078
Good article. We really need more nuance in the discussion of using LLMs for SE. Not all tasks are the same; we shouldn't expect to use the same process across them! In my experien…
-
comment
Comment #49051628
Good article. Not much to add to it, other than I think more people should look at modal type systems like found in Scala 3 and OxCaml. If you want safe arena allocation they are a…
-
comment
Comment #49048659
You might enjoy digging into the world of effect handlers: it's a very neat model for expressing these features and boils down to continuations in the implementation.
-
comment
Comment #48955906
These are not things I need to know :-)
-
comment
Comment #48955835
A nice thing about being left handed is there a few things I can't get precious about. Fountain pens are never going to feature in my life as I'll just smudge everything. Similarly…
-
comment
Comment #48947269
Can anyone explain how this works? Humans have 3 (sometimes 4) cones, so I thought that going beyond 3 primaries wouldn't increase the perceivable gamut. Update: thanks for all the…
-
comment
Comment #48944375
Absolutely. Take a look at "unconscious perception".
-
comment
Comment #48932818
A collection of thoughts I had while reading the article: 0. Overall, a nice article. 1. There are several places where the (LLM assisted?) writing is a bit odd. For example, the c…
-
comment
Comment #48908429
There is no real evidence that we'll reach AGI any time soon. It relies on AI continuing to scale, and we have no proof that will continue to be possible. There is an alternative i…
-
comment
Comment #48907538
The premise is "Artificial General Intelligence (AGI), a system that exhibits all the cognitive capabilities the brain has, is probably only a few short years away". If this is tru…
-
comment
Comment #48879581
This blog post is very relevant to the discussion: https://www.persuasion.community/p/the-multiversity-is-finis... A quick summary: the modern university is really a "multiversity"…
-
comment
Comment #48860109
Wow. Not a Haskell user, but a big user of other languages with expressive type systems (mostly Scala; some Rust). My experience is the complete opposite. I can't imagine using a l…
- story
- story
-
comment
Comment #48745947
This is the book I'm working on about mental models for better code. It's getting very close to complete, and there is a 150 page free sample. The book is all about making explicit…
- story
-
comment
Comment #48734801
That's a reasonable way of looking at it, but capabilities are not restricted to low-level system properties. Here's a terminal UI system built around three main capabilities: - la…
-
comment
Comment #48731066
You'd probably like the work of Tomas Petricek: https://tomasp.net/ He does research in "the history and philosophy of programming", amongst other things.
-
comment
Comment #48730747
You're right, they are related. One difference is simply lineage. Capabilities come out of the erights / security world (e.g. [0]), while dependency injection comes from the XP / a…
-
comment
Comment #48730202
What Zig is doing is called "capability passing". I don't know if the Zig team is aware of this field of work, or have independently arrived upon it, but that's what is achieved by…