Re: [Haskell-cafe] ANNOUNCE: DSTM 0.1.1
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 8/4/10 17:16 , Andrew Coppin wrote: I have a vague recollection of there being a situation to do with calling foreign code that makes all Haskell threads block in the non-threaded RTS, but not in the threaded one. Depending on how big your send and receive Well, yes. This should be obvious; code invoked via the FFI can't be cooperatively multitasked by the Haskell runtime (how would you accomplish this? Think about it), and preemptive multitasking is only possible via OS threads. - -- brandon s. allbery [linux,solaris,freebsd,perl] allb...@kf8nh.com system administrator [openafs,heimdal,too many hats] allb...@ece.cmu.edu electrical and computer engineering, carnegie mellon university KF8NH -BEGIN PGP SIGNATURE- Version: GnuPG v2.0.10 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkxaMJ0ACgkQIn7hlCsL25VqHwCgl3z84LQIpr6RfA2rGOmevU2x miYAnjnpwVR+yEQiynXfk3JGQZv32YfY =uEjB -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Re: Handling absent maintainers
On Thu, Aug 5, 2010 at 1:29 PM, Ivan Lazar Miljenovic ivan.miljeno...@gmail.com wrote: On 5 August 2010 13:23, Mark Wotton mwot...@gmail.com wrote: Might it be possible to enable multiple maintainers on packages, each of whom can upload new versions? As far as I can tell, that's not currently possible with Cabal. Huh? Cabal doesn't care who the maintainers are: it just has a text field where you list a maintainer[s]. See for example http://hackage.haskell.org/package/fgl-5.4.2.3 Currently, AFAIK Hackage allows anyone with an account to upload anything. Can you have two people uploading versions of the same package, though? Presumably it's not possible for me to upload a version of bytestring which makes monkeys fly out of your ethernet port when you try to concatenate strings. mark -- A UNIX signature isn't a return address, it's the ASCII equivalent of a black velvet clown painting. It's a rectangle of carets surrounding a quote from a literary giant of weeniedom like Heinlein or Dr. Who. -- Chris Maeda ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Re: Handling absent maintainers
On 5 August 2010 13:32, Mark Wotton mwot...@gmail.com wrote: On Thu, Aug 5, 2010 at 1:29 PM, Ivan Lazar Miljenovic ivan.miljeno...@gmail.com wrote: On 5 August 2010 13:23, Mark Wotton mwot...@gmail.com wrote: Might it be possible to enable multiple maintainers on packages, each of whom can upload new versions? As far as I can tell, that's not currently possible with Cabal. Huh? Cabal doesn't care who the maintainers are: it just has a text field where you list a maintainer[s]. See for example http://hackage.haskell.org/package/fgl-5.4.2.3 Currently, AFAIK Hackage allows anyone with an account to upload anything. Can you have two people uploading versions of the same package, though? Presumably it's not possible for me to upload a version of bytestring which makes monkeys fly out of your ethernet port when you try to concatenate strings. Well, I'd like to see the code required to spontaneously create monkeys at an ethernet port, but from what I've read Hackage has no constraints in place in terms of who uploads what and when. You just can't upload something with a version that's already on Hackage. -- Ivan Lazar Miljenovic ivan.miljeno...@gmail.com IvanMiljenovic.wordpress.com ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Re: Handling absent maintainers
Ivan Lazar Miljenovic wrote: On 5 August 2010 13:32, Mark Wotton mwot...@gmail.com wrote: On Thu, Aug 5, 2010 at 1:29 PM, Ivan Lazar Miljenovic ivan.miljeno...@gmail.com wrote: On 5 August 2010 13:23, Mark Wotton mwot...@gmail.com wrote: Might it be possible to enable multiple maintainers on packages, each of whom can upload new versions? As far as I can tell, that's not currently possible with Cabal. Huh? Cabal doesn't care who the maintainers are: it just has a text field where you list a maintainer[s]. See for example http://hackage.haskell.org/package/fgl-5.4.2.3 Currently, AFAIK Hackage allows anyone with an account to upload anything. Can you have two people uploading versions of the same package, though? Presumably it's not possible for me to upload a version of bytestring which makes monkeys fly out of your ethernet port when you try to concatenate strings. Well, I'd like to see the code required to spontaneously create monkeys at an ethernet port, but from what I've read Hackage has no constraints in place in terms of who uploads what and when. You just can't upload something with a version that's already on Hackage. The permissiveness of hackage uploads suggests that Hackage needs to start using something like GPG signing and GPG webs of trust. The Debian project has stuff like this in place and I'm sure this community could learn a lot from what Debian is currently using. Erik -- -- Erik de Castro Lopo http://www.mega-nerd.com/ ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] ANNOUNCE: DSTM 0.1.1
The documentation is a little confusing on this issue. It sounded to me when I read the documentation that all of the *OS* threads were blocked by the FFI, when what was meant was that all of the *IO* threads assigned to the calling OS thread are what is blocked, because the docs just say that threads are blocked without being clear that they are only referring to a particular subset of the threads. Cheers, Greg On 8/4/10 8:31 PM, Brandon S Allbery KF8NH wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 8/4/10 17:16 , Andrew Coppin wrote: I have a vague recollection of there being a situation to do with calling foreign code that makes all Haskell threads block in the non-threaded RTS, but not in the threaded one. Depending on how big your send and receive Well, yes. This should be obvious; code invoked via the FFI can't be cooperatively multitasked by the Haskell runtime (how would you accomplish this? Think about it), and preemptive multitasking is only possible via OS threads. - -- brandon s. allbery [linux,solaris,freebsd,perl] allb...@kf8nh.com system administrator [openafs,heimdal,too many hats] allb...@ece.cmu.edu electrical and computer engineering, carnegie mellon university KF8NH -BEGIN PGP SIGNATURE- Version: GnuPG v2.0.10 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkxaMJ0ACgkQIn7hlCsL25VqHwCgl3z84LQIpr6RfA2rGOmevU2x miYAnjnpwVR+yEQiynXfk3JGQZv32YfY =uEjB -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Playing with ATs again
On Tue, Aug 3, 2010 at 9:45 PM, Ryan Ingram ryani.s...@gmail.com wrote: So I believe the final way to do this, which is not yet implemented, works something like this: type family LeftToRight a type family RightToLeft b class (LeftToRight a ~ b, RightToLeft b ~ a) = Bijection a b where ... I agree, the fact that this doesn't work is really dumb. I think it is more simple like: class Bijection a b where ... type LeftToRight a = (Bijection a b) = b type RightToLeft b = (Bijection a b) = a -- Victor Nazarov ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Playing with ATs again
On 4 August 2010 03:45, Ryan Ingram ryani.s...@gmail.com wrote: So I believe the final way to do this, which is not yet implemented, works something like this: type family LeftToRight a type family RightToLeft b class (LeftToRight a ~ b, RightToLeft b ~ a) = Bijection a b where ... I agree, the fact that this doesn't work is really dumb. The reason Manuel Chakravarty gave me (if I recall correctly) that this doesn't work is as follows: Type classes are stored in dictionaries. To be able to have superclass constraints like this requires that type information also be stored in those dictionaries, which currently isn't done. They could have added this functionality in, but SPJ was going to be working on a new type-checker anyway (which I believe is now done) so this was postponed until after the new type-checker was finished. As we should hopefully be seeing 6.14 out in a few months time, there isn't time to be able to get superclass constraints in for it, so we probably won't have them until 6.16 next year. So, I wouldn't say that it's dumb. Unfortunate, a pity, etc., but not dumb. Don't forget, GHC is open source: if this lack really was dumb and annoying you, there was nothing stopping you from rectifying this situation up until now. -- Ivan Lazar Miljenovic ivan.miljeno...@gmail.com IvanMiljenovic.wordpress.com ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell-cafe] Problem with System.Timeout in Windows
Hi All: I have been trying to use System.timeout in windows, but for some reason it doesn't work, a concrete example is: import Network.HTTP import System.Timeout main = do rsp - timeout 1000 $ simpleHTTP $ getRequest http://10.1.2.3; case rsp of Just rsp - print $ show rsp Nothing - error Nothing In this case I would expect to receive Nothing after 10 seconds, but it ignores the timeout function. I'm compiling with -threaded, but it does not work either, I'm using ghc 6.12.2. Does someone know what could be going wrong ? Thanks ! ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe