Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
willtim
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
9 ms
·
91.
▲
by
willtim
6y ago
The Kinesis Advantage 2 has the keys in a concave well, which means less reach is needed to get them. It's similarly priced and worth a try!
92.
▲
by
willtim
6y ago
"Generics" (a.k.a. parametric polymorphism) might be terrible for code clarity in a verbose language with subtyping and little to no type inference, but in many languages they actually improve code clarity: map : (A -> B) -&g
93.
▲
by
willtim
6y ago
I suspect the issue is partly caused by outsourcing the enforcement to private contractors and setting targets!
94.
▲
by
willtim
6y ago
Java can be slow for many complex reasons, not just GC. Oracle are trying to address some of this with major proposals such as stack-allocated value types, sealed classes, vector intrinsics etc, but these are potentially years away and will
95.
▲
by
willtim
6y ago
While I think that having some publicly funded radio/TV is a really good thing, the idea of the UK TV license and the subsequent enforcement is not. My friends elderly mother does not have or want a TV. She is constantly harassed and t
96.
▲
by
willtim
6y ago
A nice and fun tutorial. I'd also like to see a text editor example in Rust implemented using a persistent data structure, for better concurrency (e.g. background save) and undo support. Perhaps I should have a go!
97.
▲
by
willtim
6y ago
You seem to be lumping all side-effects together as equally bad? I don't think you can expect to push everything out to the edges, for example partiality. I take your point that a lot of imperative programming is done in Haskell (e.g.
98.
▲
by
willtim
6y ago
Monadic composition is used everywhere from simple failure (Maybe or Either) through to genuine side effects such as IO. The presence of monads does not necessarily mean side effects. Haskell never claimed to "get rid of side effects&q
99.
▲
by
willtim
6y ago
> because it's a language with strict evaluation But that is not the only reason. Haskell does much more aggressive optimisations than Java (and Scala, OCaml, F#). A large part of Haskell's space-usage reasoning issues come fro
100.
▲
by
willtim
6y ago
> There's at least a dozen languages you could have chosen, and that others have chosen for any given use case. within some bounds, it makes very little difference. It's about quality of life and picking the right tool for the
101.
▲
by
willtim
6y ago
That is impossible with almost all non-trivial software. Testing proves only the presence of errors not their absence.
102.
▲
by
willtim
6y ago
> But, I've seen this a million times in Java Perhaps when Java gets record types, sealed classes, pattern matching and other features. But right now, Domain Modelling in Java (and C++) is really painful compared to a higher-leve
103.
▲
by
willtim
6y ago
This highlights the risk of building upon and investing in a closed-source and proprietary platform (Flash). Once Adobe discontinued it, it was inevitable that browsers would eventually stop supporting it.
104.
▲
by
willtim
6y ago
Postgres would give us actual Boolean logic whenever we used Boolean operators: https://lucidworks.com/post/why-not-and-or-and-not/
105.
▲
by
willtim
6y ago
Yes, I'm claiming the restriction will be too much for many people, assuming we are trying to create a new language here. However, expressing a solution as a catamorphism is a good thing to do and helps reasoning. It's a form of s
106.
▲
by
willtim
6y ago
> Ah ha, but you see, you can perform transformations on tagless-final terms that are not strict catamorphisms ... so matching two levels deep is possible. No this is not correct. Oleg provides a solution to double negation by creating
107.
▲
by
willtim
6y ago
By "compositional datatypes", I mean being able to define datatypes and functions on them in a modular fashion. I gave a very simple example with enums. For a real world use case, imagine a compiler pipeline, where we have an AST
108.
▲
by
willtim
6y ago
It's great to see a lean app without hundreds of dependencies.
109.
▲
by
willtim
6y ago
It's great to see structural typing in the form of polymorphic extensible records. But I am a bit disappointed they didn't go further, I would have at least liked to see extensible variants. The tuple-based syntax, also makes it r
110.
▲
by
willtim
6y ago
Are they perhaps scared of patents? The whole UI tries hard to be not like Windows or Mac OS, for IMHO little user benefit. I have tried to use Gnome in the past, seeking an easier life, but the multiscreen support was just not good enough
111.
▲
by
willtim
6y ago
Not really a valid comparison. If you buy a pair of high-end Sennhiesers, they'll last many many years. I still use my HD580 from the 90s. They also sell all the necessary spare parts and are easy to repair (mine have had new cables an
112.
▲
by
willtim
6y ago
If the artist makes and sells the CD themselves, it could be close to 100%. This old article from 2013, says a typical figure for major labels is 13%: https://www.bbc.co.uk/news/magazine-23840744 How many times would
113.
▲
by
willtim
6y ago
This is one reason why I still buy CDs. I know that a far bigger proportion of my money will be going to my favorite artists.
114.
▲
by
willtim
6y ago
What exactly do you mean by "build quality"? Do you just mean built from glass and aluminium? (hardly obvious choices for a laptop). IMHO, Apple can hardly claim to be leading in "build quality", what with glued-in batte
115.
▲
by
willtim
6y ago
It was certainly well marketed. But in reality, Spring is also too complex. It has far too much dynamic dispatch, byte-code weaving magic and runtime failure. This is now causing them problems with GraalVM and fast startup times needed for
116.
▲
by
willtim
6y ago
None, I guess they didn't make it complicated enough!
117.
▲
by
willtim
6y ago
Oops, yes I mean't JSP not JSF. I almost want to learn more about JSF, out of morbid curiosity. I'm guessing one can't bookmark any pages and the back button is broken?
118.
▲
by
willtim
6y ago
In some future decade, when Banks start trying to migrate their "Enterprise Java" systems, anyone that can make sense of that bizarre and rather absurd model of computation is going to get well compensated.
119.
▲
by
willtim
6y ago
My jaw dropped the first time I learned that JSF was translated (not sure compiled is the right word) into Servlets full of print statements. And of course no JSF-based application has ever managed to produce valid well-formed HTML ever sin
120.
▲
by
willtim
6y ago
If one wants to learn what the Monad abstraction is, then one by definition will have to learn some category theory! I don't think there is any need to understand what a monad is in order to use any practical programming language. My p
More ›