[Haskell] ANNOUNCE: call-haskell-from-anything 1.0

2016-01-30 Thread Niklas Hambüchen
Heya, I'm happy to announce a new release of call-haskell-from-anything [1], my library for FFI-via-serialisation that allows to easily call Haskell functions from any other language that can open shared object files (`.so` via `dlopen()`) and has a MessagePack library available. This is almost

Re: [Haskell] [ANN] cabal-dev officially deprecated in favor of cabal sandboxes

2014-09-24 Thread Niklas Hambüchen
On 24/09/14 00:59, Jonathan Daugherty wrote: I'm pleased to announce (really!) that cabal-dev is being deprecated in favor of cabal sandboxes. It might also make sense to tag http://hackage.haskell.org/package/cabal-dev as a deprecated package. ___

Re: [Haskell] [accelerate-haskell] [ANN] accelerate-0.15

2014-09-15 Thread Niklas Hambüchen
Excellent! Now here comes my number 1 feature request for the next version: IO/ST arrays/computations in accelerate, so that I can implement stuff that can work on a 1GB device array with interleaved IO, without having to download and-re-upload that array every time. Keep up the good work!

[Haskell] ANNOUNCE: hemokit 0.6.3 - Now with OpenVibe compatibility

2014-08-31 Thread Niklas Hambüchen
Heya, out is Hemokit 0.6.3, which can now be connected to the OpenVibe EEG framework. OpenVibe allows fancy stuff like spelling words with your mind: Video: https://www.youtube.com/watch?v=08GNE6OdNcs Docs: http://openvibe.inria.fr/coadapt-p300-stimulator-tutorial There is a new tutorial on

Re: [Haskell] [Haskell-cafe] ANNOUNCE: Haskell Pdf Presenter (hpdfp) 0.2.2

2013-11-14 Thread Niklas Hambüchen
On 14/11/13 08:14, Michael D. Adams wrote: When the program is doing background rendering, it will go to 100% CPU time, but once the background rendering completes, it should settle down to almost no CPU usage at all (my task manager literally shows 0% CPU once pre-rending completes). Does

Re: [Haskell] [Haskell-cafe] ANNOUNCE: Haskell Pdf Presenter (hpdfp) 0.2.2

2013-11-13 Thread Niklas Hambüchen
That is great, I've been interested in that program since your POPL talk. One problem I've had with it so far: It takes 100% CPU time when idle, which makes my laptop go quite hot. Any idea why that could be? On Wed 13 Nov 2013 18:16:48 GMT, Michael D. Adams wrote: ANNOUNCE: Haskell Pdf

Re: [Haskell-cafe] ordNub

2013-10-13 Thread Niklas Hambüchen
On 13/10/13 21:42, AntC wrote: Niklas Hambüchen mail at nh2.me writes: In sets, the order does not matter, while for nub it does. Let's be careful here!. Niklas, when you say order, do you mean: * the _ordering_ from the Ord instance? Or * the relative sequence of elements in the list

Re: [Haskell-cafe] ordNub

2013-10-13 Thread Niklas Hambüchen
On 14/10/13 03:20, AntC wrote: Thanks Niklas, I hadn't spotted those benchmarks back in July. No worries :) I'm surprised at that result for singletons (and for very small numbers of elements which are in fact each different). I think one of the main reasons for the performance difference

Re: [Haskell-cafe] ordNub

2013-10-12 Thread Niklas Hambüchen
I would like to come back to the original question: How can ordNub be added to base? I guess we agree that Data.List is the right module for a function of type Ord a = [a] - [a], but this introduces * a cyclic dependency between Data.List and Data.Set * a base dependency on containers. What is

Re: [Haskell-cafe] ordNub

2013-10-12 Thread Niklas Hambüchen
On 12/10/13 20:43, Anthony Cowley wrote: I think nub's behavior is rather set-related, so I don't really understand the objection to putting it in Data.Set. In sets, the order does not matter, while for nub it does. nub:: Eq a = [a] - [a] ordNub :: Ord a = [a] - [a] both do not

Re: [Haskell-cafe] FFI: how to handle external dll crashes

2013-09-23 Thread Niklas Hambüchen
If you cannot do it with Haskell exceptions, I guess you need to look how you would do it in plain C in do the same. Keep in mind that if something crashes in a C library, that library might have corrupted (or leaked) any memory it had access to. I guess a somewhat reliable way is to fork an

Re: [Haskell-cafe] FFI: how to handle external dll crashes

2013-09-23 Thread Niklas Hambüchen
Hey, I don't think any of your code actually forks of an *OS process*. There three main kinds of threading constructs: * Haskell threads (forkIO) * Operating System threads (forkOS) * Operating System processes (forkProcess, fork() in C) Async uses the first one, you will need last one (which

Re: [Haskell-cafe] Readable GHC 7.6.3 docs (Bootstrapped)

