News for hackers. Stuff that matters.
Re:Static checking of units in Servo by haberman on Monday June 23, 2014 @06:24PM (#7935122)
I have mad respect for Haskell as an idea incubator, but it's not what I'd reach for as a systems programmer: https://news.ycombinator.com/item?id=7895890

Rust is awesome because it's bringing powerful ideas like this to a systems language.

Re:Static checking of units in Servo by coolsunglasses on Monday June 23, 2014 @06:25PM (#7935126)
Systems work is the only good reason I've heard not to use Haskell but it's not a good reason for not having learned Haskell.

I've heard from people that learned Haskell independently or went through my guide alike that benefited greatly from having learned Haskell despite not using it at work.

Types are a more compact and faithful representation of code semantics than what most non-Haskell programmers are working with internally. Haskell also teaches you, beyond thinking in terms of types (heh), how to identify patterns & abstractions that most languages wouldn't allow you to credibly leverage.

Re:Static checking of units in Servo by coldtea on Monday June 23, 2014 @06:54PM (#7935274)
>I've heard from people that learned Haskell independently or went through my guide alike that benefited greatly from having learned Haskell despite not using it at work.

Could also be a failure to admit they wasted their time, because of sunk costs et al.

Not meaning it as snark -- it can always be a valid hypothesis when we're talking about people.

Re:Static checking of units in Servo by dllthomas on Monday June 23, 2014 @06:58PM (#7935296)
I've been using Haskell "at work" on my side projects (which involve other people and a live website, not just toying around), and I'd say that having learned it has impacted the C that I write in my day job. I wouldn't say I'd wasted the time, with or without an impact on my C code.
Re:Static checking of units in Servo by coolsunglasses on Monday June 23, 2014 @06:58PM (#7935293)
No, I know what you mean and I've run into that. I take people don't use/write Haskell regularly and claim to understand it less seriously for this reason.

But people that I think got something out of it seem to be benefiting. One is a startup CTO that was using Clojure before - he's ship-of-theseus'ing his way out.

Re:Static checking of units in Servo by shadytrees on Tuesday June 24, 2014 @12:16AM (#7936167)
I worked on a side project once where I forced myself to use Haskell for everything: build scripts, RabbitMQ consumer, web app. Basically as systems-y as you could get. Once I got over the pain of learning new APIs, I didn't regret the decision once. Being able to distinctly isolate side-effects from pure code made the code more readable and modular. Bonus: trivial parallelization.
Re:Static checking of units in Servo by ANTSANTS on Tuesday June 24, 2014 @04:36AM (#7936711)
>build scripts, RabbitMQ consumer, web app. Basically as systems-y as you could get.

What? Systems programming means things like OS kernels and language runtimes. Places where garbage collection is not acceptable, and assembly language is not unheard of. Places where Haskell would be useless.

Re:Static checking of units in Servo by omaranto on Tuesday June 24, 2014 @01:02AM (#7936264)
When you did that, did you use Shake[^1] for the build scripts? If not, check it out! It lets you easily say things like "bundle.tar.gz depends on the file MANIFEST and on every file mentioned in it", for example.

[^1]: https://github.com/ndmitchell/shake