- Fay - Probably the most stable right now? FPComplete uses this, which seems like a big plus. Another plus seems the option to share some code between frontend and backend, though there are some Haskell features like Typeclasses missing (I'm not sure what the actual impact this has on Fay apps?)
- Haste - The Haskell wiki page says it works, though from looking at the GitHub repo it seems to only be developed by one person, and I'm not sure if anyone uses it in production?
- Purescript - I have mixed feeling about this, as Purescript is a new language, while Fay allows for some code sharing.
- Idris - I'm not really sure if this is a usable option at this point, but it seems interesting that JS compiler is there out of the box?
I'm mostly interested in opinions and personal experiences anyone has. There are lots of pages and lots of information about features of each of these languages, but I just couldn't find anything that objectively compares these for a real world application.submitted by progfu
[link] [55 comments]
The UPX executable packer works reasonably well on GHC-compiled programs (7.6.3, ELF x86-64):
$ upx --best hello-worldUltimate Packer for eXecutables Copyright (C) 1996 - 2011 UPX 3.08 Markus Oberhumer, Laszlo Molnar & John Reiser Dec 12th 2011 File size Ratio Format Name -------------------- ------ ----------- ----------- 1133761 -> 314008 27.70% linux/ElfAMD hello-world
The failure mode before and after compression when libgmp is missing is identical, which is good. Compression does not obfuscate errors, even though ldd can no longer detect the shared libraries.
./hello-world: error while loading shared libraries: libgmp.so.10: cannot open shared object file: No such file or directory
Packing executables is in general an interesting problem. Any other type of file that is read, we can insert a uncompression program as a pipe. However, executing is a bit more magical than just reading.
Greetings! I've been doing a new type searcher (just like Hayoo/Hoogle) but retrieving just exact matches (up to variables renaming, arguments order, currified/uncurrified ...etc.). This is the first time I did a Haskell program supposed to be used and read by other people so I'm afraid the code might not be the best and there are for sure still some bugs and quirks...so it could be awesome if someone can take a look and help me with his advice :)submitted by sofosure
[link] [24 comments]
When I gave my “Haskell Bytes” talk on the runtime representation of Haskell values the first time, I wrote here “It is in German, so [..] if you want me to translate it, then (convince your professor or employer to) invite me to hold the talk again“. This has just happened: I got to hold the talk as a Tech Talk at Galois in Portland, so now you can fetch the text also in English. Thanks to Jason for inviting me!
This was on my way to the Oregon Summer School on Programming Languages in Eugene, where I’m right now enjoying the shade of a tree next to the campus. We’ve got a relatively packed program with lectures on dependent types, categorical logic and other stuff, and more student talks in the evening (which unfortunately always collide with the open board game evenings at the local board game store). So at least we started to have a round of diplomacy, where I am about to be crushed from four sides at once. (And no, I don’t think that this has triggered the “illegal download warning” that the University of Oregon received about our internet use and threatens our internet connectivity.)
I am about to enter grad school in the next year and to this day, aside from using matlab to graph 3d functions, I still do math using pencil and paper. I am really interested in geometry and I just purchased a book on computational geometry. My main interests are differential geometry and topology. I would like to know how to get started in those areas using haskell.
I have looked at "haskell for great good" and I also own the book "The craft of functional programming". I have programmed in the past but I never really had a project that interested me so although I can program I don't do enough of it as I would like to.
Any good suggestions to some resources?submitted by spitfiredd
[link] [9 comments]