2013-09-11 Thread Niklas Hambüchen
Looks pleasing! I have one feature request: Could you make headings links, or add anchors next to them (github readme style), such that I can directly share what I'm reading with people? On Wed 11 Sep 2013 20:31:30 JST, Obscaenvs wrote: At [1] you can find links to the GHC documentation that

[Haskell-cafe] Proposal: New syntax for Haskell

2013-09-10 Thread Niklas Hambüchen
Impressed by the productivity of my Ruby-writing friends, I have recently come across Cucumber: http://cukes.info It is a great tool for specifying tests and programs in natural language, and especially easy to learn for beginners. I propose that we add a Cucumber syntax for Haskell, with the

Re: [Haskell-cafe] GHC API + Cabal API + Cabal version checks: is there a way out?

2013-09-07 Thread Niklas Hambüchen
Would you mind hanging around in #ghc when working on it? A few people found this interesting, so this might be useful to avoid duplicate effort. On Sat 07 Sep 2013 18:24:43 JST, JP Moresmau wrote: I'll be happy to give it a shot! ___ Haskell-Cafe

Re: [Haskell-cafe] GHC API + Cabal API + Cabal version checks: is there a way out?

2013-09-06 Thread Niklas Hambüchen
On Fri 06 Sep 2013 22:13:58 JST, Yuri de Wit wrote: The right solution, imho, is to review these dependencies and move the low level ones out into a separate package that is shared by both ghc and cabal and that will rarely change. The direct side effect of this is that ghc would not be tied

Re: [Haskell-cafe] GHC API + Cabal API + Cabal version checks: is there a way out?

2013-09-06 Thread Niklas Hambüchen
On Fri 06 Sep 2013 22:52:40 JST, Roman Cheplyaka wrote: The right solution for Cabal would be not to know anything about the GHC's database format at all. GHC and cabal communicate via a command line interface (`ghc-pkg dump` in our direction; `ghc-pkg update` in the other). So it would

Re: [Haskell-cafe] GHC API + Cabal API + Cabal version checks: is there a way out?

2013-09-06 Thread Niklas Hambüchen
It looks to me that technically it should be easy to split off the part required by GHC. Maybe somebody could just try that (currently it does not seem to take longer than a few hours) so that we have some basic proposal and momentum. On 07/09/13 00:04, JP Moresmau wrote: Oh, I'm happy to help

Re: [Haskell-cafe] GHC API + Cabal API + Cabal version checks: is there a way out?

2013-09-06 Thread Niklas Hambüchen
We just had a short discussion on #ghc, I copy-paste: http://lpaste.net/92639 dcoutts_: nh2: Cabal does not depend on the ghc-pkg format. Cabal specifies a compiler-independent package registration format. GHC uses it in its external interface (and internally too). It uses the Cabal lib for the

Re: [Haskell-cafe] GHC API + Cabal API + Cabal version checks: is there a way out?

2013-09-06 Thread Niklas Hambüchen
I have filed a GHC ticket under http://ghc.haskell.org/trac/ghc/ticket/8244 I hope this way we can find a solution soon. On 07/09/13 00:04, JP Moresmau wrote: Oh, I'm happy to help as well if somebody is needed to do the change, since I have much to win in the future if EclipseFP can take

Re: [Haskell-cafe] Strange IO sequence behaviour (Was: sequence causing stack overflow on pretty small lists)

2013-09-06 Thread Niklas Hambüchen
Ah, that's enlightening, and a good addition to http://ghc.haskell.org/trac/ghc/ticket/8189 On Sat 07 Sep 2013 04:31:31 JST, Tom Ellis wrote: FYI, rwbarton on Reddit produced a nice answer: http://www.reddit.com/r/haskell/comments/1luan1/strange_io_sequence_behaviour/cc32ec4

Re: [Haskell-cafe] Tutorial on JS with Haskell: Fay or GHCJS?

2013-09-04 Thread Niklas Hambüchen
Hi, I'm also interested in that. Have you already evaluated haste? It does not seem to have any of your cons, but maybe others. What I particularly miss from all solutions is the ability to simply call parts written in Haskell from Javascript, e.g. to write `fib` and then integrate it into an

Re: [Haskell-cafe] On Markdown in Haddock and why it's not going to happen

2013-09-03 Thread Niklas Hambüchen
On 30/08/13 10:30, Mateusz Kowalczyk wrote: I would also like to remind you that if there's something that you'd like to see in Haddock or something that you feel is broken, a good way express this is to make a ticket on the Haddock Trac[2]. I made one:

Re: [Haskell-cafe] On Markdown in Haddock and why it's not going to happen

2013-09-01 Thread Niklas Hambüchen
On 01/09/13 04:27, Mateusz Kowalczyk wrote: It doesn't have to be 1-to-1 but the features have to be expressible in both: it's useless if we have different features with one syntax but not the other. I don't find that useless. Markdown does not have definition lists, but we use a normal list

Re: [Haskell-cafe] On Markdown in Haddock and why it's not going to happen

2013-08-31 Thread Niklas Hambüchen
Hello, I disagree. While none of your detail points are wrong, they mainly focus on the fact that there is no 1-to-1 mapping between the existing haddock markup and Markdown. I don't think there needs to be. If Markdown can do something new, that something can be added; if something doesn't make

Re: [Haskell-cafe] cpphs calls error when it finds an #error declaration

2013-08-28 Thread Niklas Hambüchen
On 29/08/13 00:43, Malcolm Wallace wrote: Have you tried simply wrapping the call to runCpphs in a catch? Something like safeRunCpphs :: ... - IO (Either String String) safeRunCpphs foo = fmap Right (runCpphs foo) `catch` (\(UserError s)- Left s Yes, that is what I'm doing at

Re: [Haskell-cafe] sequence causing stack overflow on pretty small lists

2013-08-27 Thread Niklas Hambüchen
Thanks for your examples. On 27/08/13 13:59, Albert Y. C. Lai wrote: The correct fix is to raise the stack cap, not to avoid using the stack. Indeed, ghci raises the stack cap so high I still haven't fathomed where it is. This is why you haven't seen a stack overflow in ghci for a long

[Haskell-cafe] cpphs calls error when it finds an #error declaration

2013-08-27 Thread Niklas Hambüchen
Hi, after some debugging of a higher-level tool I found out that when I use cpphs as a library and the `runCpphs` function that is to produce the preprocessed output, when it comes across the #error directive it will terminate my program. This is because handling #error is implemented with

Re: [Haskell-cafe] Template Haskell

2013-08-27 Thread Niklas Hambüchen
Hi Jose, Template Haskell doesn't parse code. haskell-src-exts and the GHC API can do that. Have a look at: * ghc-mod browse (using ghc api) * hscope (using haskell-src-exts) On 27/08/13 15:45, Jose A. Lopes wrote: Hi, Is it possible to retrieve all definitions contained in a module using

Re: [Haskell-cafe] sequence causing stack overflow on pretty small lists

2013-08-27 Thread Niklas Hambüchen
On 27/08/13 20:37, Patrick Palka wrote: You can use ContT to force the function to use heap instead of stack space, e.g. runContT (replicateM 100 (lift randomIO)) return That is interesting, and works. Unfortunately its pure existence will not fix sequence, mapM etc. in base.

[Haskell-cafe] sequence causing stack overflow on pretty small lists

2013-08-26 Thread Niklas Hambüchen
On #haskell we recently had a discussion about the following: import System.Random list - replicateM 100 randomIO :: IO [Int] I would think that this gives us a list of a million random Ints. In fact, this is what happens in ghci. But with ghc we get: Stack space overflow: current

Re: [Haskell-cafe] sequence causing stack overflow on pretty small lists

2013-08-26 Thread Niklas Hambüchen
As an example that this actually makes problems in production code, I found this in the wildlife: https://github.com/ndmitchell/shake/blob/e0e0a43/Development/Shake/Database.hs#L394 -- Do not use a forM here as you use too much stack space bad - (\f - foldM f [] (Map.toList status)) $

Re: [Haskell-cafe] ordNub

2013-08-26 Thread Niklas Hambüchen
On 14/07/13 20:20, Niklas Hambüchen wrote: As you might not know, almost *all* practical Haskell projects use it, and that in places where an Ord instance is given, e.g. happy, Xmonad, ghc-mod, Agda, darcs, QuickCheck, yesod, shake, Cabal, haddock, and 600 more (see https://github.com/nh2

Re: [Haskell-cafe] sequence causing stack overflow on pretty small lists

2013-08-26 Thread Niklas Hambüchen
Maybe an unlimited stack size should be the default? As far as I understand, the only negative effect would be that some programming mistakes would not result in a stack overflow. However, I doubt the usefulness of that: * It already depends a lot on the optimisation level * If you do the same

Re: [Haskell-cafe] Renumbered mailing list posts

2013-08-25 Thread Niklas Hambüchen
Austin: Do you have any update on this? On 11/08/13 04:48, Austin Seipp wrote: Henning, Thanks for the report. I'm currently investigating this, and think it should be possible to keep all of the old URLs intact. On Sat, Aug 10, 2013 at 11:01 AM, Niklas Hambüchen m...@nh2.me wrote: On 11

Re: [Haskell] ANNOUNCE: haskell-src-exts 1.14.0

2013-08-20 Thread Niklas Hambüchen
Nice! I hope that haskell-suite will eventually become awesome and solve most of our automation-on-Haskell-code needs. Two questions: 1) My most desired feature would be a syntax tree that does not pluck pluck comments out and make me treat them separately. It looks much easier to me to have a

Re: [Haskell] ANNOUNCE: haskell-src-exts 1.14.0

2013-08-20 Thread Niklas Hambüchen
On 20/08/13 18:19, Niklas Broberg wrote: Sadly not - it's theoretically impossible. The fact that you can put comments literally wherever, means that it's impossible to treat them as nodes of the AST. E.g. f {- WHERE -} x = -- WOULD -- THESE do -- COMMENTS a {- END

[Haskell] ANNOUNCE: posix-paths, for faster file system operations

2013-08-20 Thread Niklas Hambüchen
John Lato and I would like to announce our posix-paths package. https://github.com/JohnLato/posix-paths It implements a large portion of System.Posix.FilePath using ByteString based RawFilePaths instead of String based FilePaths, and on top of that provides a Traversal module with a fast

Re: [Haskell-cafe] [Haskell] ANNOUNCE: haskell-src-exts 1.14.0

2013-08-20 Thread Niklas Hambüchen
Nice! I hope that haskell-suite will eventually become awesome and solve most of our automation-on-Haskell-code needs. Two questions: 1) My most desired feature would be a syntax tree that does not pluck pluck comments out and make me treat them separately. It looks much easier to me to have a

Re: [Haskell-cafe] [Haskell] ANNOUNCE: haskell-src-exts 1.14.0

2013-08-20 Thread Niklas Hambüchen
On 20/08/13 18:19, Niklas Broberg wrote: Sadly not - it's theoretically impossible. The fact that you can put comments literally wherever, means that it's impossible to treat them as nodes of the AST. E.g. f {- WHERE -} x = -- WOULD -- THESE do -- COMMENTS a {- END

[Haskell-cafe] ANNOUNCE: posix-paths, for faster file system operations

2013-08-20 Thread Niklas Hambüchen
John Lato and I would like to announce our posix-paths package. https://github.com/JohnLato/posix-paths It implements a large portion of System.Posix.FilePath using ByteString based RawFilePaths instead of String based FilePaths, and on top of that provides a Traversal module with a fast

Re: [Haskell-cafe] Renumbered mailing list posts

2013-08-10 Thread Niklas Hambüchen
Yes, I also found that links from Google to archives don't work any more. (Also fact that hpaste just went away, invalidating all my links to hpastes, is similarly bad.) On Sat 10 Aug 2013 17:49:35 JST, Henning Thielemann wrote: Recently I found that links from Google search results to

Re: [Haskell-cafe] Renumbered mailing list posts

2013-08-10 Thread Niklas Hambüchen
On 11/08/13 00:50, Brandon Allbery wrote: Those at least are recoverable, just replace hpaste.org http://hpaste.org with lpaste.net http://lpaste.net (content is still there). But still. Unfortunately I cannot amend emails that I have sent. Could we not just have kept the domain and set a

Re: [Haskell-cafe] casting a into Maybe a

2013-07-27 Thread Niklas Hambüchen
Put a Just around it? transMit s now key (Just newmsgs) q m On Sat 27 Jul 2013 20:05:43 JST, Joerg Fritsch wrote: If I have the following type signature transMit :: Serialize a = Socket - POSIXTime - KEY - Maybe a - TPSQ - TMap a - IO () And the function is called with transMit s now key

Re: [Haskell-cafe] Monad Transformer Space Leak

2013-07-18 Thread Niklas Hambüchen
Did you file this as a bug? On Tue 23 Apr 2013 23:16:03 JST, Clark Gaebel wrote: I'm on 7.6.2, and it does. Oh no. - Clark On Tuesday, April 23, 2013, Tom Ellis wrote: On Tue, Apr 23, 2013 at 09:36:04AM +0200, Petr Pudlák wrote: I tested it on GHC 6.12.1, which wasn't affected

Re: [Haskell-cafe] Monad Transformer Space Leak

2013-07-18 Thread Niklas Hambüchen
Sounds like a Real Good Thing to do :) On Fri 19 Jul 2013 11:10:25 JST, Clark Gaebel wrote: No I haven't. - Clark On Thu, Jul 18, 2013 at 10:07 PM, Niklas Hambüchen m...@nh2.me wrote: Did you file this as a bug? On Tue 23 Apr 2013 23:16:03 JST, Clark Gaebel wrote: I'm on 7.6.2

Re: [Haskell-cafe] ordNub

2013-07-15 Thread Niklas Hambüchen
Hey Jason, would you mind giving a short idea of what the point of Bird's implementation is / from what properties it is derived? Also, running the QuickCheck tests you added, it doesn't give the same output (order) as nub. On 15/07/13 13:26, Jason Dagit wrote: Richard Bird has a book, Pearls

Re: [Haskell-cafe] Hoogle problems?

2013-07-15 Thread Niklas Hambüchen
OK, but why does it need to go down for migration? On Mon 15 Jul 2013 23:52:02 SGT, Daniel F wrote: The web site is migrating. IRC says: Topic for #haskell: haskell.org in the middle of migration; expect turbulence; use www.haskell.org ___

[Haskell-cafe] ordNub

2013-07-14 Thread Niklas Hambüchen
tldr: nub is abnormally slow, we shouldn't use it, but we do. As you might know, Data.List.nub is O(n²). (*) As you might not know, almost *all* practical Haskell projects use it, and that in places where an Ord instance is given, e.g. happy, Xmonad, ghc-mod, Agda, darcs, QuickCheck, yesod,

Re: [Haskell-cafe] ordNub

2013-07-14 Thread Niklas Hambüchen
One of my main points is: Should we not add such a function (ord-based, same output as nub, stable, no sorting) to base? As the package counting shows, if we don't offer an alternative, people obviously use it, and not to our benefit. (Not to say it this way: We could make the Haskell world

Re: [Haskell-cafe] ANN: custom-hackage

2013-06-16 Thread Niklas Hambüchen
it another try. Niklas On 17/06/13 02:42, Albert Y. C. Lai wrote: On 13-06-13 11:09 AM, Niklas Hambüchen wrote: https://github.com/nh2/custom-hackage An (almost trivial) script to generate 00-index.tar.gz which is necessary to run your own `remote-repo`. I write the following critique

[Haskell] ANN: custom-hackage

2013-06-13 Thread Niklas Hambüchen
https://github.com/nh2/custom-hackage An (almost trivial) script to generate 00-index.tar.gz which is necessary to run your own `remote-repo`. If you are a company that has to rely on that not everybody with a Hackage account can run arbitrary code on your computer at your next cabal install,

Re: [Haskell-cafe] Testing invasive proposals with Hackager

2013-06-13 Thread Niklas Hambüchen
On 13/06/13 10:06, Conrad Parker wrote: How do we add packages to the list; do you have a github repo for it? I've put it on haskell-pkg-janitors: https://github.com/haskell-pkg-janitors/hackage-build-deps/blob/master/ubuntu-13.04.txt ___

Re: [Haskell-cafe] Testing invasive proposals with Hackager

2013-06-13 Thread Niklas Hambüchen
On 13/06/13 18:36, Vo Minh Thu wrote: For example, here is a run with GHC, no special options and using 4 threads (note that this generally takes a long time, i.e. a few days): My builds finished in 10 hours on an i7. ___ Haskell-Cafe mailing list

Re: [Haskell-cafe] Automating Hackage accounts

2013-06-13 Thread Niklas Hambüchen
As for the user account creation and uploading packages you don't own, Hackage 2 (any day now) has fixes for both. Does Hackage 2 have SSL at least for the web interface? ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org

[Haskell-cafe] ANN: custom-hackage

2013-06-13 Thread Niklas Hambüchen
https://github.com/nh2/custom-hackage An (almost trivial) script to generate 00-index.tar.gz which is necessary to run your own `remote-repo`. If you are a company that has to rely on that not everybody with a Hackage account can run arbitrary code on your computer at your next cabal install,

Re: [Haskell-cafe] Automating Hackage accounts

2013-06-13 Thread Niklas Hambüchen
I'm not quite sure what it would achieve, though. That if I want to upload something without my password going over in plain text, I can at least use the file upload form. ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org

[Haskell-cafe] Testing invasive proposals with Hackager

2013-06-12 Thread Niklas Hambüchen
In many discussions we make guesses about how much code proposals like Functor = Monad would break. You can use https://github.com/dterei/Hackager to build all of Hackage (preferably in a VM). Of course many packages have external dependencies, so I'd like to share the following list of packages

Re: [Haskell-cafe] ANNOUNCE: standalone-haddock-1.0

2013-06-07 Thread Niklas Hambüchen
Awesome! I've wanted that many times. ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

Re: [Haskell-cafe] GADT and instance deriving

2013-05-24 Thread Niklas Hambüchen
On Sat 25 May 2013 00:37:59 SGT, TP wrote: Is this the right way to go? Is there any other solution? I believe whether it's right or just depends on what you want to express. Do you confirm that tilde in s~s1 means s has the same type as s1? It means: Both your s and s1 are Eqs but not

Re: [Haskell-cafe] GADT and instance deriving

2013-05-24 Thread Niklas Hambüchen
On 25/05/13 06:06, Alexander Solla wrote: On Fri, May 24, 2013 at 10:41 AM, Niklas Hambüchen m...@nh2.me mailto:m...@nh2.me wrote: On Sat 25 May 2013 00:37:59 SGT, TP wrote: Is this the right way to go? Is there any other solution? I believe whether it's right or just

Re: [Haskell-cafe] Infrastructure for testing the impact of a Functor/Applicative/Monad hierarchy

2013-05-22 Thread Niklas Hambüchen
Ian Lynagh just posted a link to the hackager program: http://hackage.haskell.org/trac/ghc/wiki/HackageTesting That seems to be pretty much what I was looking for. ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org

Re: [Haskell-cafe] ghc-mod v2.0.1

2013-05-20 Thread Niklas Hambüchen
Awesome, even with Cabal API! Just one note: The emacs link on the left is not found. On Tue 21 May 2013 10:31:01 SGT, Kazu Yamamoto (山本和彦) wrote: Hi cafe! I have released ghc-mod v2.0.1. From this version, ghc-mod provides the ghc-mod library in addition to the ghc-mod command:

Re: [Haskell-cafe] Non-deterministic behaviour of aeson's parser

2013-05-18 Thread Niklas Hambüchen
Can't reproduce: % ./aeson | sort | uniq -c 2000 Right () % ./aeson | sort | uniq -c 2000 Right () % ./aeson | sort | uniq -c 2000 Right () % ./aeson | sort | uniq -c 2000 Right () % ./aeson | sort | uniq -c 2000 Right () Time 100: % ./aeson | sort | uniq -c 20 Right () My

[Haskell-cafe] Infrastructure for testing the impact of a Functor/Applicative/Monad hierarchy

2013-05-16 Thread Niklas Hambüchen
Reading the other thread (Adding Applicative/Functor instances to all Monads in GHC) I was wondering if there was infrastructure for testing what effect making the often-discussed Functor/Monad change would have: How many packages on hackage would break etc. I have read a few times that people

Re: [Haskell-cafe] Summary (Re: Interfacing Java/Haskell)

2013-05-15 Thread Niklas Hambüchen
For a simple interchange format, you might also look at MSGPACK; the bindings are nice and the format is simple. I used it for call-haskell-from-anything (https://github.com/nh2/call-haskell-from-anything), a concept with which you can call Haskell code from any language that supports loading

Re: [Haskell-cafe] Parallel ghc --make

2013-05-15 Thread Niklas Hambüchen
Hello Thomas, thanks for your detailed answer. Could be worthwhile re-evaluating the patch. Does your patch still apply somewhat cleanly? And does it address all the caches in your list already or only some subset of them? To have a multi-process ghc --make you don't need thread-safety.

Re: [Haskell-cafe] ANN: Robot - Simulate keyboard and mouse events under X11

2013-05-14 Thread Niklas Hambüchen
` function probably wants to keep it held down anyway. Chris On Tue, May 14, 2013 at 12:46 PM, Niklas Hambüchen m...@nh2.me wrote: Awesome, that works very well, and it even made my program run faster / with less CPU. The reset functionality is useful, but I think optional is better. Did

[Haskell-cafe] Parallel ghc --make

2013-05-13 Thread Niklas Hambüchen
I know this has been talked about before and also a bit in the recent GSoC discussion. I would like to know what prevents ghc --make from working in parallel, who worked at that in the past, what their findings were and a general estimation of the difficulty of the problem. Afterwards, I would

Re: [Haskell-cafe] ANN: Robot - Simulate keyboard and mouse events under X11

2013-05-13 Thread Niklas Hambüchen
behavior should be specified explicitly, not attached unconditionally to every call to runRobot. I've removed the offending code, and released it as version 1.1. Hopefully I've ironed out the issues now :) On Mon, May 13, 2013 at 12:49 PM, Niklas Hambüchen m...@nh2.me wrote: Can you show me

Re: [Haskell-cafe] ANN: Robot - Simulate keyboard and mouse events under X11

2013-05-12 Thread Niklas Hambüchen
seems to be reset with the next robot event. On Sun 12 May 2013 16:02:06 SGT, Chris Wong wrote: On Thu, May 9, 2013 at 1:36 PM, Chris Wong chrisyco+haskell-c...@gmail.com wrote: On Thu, May 9, 2013 at 4:47 AM, Niklas Hambüchen m...@nh2.me wrote: Hi, I just started using your library to move

Re: [Haskell-cafe] ANN: Robot - Simulate keyboard and mouse events under X11

2013-05-12 Thread Niklas Hambüchen
Can you show me the code that triggers that behavior? It is basically Just connection - connect forever $ do (x,y) - getGyroMovement runRobotWithConnection (moveBy x y) connection ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org

Re: [Haskell-cafe] ghci: Difference in garbage collection etc. between REPL and function

2013-05-09 Thread Niklas Hambüchen
On 09/05/13 20:50, Brandon Allbery wrote: ghci is in many ways like an endless (or at least until :l/:r) do-block. In particular, the handle remains in scope after you run your commands at the prompt, so it is not garbage collected. If you enclose it into its own do block, this introduces

Re: [Haskell-cafe] ANN: Robot - Simulate keyboard and mouse events under X11

2013-05-08 Thread Niklas Hambüchen
Hi, I just started using your library to move my cursor. Is it possible that it ignores negative values in moveBy? In other words, I can only move the cursor into one direction. ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org

[Haskell-cafe] ghci: Difference in garbage collection etc. between REPL and function

2013-05-08 Thread Niklas Hambüchen
I have an annoying bug in a C binding that can be triggered like this: handle - open ... prep - makePreparedStatement handle INSERT ... performGC runStatement prep close handle If I run these steps one by one in ghci, garbage ends up in my handle as expected. However,

Re: [Haskell-cafe] Hackage checking maintainership of packages

2013-05-06 Thread Niklas Hambüchen
On 06/05/13 17:46, Tillmann Rendel wrote: So what about this: Hackage could try to automatically collect and display information about the development status of packages that allow potential users to *guess* In my opinion, that's what we have now. Obtaining the info in the four points you

Re: [Haskell-cafe] Hackage checking maintainership of packages

2013-05-06 Thread Niklas Hambüchen
On 06/05/13 20:06, Tillmann Rendel wrote: Is a human clicked the check box a good metric for a human commits themselves to this package? If the check box has the text Do you want this thing to be called 'maintained' on Hackage next to it, yes. ___

Re: [Haskell-cafe] Hackage checking maintainership of packages

2013-05-06 Thread Niklas Hambüchen
Well, that's what the once every 3 months is good for. On Mon 06 May 2013 20:34:13 SGT, Tobias Dammers wrote: The problem is that people tend to (truthfully) check such a box, then stop maintaining the package for whatever reasons, and never bother unchecking the box.

Re: [Haskell-cafe] Hackage checking maintainership of packages

2013-05-05 Thread Niklas Hambüchen
: Hi, on another thread there was a suggestion which perhaps went unnoticed by most: -- Forwarded message -- From: Niklas Hambüchen m...@nh2.me

Re: [Haskell-cafe] Backward compatibility

2013-05-04 Thread Niklas Hambüchen
instead of calling for revolution. If that is the plan then I'd appreciate somebody putting me in the picture. Otherwise, please try to understand that the problems I'm up against are not about whether Num is derived from Eq or whatever. mfG, Adrian. On 4 May 2013 02:33, Niklas Hambüchen

[Haskell-cafe] runhaskell flags: What is going on?

2013-05-03 Thread Niklas Hambüchen
runhaskell -fno-warn-unused-matches Myfile.hs [some compile error] runhaskell -fno-warn-unused-matches Myfile.hs [no output whatsoever but exit code 127] runhaskell -asdf Myfile.hs ghc: unrecognised flags: -asdf runhaskell -fasdf Myfile.hs [no output whatsoever but exit code 127] Not sure

Re: [Haskell-cafe] Backward compatibility

2013-05-03 Thread Niklas Hambüchen
While I certainly enjoy the discussion, how about addressing one of the original problems: On 02/05/13 13:27, Adrian May wrote: I just tried to use Flippi. It broke because of the syntax change so I tried WASH. I couldn't even install it because of the syntax change. I just fixed that in

Re: [Haskell-cafe] Backward compatibility

2013-05-03 Thread Niklas Hambüchen
On 04/05/13 01:52, Nicolas Trangez wrote: On Fri, 2013-05-03 at 10:40 -0700, Hilco Wijbenga wrote: Given the apparent simplicity of the changes needed to keep one's Haskell code up to snuff and the strong typing inherent in Haskell code, would it not be possible to create something similar? If

Re: [Haskell-cafe] Backward compatibility

2013-05-03 Thread Niklas Hambüchen
All right, here you go: https://github.com/nh2/WashNGo https://github.com/nh2/WashNGo/commit/08010e7404219470a827f3e4172004f9d2aedc29 Took me around 75 minutes. Think about it a bit: I just ported thirty thousand lines of code that I have never seen before and that has bit-rotted for over six

Re: [Haskell-cafe] runhaskell flags: What is going on?

2013-05-03 Thread Niklas Hambüchen
Not sure what you mean; if I just run `runhaskell`, it reads from stdin. In any way, if runhaskell exits with error code 127, should it not print what the error is? On Fri 03 May 2013 22:48:33 SGT, Brandon Allbery wrote: If you type just 'runhaskell' you will get an error message which

[Haskell-cafe] GSoC proposal: Haskell AST-based refactoring and API upgrading tool

2013-04-29 Thread Niklas Hambüchen
I would like to propose the development of source code refactoring tool that operates on Haskell source code ASTs and lets you formulate rewrite rules written in Haskell. Objective - The goal is to make refactorings easier and allow global code changes that might be incredibly tedious to

Re: [Haskell-cafe] GSoC proposal: Haskell AST-based refactoring and API upgrading tool

2013-04-29 Thread Niklas Hambüchen
, at 07:00, Niklas Hambüchen wrote: I would like to propose the development of source code refactoring tool that operates on Haskell source code ASTs and lets you formulate rewrite rules written in Haskell. Seen this? http://www.haskell.org/haskellwiki/HaRe Regards, Malcolm

Re: [Haskell-cafe] package-inplace is shadowed by package package-hexstring

2013-04-14 Thread Niklas Hambüchen
Hi, I just got the same thing with attoparsec GIT: Preprocessing benchmark 'benchmarks' for attoparsec-0.10.4.0... Building benchmark benchmarks... creating dist/build/benchmarks creating dist/build/benchmarks/benchmarks-tmp /home/niklas/opt/haskell-7.4/bin/ghc --make -fbuilding-cabal-package -O

Re: [Haskell-cafe] ANN: psqueue-benchmarks - benchmarks of priority queue implementations

2013-04-12 Thread Niklas Hambüchen
I actually found a (potential) problem with the GHC implementation. See here: https://github.com/nh2/psqueue-benchmarks/blob/db89731c5b4bdd2ff2ef81022a65f894036d8453/QueueBenchmark.hs#L44 If I fromList 100 entries into the queue, it stack space overflows. I got the same problem with the

[Haskell-cafe] Web servers: Running them multiple times in a ghci session

2013-04-10 Thread Niklas Hambüchen
I'm writing a web server app, which I run in ghci: :main localhost 8000 Unfortunately, after Ctrl-C and :reload, running it again: ** Exception: bind: resource busy (Address already in use) This is pretty annoying, because quitting-and-restarting takes a lot of time since I have many

Re: [Haskell-cafe] GSoC Project Proposal: Markdown support for Haddock

2013-04-08 Thread Niklas Hambüchen
Could you elaborate a bit on which markdown features you support (or even better: write it into your module haddocks)? Thinks like - autolink detection - ```language blocks? Also, you build on performance-oriented libraries - it would be cool if you could make a small benchmark comparing with

Re: [Haskell] ANN: psqueue-benchmarks - benchmarks of priority queue implementations

2013-04-06 Thread Niklas Hambüchen
On 30/03/13 06:44, Louis Wasserman wrote: That said, I'm not sure I follow how queuelike is a psqueue at all as opposed to a pqueue? Louis, you are actually right. I was tricked by the delete function, which takes only the queue, not the key, so it simply pops the top - queuelike is not a

Re: [Haskell-cafe] ANN: psqueue-benchmarks - benchmarks of priority queue implementations

2013-04-06 Thread Niklas Hambüchen
On 30/03/13 06:44, Louis Wasserman wrote: That said, I'm not sure I follow how queuelike is a psqueue at all as opposed to a pqueue? Louis, you are actually right. I was tricked by the delete function, which takes only the queue, not the key, so it simply pops the top - queuelike is not a

Re: [Haskell-cafe] ANN: psqueue-benchmarks - benchmarks of priority queue implementations

2013-04-06 Thread Niklas Hambüchen
@Cale, do you have a repo of fingertree-psqueue around? ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

Re: [Haskell] [Haskell-cafe] ANN: psqueue-benchmarks - benchmarks of priority queue implementations

2013-03-29 Thread Niklas Hambüchen
Hey Scott, I quickly tried your suggestion, plugging in foldr' from Data.Foldable and sprinkling a few seqs in some places, but it doesn't help the stack overflow. On Fri 29 Mar 2013 16:23:55 GMT, Scott Dillard wrote: I do not know why it overflows. It's been a while, but isn't the answer

Re: [Haskell] [Haskell-cafe] ANN: psqueue-benchmarks - benchmarks of priority queue implementations

2013-03-29 Thread Niklas Hambüchen
Hey Kazu, I added GHC's PSQ to the benchmark, the new figures are on http://htmlpreview.github.com/?https://raw.github.com/nh2/psqueue-benchmarks/master/report.html No, it does not stack overflow, and it seems to perform slightly better than the other implementations; it also doesn't suffer from

Re: [Haskell] ANN: psqueue-benchmarks - benchmarks of priority queue implementations

2013-03-29 Thread Niklas Hambüchen
Hey Louis, I think that queuelike is still a nice psqueue implementation (and I personally don't dislike the api), so may I ask two more questions: * Do you have any clue why toList is 10 times slower than in the other implementation? It is based on extract, and queuelike's extract is very fast

Re: [Haskell-cafe] ANN: psqueue-benchmarks - benchmarks of priority queue implementations

2013-03-29 Thread Niklas Hambüchen
Hey Scott, I quickly tried your suggestion, plugging in foldr' from Data.Foldable and sprinkling a few seqs in some places, but it doesn't help the stack overflow. On Fri 29 Mar 2013 16:23:55 GMT, Scott Dillard wrote: I do not know why it overflows. It's been a while, but isn't the answer

Re: [Haskell-cafe] ANN: psqueue-benchmarks - benchmarks of priority queue implementations

2013-03-29 Thread Niklas Hambüchen
Hey Kazu, I added GHC's PSQ to the benchmark, the new figures are on http://htmlpreview.github.com/?https://raw.github.com/nh2/psqueue-benchmarks/master/report.html No, it does not stack overflow, and it seems to perform slightly better than the other implementations; it also doesn't suffer from

Re: [Haskell-cafe] ANN: psqueue-benchmarks - benchmarks of priority queue implementations

2013-03-29 Thread Niklas Hambüchen
Hey Louis, I think that queuelike is still a nice psqueue implementation (and I personally don't dislike the api), so may I ask two more questions: * Do you have any clue why toList is 10 times slower than in the other implementation? It is based on extract, and queuelike's extract is very fast

  1   2   >