jhickner

Joined 18 years ago

Karma
690
Submissions
122
Member since
Aug 29
co-founder @ http://www.kiteandlightning.com/ http://www.varywell.com/
View on Hacker News

Recent submissions

Comment · 13 years ago
Comment · 13 years ago
Does lens have a succinct way to traverse a nested data structure where each node is a maybe?

Lenses + Prisms (nicest way I know of in lens):

nested ^? foo . _Just . bar . _Just . baz . _Just

vs. the Maybe monad:

foo >=> bar >=> baz $ nested

Comment · 13 years ago
> First of all: what is work? Work is of two kinds: first, altering the position of matter at or near the earth’s surface relatively to other such matter; second, telling other people to do so. The first kind is unpleasant and ill paid; the second is pleasant and highly paid. The second kind is capable of indefinite extension: there are not only those who give orders, but those who give advice as to what orders should be given. Usually two opposite kinds of advice are given simultaneously by two organized bodies of men; this is called politics.
Comment · 13 years ago
John Carmack talks at length about Haskell in this keynote. Definitely worth watching if you're interested in that stuff.
Comment · 13 years ago
Comment · 13 years ago
I'm not saying it's all there yet, just that it's a way forward.
Comment · 13 years ago
> Instead we are mired in the innards of the machine micromanaging absolutely everything with incredible verbosity.

This is one area where Haskell really shines. If you want the machine to be able to do what you want without micromanaging how, than you need a way to formally specify what you mean in an unambiguous and verifiable way. Yet it also needs to be flexible enough to cross domain boundaries (pure code, IO, DSLs, etc).

Category theory has been doing exactly that in the math world for decades, and taking advantage of that in the programming world seems like a clear way forward.

The current state of the industry seems like team of medieval masons (programmers) struggling to build a cathedral with no knowledge of physics beyond anecdotes that have been passed down the generations (design patterns), while a crowd of peasants watch from all angles to see if the whole thing will fall down (unit tests).

Sure, you might be able to build something that way, but it's not exactly science, is it?

Comment · 13 years ago
> Do common people in the US really identify with being a patriot?

Patriotism originally meant you were willing to sacrifice something for your country. Presumably the smallest measure of that sacrifice would be spending your time developing well-founded opinions about how the country should operate. (Just take a look at the federalist papers: 85 long, dense articles arguing in favor of the minutest details of the constitution. And the expectation was that people would actually read them!)

Unfortunately patriotism doesn't mean sacrifice anymore. It means something akin to a fingers-in-the-ear, uncritical fanboyism. Just plaster everything with flags and soaring eagles and call it good. It's not sacrificing everything (like Snowden did), it's something you do instead of sacrificing _anything_, even the time it would take to educate yourself on what your country is doing. And as a bonus you get to flaunt that very ignorance as an additional point of pride.

And yeah, common people here in the US definitely do embrace it to a nauseating degree.

Comment · 13 years ago
We wrote our RF radio mesh coordinator software in Haskell, and it's been a great success. Working with binary data formats (various building control protocols) in Haskell is the kind of thing that spoils you forever.

The one issue I've run into is that ghc can't cross compile. If you want to run your code on ARM, you have to compile an ARM version of ghc (QEMU comes in handy here).

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton