Heterogenous lists are always coming up when people try to translate OO ideas into Haskell. It's great that this example used the barrier of heterogeneity as a reason to think harder about their design instead of barreling forward. In particular, heterogeneity causes a form of information loss via type erasure (existential typing). The problem is that this is pretty heavy machinery and is not always well-suited to su…
"[I]f you have an existential type where only one way forward remains... you may as well just take that way forward. This is especially easy in a lazy language like Haskell." This doesn't seem especially easy in Haskell (in that it doesn't seem harder elsewhere), but especially the case a lazy language like Haskell. In an eager language, (forall a . Renderable a => a) is isomorphic to (() -> IO ()) and subtly distinc…
Thinking in Types
121–124 of 124 posts
Re: Thinking in Types
#122I'm getting tired of reading: > This is why we hear that Haskell reprise if it compiles, it works. If this were true then functions would not need bodies, you would just define their signatures and move on with life. The truth is that even with its superb type system, Haskell still needs to run your code. Your code might be statically correct but its runtime is up to you. I would prefer it if people rephrased this cl…
I would prefer is people just said "I program faster in Haskell"
Re: Thinking in Types
#123Earlier quoted context omitted.
> Maybe the Mac/Haskell overlap is just too small? Probably so. Though I would suggest that the neither one is a small niche in itself. Mac especially--it's the favored platform for every developer I know except one. Yes, it's less popular outside tech circles (probably due in part to the price). Imagine this scenario: There are tons of Mac users who want to learn Haskell. They try it, but can't install libraries. Th…
I wouldn't at all say either is "a small niche." As niches go, they're both pretty large... I actually have no idea how the prevalence of Mac differs inside and outside tech circles. It's a decided minority in every case, with Windows still dominant and likely Linux still dominated (though I'm far less confident about that in dev circles than I used to be). For what it's worth, virtually every developer I know well e…
Interesting. It must be clustered, as you say.
I use a Mac largely because there are a handful of professional apps that don't run on Linux. (Otherwise, I'd probably go with Mac hardware and a Linux OS.) Which implies that the demands of my industry is what pushed me (and perhaps the people I know) onto Macs.
> there is probably a correlation between those who prefer a Mac and those who prefer a GUI.
It's not so much that I personally prefer a GUI. (I don't, in general.) It's that I make a lot of software for other people, so GUIs aren't a matter of preference but of professional obligation. Also, there are certain applications I'd like to do where a GUI is pretty much the only sensible option: Design tools, certain types of games, etc.
Re: Thinking in Types
#124Earlier quoted context omitted.
Have you looked at the Haskell QML bindings? They generally work for cross platform requirements. http://hackage.haskell.org/package/hsqml-0.1.1/docs/Graphics...
Yes. It does not compile on my Mavericks machine. Same with every graphics package I've tried.
I don't think I've ever been contacted concerning issues with Windows or MacOS, which is probably indictative of the size of the user base combined with probability of any one person deciding to go to the effort. On the other hand, I have fixed genuine build failures for Linux users because the platform is diverse enough that it "worked on my system" but not theirs.
In any case, my contact details are on the HsQML Hackage page. If you'd like to send me the error message you're seeing, I'd be happy to try and help you get it working.