Re: Building the GHC library without building GHC
Er, the GHC library *is* GHC. The answer is very probably no. -- brandon s allbery kf8nh Sent with Sparrow (http://www.sparrowmailapp.com/?sig) On Friday, February 15, 2013 at 9:52 AM, C Rodrigues wrote: Hi, I was going to do some hacking on Haddock. Haddock depends on the GHC API from the development version of GHC, however, stage2 crashes on my system when I try to build the newest GHC from the repository. Since I don't actually need to compile with the new GHC, I'm hoping there's a workaround. Is there a way to build only the GHC library so that I can get back to Haddock? ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org (mailto:Glasgow-haskell-users@haskell.org) http://www.haskell.org/mailman/listinfo/glasgow-haskell-users ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: [Haskell-cafe] (+) on two lists ?
Note also that typeclasses are open, so ghc is not allowed to say that there is no instance of Num for lists there; it will happily infer a type which requires such an instance, and only when it needs to firm down to concrete types at some point will it notice that there's no such instance in scope. (I think some such instances do exist, in fact, in various programs.) Just to make things more interesting, numeric literals are not sufficient to make it think otherwise because of the implicit fromIntegral / fromRational, which a Num instance for lists would need to supply at the appropriate type. FlexibleContexts is because the Haskell standard is extremely pedantic about the form that typeclass instances and contexts may take; I think if you had written it as (Num ([] a)) it would have passed without an extension. On the one hand, it's something of an irritation; on the other, it *does* help to catch thinkos like the above. -- brandon s allbery kf8nh Sent with Sparrow (http://www.sparrowmailapp.com/?sig) On Friday, February 15, 2013 at 2:33 AM, sheng chen wrote: Hi, I was puzzled by the following little program. sum' [] = [] sum' (x:xs) = x + sum' xs I thought the GHC type checker will report a type error. However, the type checker accepts this program and gives the type Num [a] = [[a]] - [a] When I add type annotation to the program sum' :: Num [a] = [[a]] - [a] sum' [] = [] sum' (x:xs) = x + sum' xs The GHC asks me to add FlexibleContexts language extension. I would appreciate explanation on this issue. Thanks, Sheng ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org (mailto: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: base package (Was: GHC 7.8 release?)
On Thursday, February 14, 2013 at 8:14 PM, Johan Tibell wrote: On Thu, Feb 14, 2013 at 2:53 PM, Joachim Breitner m...@joachim-breitner.de (mailto:m...@joachim-breitner.de) wrote: I don't think having FFI far down the stack is a problem. There are lots of pure data types we'd like in the pure data layer (e.g. bytestring) that uses FFI. As long as the I/O layer itself (System.IO, the I/O manager, etc) doesn't get pulled in there's no real problem in depending on the FFI. Doesn't the FFI pull in some part of the I/O layer, though? In particular threaded programs are going to end up using forkOS? -- brandon s allbery kf8nh Sent with Sparrow (http://www.sparrowmailapp.com/?sig) ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: [Haskell-cafe] performance question
It's worth remembering that the main gain from lex/yacc had originally to do with making the generated programs fit into 64K address space on a PDP11 more than with any direct performance efficiency. -- brandon s allbery kf8nh Sent with Sparrow (http://www.sparrowmailapp.com/?sig) On Thursday, February 14, 2013 at 6:27 PM, David Thomas wrote: (I'll be brief because my head is hurting, but please don't interpret that as an intent to offend) A few points: 1) Capture groups are all you need to do some meaningful interpretation of data; these were around long before perl. 2) Yacc is typically used in conjunction with lex, partly for (a) efficiency and partly for (b) ease of use (compared to writing out [a-z] as production rules). 3) I've actually used lex without yacc (well, flex without bison) when faced with dealing with a language that's regular (and easy enough to express that way - cf. an enormous finite subset of a context-free language). 2b is mostly irrelevant in Haskell, as Parsec already provides functions that can easily match the same things a regexp would. 2a, if it stands up to testing, is the best argument for ripping things apart in Haskell using a DFA. Parsec and cousins are efficient, but it's hard to beat a single table lookup per character. The questions are 1) is the difference enough to matter in many cases, and 2) is there a way to get this out of parsec without touching regexps? (It's not impossible that parsec already recognizes when a language is regular, although I'd be weakly surprised). On Thu, Feb 14, 2013 at 3:07 PM, wren ng thornton w...@freegeek.org (mailto:w...@freegeek.org) wrote: On 2/13/13 11:18 PM, wren ng thornton wrote: On 2/13/13 11:32 AM, Nicolas Bock wrote: Since I have very little experience with Haskell and am not used to Haskell-think yet, I don't quite understand your statement that regexes are seen as foreign to Haskell-think. Could you elaborate? What would a more native solution look like? From what I have learned so far, it seems to me that Haskell is a lot about clear, concise, and well structured code. I find regexes extremely compact and powerful, allowing for very concise code, which should fit the bill perfectly, or shouldn't it? Regexes are powerful and concise for recognizing regular languages. They are not, however, very good for *parsing* regular languages; nor can they handle non-regular languages (unless you're relying on the badness of pcre). In other languages people press regexes into service for parsing because the alternative is using an external DSL like lex/yacc, javaCC, etc. Whereas, in Haskell, we have powerful and concise tools for parsing context-free languages and beyond (e.g., parsec, attoparsec). Just to be clear, the problem isn't that proper regexes are only good for regular languages (many files have regular syntax afterall). The problem is that regexes are only good for recognition. They're an excellent tool for deciding whether a given string is good or bad; but they're completely unsuitable for the task of parsing/interpreting a string into some structure or semantic response. If you've ever used tools like yacc or javaCC, one of the crucial things they offer is the ability to add these semantic responses. Parser combinator libraries in Haskell are similar, since the string processing is integrated into a programming language so we can say things like: myParser = do x - blah guard (p x) y - blargh return (f x y) where p and f can be an arbitrary Haskell functions. Perl extends on regular expressions to try and do things like this, but it's extremely baroque, hard to get right, and impossible to maintain. (N.B., I was raised on Perl and still love it.) And at some point we have to call into question the idea of regexes as an embedded DSL when we then turn around and try to have Perl be a DSL embedded into the regex language. One of the big things that makes regexes so nice is that they identify crucial combinators like choice and repetition. However, once those combinators have been identified, we can just offer them directly as functions in the host language. No need for a special DSL or special syntax. The big trick is doing this efficiently. Parser combinators were an academic curiosity for a long time until Parsec came around and made them efficient. And we've come a long way since then: with things like attoparsec, PEG parsing, and non-monadic applicative parsers (which can perform more optimizations because they can identify the structure of the grammar). The theory of regular expressions is indeed beautiful and elegant. However, it's a theory of recognition, not a theory of parsing; and that's a crucial distinction. Haskell is about clear
Re: [Haskell-cafe] 64-bit vs 32-bit haskell platform on Mac: misleading notice on Platform website?
On Monday, 8 October 2012 at 06:28, Christiaan Baaij wrote: ghci: segfault ghci from gdb: everything works This makes me suspect something that gets disabled when debugging, such as address space randomization and the like. I did not think ML handled that any differently from Lion, though. -- brandon s allbery kf8nh sine nomine associates allber...@gmail.com ballb...@sinenomine.net unix/linux, openafs, kerberos, infrastructure http://sinenomine.net Sent with Sparrow (http://www.sparrowmailapp.com/?sig) ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: backslashes within quotes
On Friday, 5 October 2012 at 15:34, Evan Laforge wrote: On Fri, Oct 5, 2012 at 9:50 AM, Henrik Nilsson henrik.nils...@nottingham.ac.uk (mailto:henrik.nils...@nottingham.ac.uk) wrote: The same is true for \a, \b, \f, \v, \EM, \DC1, etc. We do need \, though. What is \ used for? I never knew it existed until I reread that bit of the report, and couldn't figure out what it was for. There's a conflict between \SOA and \SO followed by A, which is resolved by making the latter \SO\A. -- brandon s allbery kf8nh sine nomine associates allber...@gmail.com ballb...@sinenomine.net unix/linux, openafs, kerberos, infrastructure http://sinenomine.net Sent with Sparrow (http://www.sparrowmailapp.com/?sig) ___ Haskell-prime mailing list Haskell-prime@haskell.org http://www.haskell.org/mailman/listinfo/haskell-prime
Re: [Haskell-cafe] Those damned parentheses
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 5/7/11 15:10 , Eitan Goldshtrom wrote: I get the error Couldn't match expected type `[Char]' with actual type `a0 - c0'. The only way it seems to work is f p = putStrLn $ (show (Main.id p)) ++ - message received Interestingly enough, you have the correct answer in there as well: $ f p = putStrLn $ (show $ Main.id p) ++ = message received You may also want to look into Control.Applicative. - -- brandon s. allbery [linux,solaris,freebsd,perl]allber...@gmail.com system administrator [openafs,heimdal,too many hats]kf8nh -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk3FmykACgkQIn7hlCsL25X9cQCeM2leHUslCJWW1GIFKtt5Dw9P gFoAn1DbWu9QO89062Dx6hMIPRNq6siU =P2Zz -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] ANN: Leksah 0.10.0
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 4/26/11 09:15 , Daniel Fischer wrote: On Tuesday 26 April 2011 02:00:32, jutaro wrote: Well, it is a bit more intricate to invert the sides. After * swapping LeftP and RightP in Edit Prefs - Initial Pane positions * Close all panes and pane groups. (You may leave an editor window open, so that you better see what happens in the next steps). * Collapse all (Hit Ctrl-1 - 2 times) * Split vertical (Hit Ctrl-2), put the focus to the left, split horizontal (Hit Ctrl-3) * Go to Panes Menu and reopen the Log and the Browser and an editor Window * Configure tabs as you like * Save the session or restart Leksah Intricate indeed. If some day you have too much time, consider adding configuration options for that. Until then, how about putting that in the docs? How about a layout editor mode where you can drag panes around, double-click somewhere to split at that point (hold shift for horizontal split, maybe?), and a window palette to drag windows into panes? - -- brandon s. allbery [linux,solaris,freebsd,perl]allber...@gmail.com system administrator [openafs,heimdal,too many hats]kf8nh -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk23VXoACgkQIn7hlCsL25X/0gCgpKLaNqOeHbgO8D4ZQ38y1EQV ZisAnik6XZHVPGs3k50xGZ+MEJCaAfZC =P0vf -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell] ANN: Yi 0.6.3
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 3/28/11 21:15 , Ivan Lazar Miljenovic wrote: On 29 March 2011 12:10, Brandon S Allbery KF8NH allber...@gmail.com wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 3/28/11 17:06 , Ivan Lazar Miljenovic wrote: On 29 March 2011 06:40, Jeff Wheeler wheel...@illinois.edu wrote: Oh, my bad. I removed this because alex is included in the Platform, so it seemed like it'd always be available. I'll add it back. Not *everyone* has the Platform installed! (I prefer to install ghc and then just the libraries I need via my package manager). So you're saying that the Platform is pointless? I think there's some miscommunication going on somewhere, if we're all going to pretend it doesn't exist. No, my meaning was that the reasoning of I don't need to specify this as a dependency since it's part of the Platform isn't sound since not everyone has the Platform. The point of the Platform is to provide a baseline. So you *are* saying it is pointless, because you want packages to confirm to a different baseline. - -- brandon s. allbery [linux,solaris,freebsd,perl]allber...@gmail.com system administrator [openafs,heimdal,too many hats]kf8nh -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk2RM5MACgkQIn7hlCsL25UgggCg01PqGZflU7EQdEa03TR9sMEE CrwAoICxWlsJmPhhq3MEbSdkzyR1x+CL =km8w -END PGP SIGNATURE- ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
Re: [Haskell] ANN: Yi 0.6.3
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 3/28/11 21:29 , Ivan Lazar Miljenovic wrote: On 29 March 2011 12:19, Brandon S Allbery KF8NH allber...@gmail.com wrote: No, my meaning was that the reasoning of I don't need to specify this as a dependency since it's part of the Platform isn't sound since not everyone has the Platform. The point of the Platform is to provide a baseline. So you *are* saying it is pointless, because you want packages to confirm to a different baseline. My impression that the Platform was a baseline in regards to what do I need to get started to develop with Haskell?, and not in terms of specifying dependencies. After all, we still need to specify a dependency on `base' in .cabal files, even though it comes with GHC and other compilers (let alone the Platform)? And it regularly causes annoying dependency issues, including causing cabal to regularly do diamond dependencies. Somehow the Haskell community is hellbent on repeating the mistakes every other community learned about the hard way years ago, especially in the area of dependencies (first refusing to acknowledge the need for upper dependency limits, more recently trying to avoid adding an epoch — and I'm not counting how packages included with the compiler but not recognized as such by Cabal lead directly to Cabal introducing diamond dependency failures). Is this *really* necessary, or should those of us who've seen it before just sit back and watch you all ram your heads against the same brick walls? (Why no, it doesn't look like a brick wall now; that's the point. It *will*. Learn *before* it happens.) - -- brandon s. allbery [linux,solaris,freebsd,perl]allber...@gmail.com system administrator [openafs,heimdal,too many hats]kf8nh -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk2RODUACgkQIn7hlCsL25VOXwCguwsUCVTZoDyh8FxD9buJkiO5 AzIAoLC61yrpRTi9bmId13hupf1dc9Tl =vL+w -END PGP SIGNATURE- ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
Re: [Haskell-cafe] DSL for task dependencies
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 3/18/11 00:43 , Conal Elliott wrote: Speaking of which, for a while now I've been interested in designs of make-like systems that have precise simple (denotational) semantics with pleasant properties. What Peter Landin called denotative (as opposed to functional-looking but semantically ill-defined or intractable). Norman Ramsey (cc'd) pointed me to the Vesta http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.19.8468 system from DEC SRC. If anyone knows of other related experiments, I'd appreciate hearing. Back in the late 1980s there were several attempts at this kind of thing; the ones that stick in my mind are Shape[1] and Cake[2]. Their declarative/denotative abilities were primitive at best, but they helped shape further development and I find these papers often cited in later research. [1] http://citeseer.ist.psu.edu/viewdoc/download;jsessionid=30B4EC21BAD13166AFBEBB20246221B8?doi=10.1.1.55.6969rep=rep1type=pdf (http://tinyurl.com/4l79vg4) [2] http://www.cs.mu.oz.au/~zs/papers/cake.ps.gz - -- brandon s. allbery [linux,solaris,freebsd,perl]allber...@gmail.com system administrator [openafs,heimdal,too many hats]kf8nh -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk2Khm0ACgkQIn7hlCsL25X+lgCeP4U8lUcVOvLKQQVcmbAhLT11 dvMAoIabif8gGlsLKnvg0e3ZKqgVpPVn =ApVq -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] X11 package bug: XClientMessageEvent long data
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 3/16/11 00:10 , Dylan Alex Simon wrote: Does anyone know the current maintenance status of the X11 package? I emailed Spencer Janssen a number of months ago and never heard back. So, I'll put this here in case any one else runs into it or can get it to the right place. This is a proposed bug fix for a problem I ran into using xmonad client messages to send remote commands on 64LP architectures (i.e., amd64), wherein the C X11 library and Haskell's disagree about the size of client message arguments. Tue Nov 16 23:41:49 EST 2010 Dylan Simon dy...@dylex.net * change XClientMessageEvent long data The XClientMessageEvent.data.l field is actually a long, not an int, so it must be interpreted as such, even though format is set to 32 in this case. Ostensibly this is an Xlib bug, but it is unlikely to be fixed there. I believe it's documented behavior (in XLib). In any case, that's only one of several problems with client messages (and properties). It's on the list... somewhere. - -- brandon s. allbery [linux,solaris,freebsd,perl]allber...@gmail.com system administrator [openafs,heimdal,too many hats]kf8nh -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk2CiEoACgkQIn7hlCsL25XezACdH8w+tE7FveanJvA8s/1RQQQD SVEAnA88zbzt+1dRzMR7Maq7H4kLEVBg =Hb3q -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] writing to a fifo when the reader stops reading
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 3/13/11 03:16 , bri...@aracnet.com wrote: ghc: fdWriteBuf: resource vanished (Broken pipe) which make sense, sort of. I write a value, let's say 10, and the reader reads it. It's the last value so it closes the fifo. Now there's nothing reading, so when I get to threadWaitWrite, I would expect the program to wait, just as it does when it starts up and there is no reader. FIFOs don't work that way; like a regular pipe, once all readers go away it doesn't work any more. You need to open it read-write initially to keep a reader around. Haskell has no control over this: it's how they're defined to work. In general, trying to use a FIFO like an AF_UNIX socket is a mistake. - -- brandon s. allbery [linux,solaris,freebsd,perl]allber...@gmail.com system administrator [openafs,heimdal,too many hats]kf8nh -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk19tqkACgkQIn7hlCsL25VxGwCgsInAy4YJhOA2Ca/tQTRd0Cjs NmAAn2hjqtQm0/eZXVoLM8GMCMv+yxR4 =SDd8 -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] groupBy huh?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 3/3/11 20:09 , Jacek Generowicz wrote: 1 2 ok, same group 1 3 dito 1 2 dito Thus you get [[1,2,3,2]] OK, that works, but it seems like a strange choice ... Stability is often valued in functions like this: the order of elements is not altered. - -- brandon s. allbery [linux,solaris,freebsd,perl]allber...@gmail.com system administrator [openafs,heimdal,too many hats]kf8nh -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1wPPIACgkQIn7hlCsL25WF3ACfZrwM2OxutJZgadhaSCcpjoEv Bg4AnA+V/H3tfCovwwnw8qrlaw5I92C4 =WJev -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] upgrading mtl1 to mtl2
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 2/16/11 00:51 , Evan Laforge wrote: On Tue, Feb 15, 2011 at 7:58 PM, Ivan Lazar Miljenovic ivan.miljeno...@gmail.com wrote: On 16 February 2011 14:46, Evan Laforge qdun...@gmail.com wrote: I just got started on this because packages are starting to use mtl2. I had hoped it would be simple, and hopefully it is, but... Do I really have to add (Functor m) to the 300 or so functions with (Monad m) on them? Or just not use fmap or applicative? Use liftM instead of fmap if all of your functions are polymorphic in the type of Monad and you don't want to bother putting in the Functor constraint. There are hundreds of 'fmap's in there too. And even more $s and a scattering of *s. And... these functions are convenient! I like using them. If upgrading to mtl2 means porting away from Functor and Applicative... then that's even less of a minor incompatibility! At least the class context mangling can be mostly done with search and replace. Says that the only benefit of 'transformers' is that it's haskell 98 and thus more portable, but doesn't that come with the caveat that only if you don't use classes and do all the lifting manually? Yes, but some people don't want the extensions. Ok, so does that mean the migration to transformers so mtl could be deleted is cancelled? Or was rendered obsolete by mtl-2? Or maybe I was imagining it? I think minimal extensions is a worthy goal, but you can hardly position Y as the next step for X when all it is is X minus features that people still like... Yes; as I understand it, mtl2 is transformers + monad-fd, and the standard upgrade path is to go to mtl2. monads-tf is expected to eventually replace monads-fd, but it's not a near future change (for one thing, type families are still being figured out; see the recent thread about injective type functions as an example). It was decided that the mtl2 route would be easier than forcing people to replace mtl with transofrmers + monads-fd. - -- brandon s. allbery [linux,solaris,freebsd,perl]allber...@gmail.com system administrator [openafs,heimdal,too many hats]kf8nh -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1dtWMACgkQIn7hlCsL25WPFwCaA8MbZYbZr/gQ9pa/ttj/E5a0 pTgAoIZ9LMNuq4o7arXmTUZa5qTUFjx4 =NLta -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] On hGetContents semi-closenesscloseness
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 (I'm probably glossing over important stuff and getting some details wrong, as usual, but I hope it's good enough to give some idea of what's going on.) On 2/15/11 11:57 , Rafael Cunha de Almeida wrote: What state is that? It seems to be something related to Haskell. I couldn't find a definition for it in the unix documentation I have laying around. Yes, it's specific to Haskell's runtime; if you have a handle being read lazily in the background (see unsafeInterleaveIO), trying to use it in the foreground is problematic. Specifically, which call(s) should get the data? entirely consumed that the descriptor gets closed. Is hGetContents responsible for closing the descriptor? Or is it the garbage collector? Who closes the descriptor when the contents are read? Looking at hGetContents function The garbage collector closes the handle, as I understand it. openFile foo ReadMode = \handle - (hGetContents handle = (\s - hClose handle putStr s)) [2] This is a classic example of the dangers of hGetContents (and, more generally, of unsafeInterleaveIO). In general, you should use lazy I/O only for quick and dirty stuff and avoid it for serious programming. You can get many of the benefits of lazy I/O without the nondeterminacy by using iteratee-based I/O (http://hackage.haskell.org/package/iteratee). The usual way to deal with this is to force the read in some way, usually by forcing evaluation of the length of the data (let s' = length s in evaluate $ s' `seq` s' -- or something like that). The question most people doesn't have a good answer is: when does Haskell thinks it is necessary to do something? Haskell is actually what manufacturing folks call just in time; things are evaluated when they are needed. Usually this means that when you output something, anything needed to compute that output will be done then. The exceptions are things like Control.Exception.evaluate (which you can treat as doing output but without *actually* outputting anything), mentioned above, plus you can indicate that some computation must be evaluated before another by means of Prelude.seq. You can also declare a type as being strict by prefixing an exclamation mark (so the runtime will always evaluate a computation before binding it), and with the BangPatterns extension you can also declare a pattern match binding as strict the same way. Be aware that in most cases, evaluating a computation takes it to weak head normal form, which means that (as one would expect from a lazy language) only the minimum amount of evaluation is done. If nothing else forces evaluation, this means that the computation is evaluated to the point of its top level constructor and no further. You can think of it this way: all expressions in Haskell are represented by thunks (little chunks of code), and evaluation replaces the outermost thunk in an expression with the result of running it. So if we have an expression @(@[@a,@b],@(Foo @(Bar @d))) (where a @ precedes a sub-expression which is unevaluated/a thunk), WHNF removes the outermost (leftmost, here) @ by evaluating the tuple constructor while leaving the elements of the tuple unevaluated. If you need to force evaluation in other ways, take a look at Control.DeepSeq (http://hackage.haskell.org/package/deepseq). The upshot of the above is that you can determine the order of evaluation by working backwards from output computations. It may be a partial ordering, because when there are multiple independent computations required by another computation, the order in which they are evaluated is undefined. In practice, this is usually unimportant because in pure code there is by definition no difference between evaluation order in those cases (this is technically called referential integrity); but when unsafeInterleaveIO is used (as with hGetContents), it allows pure code to behave indeterminately (it violates referential integrity). This is why it is unsafe (and why hGetContents is thereby unsafe), and why mechanisms like Control.Exception.evaluate and seq are provided. - -- brandon s. allbery [linux,solaris,freebsd,perl]allber...@gmail.com system administrator [openafs,heimdal,too many hats]kf8nh -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1azs4ACgkQIn7hlCsL25XlBwCg0dxc4pElXfFGNRh7m1Vezva4 dgQAnjIxlJhwTn2JBto005KfRSpc2Svr =sQo7 -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Proving correctness
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 2/11/11 06:06 , C K Kashyap wrote: I've come across this a few times - In Haskell, once can prove the correctness of the code - Is this true? Only up to a point. While most of the responses so far focus on the question from one direction, the other is epitomized by a Knuth quote: Beware of bugs in the above code; I have only proved it correct, not tried it. - -- brandon s. allbery [linux,solaris,freebsd,perl]allber...@gmail.com system administrator [openafs,heimdal,too many hats]kf8nh -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1XRLkACgkQIn7hlCsL25XbNgCfSifYHygWPmG6UJUZZzeVXZWd +fYAn1Tv1IJlt6H8R4t6TxSKX1h3xwQG =AdfB -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Is Show special? Of course not but...
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 2/11/11 14:20 , Cristiano Paris wrote: God! It seems like I'm reading the small-character lines of a contract :) Wait until you encounter the equivalent of rules-lawyering in the type system :) - -- brandon s. allbery [linux,solaris,freebsd,perl]allber...@gmail.com system administrator [openafs,heimdal,too many hats]kf8nh -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1XTzAACgkQIn7hlCsL25U+RACgzzqpTAJLum60odY8dpOi6dGQ kyIAnRp5cM3QbrkzYu7OzTQgOzeXWdXw =P20S -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] coding style vs. foreign interfaces
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 2/7/11 12:36 , Donn Cave wrote: I don't know the OpenGL example, but I gather you're talking about an API that's different in a practical way, not just a thin layer with the names spelled differently. In that case, assuming that it really is more Haskell-functional-etc, vive la difference! No one would argue with this, I think. Usually the low level one is merely a thin layer, whereas the high level one is more than just Haskell conventions but a proper Haskell-style API, using e.g. monads instead of opaque state blobs. helpfully reveals the actual POSIX 1003.1 function names, but try for example to figure out what has become of the the fairly commonly used ICANON flag, without looking at the source. If you're hoping that in the course of time a significantly functionally designed API will come along for any of these things, note that names it might have used are already taken. +1. The stuff that's a thin wrapper, such as System.Posix.*, should keep names as close to the API it's mirroring as possible; if you want to rename them, do it in the context of an actual Haskell API. - -- brandon s. allbery [linux,solaris,freebsd,perl]allber...@gmail.com system administrator [openafs,heimdal,too many hats]kf8nh -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1QiYsACgkQIn7hlCsL25UZ4gCgrS2vGDNqk0QPyPB9+ZVCCYHi oBsAnA5XJyHSozeEny+xlnNcL+K5ZfAy =AfVP -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: Reform of the Monad, and Disruptive Change
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 2/4/11 14:30 , Daniel Peebles wrote: Perhaps GHC could be released with two sets of libraries. This would give people time to experiment without breaking existing code. It would also make implementing individual changes much easier. I fully support this. {-# LANGUAGE NewPrelude #-} or something similar would be wonderful. Or Haskell Platform/Haskell Future with some way other than standard level to select it... although I don't recall if this is easily doable. - -- brandon s. allbery [linux,solaris,freebsd,perl]allber...@gmail.com system administrator [openafs,heimdal,too many hats]kf8nh -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1MuzIACgkQIn7hlCsL25UoiQCeK0YqPIw69jcFaw0ZfVv1HLT/ riUAoJe5efmuWLLIHunvUvYPZJBszcTh =zdsY -END PGP SIGNATURE- ___ Haskell-prime mailing list Haskell-prime@haskell.org http://www.haskell.org/mailman/listinfo/haskell-prime
Re: [Haskell] a quick question
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 2/2/11 22:01 , Ramy Abdel-Azim wrote: No need to apologize. Not dumb of you. The mandatory else is unusual. I don't personally know of any other language that requires an else for every if. Haskell's if is an expression, best compared to the ?-: ternary operator in C and Perl or Python's if-else operator instead of to a control structure. - -- brandon s. allbery [linux,solaris,freebsd,perl]allber...@gmail.com system administrator [openafs,heimdal,too many hats]kf8nh -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1LRsQACgkQIn7hlCsL25XSPACfRTlbLfBO6bKmg9EH4RPGSdMx SvoAnjakFqCArV9GRczvi2b1HZ6BZTjO =9Vvo -END PGP SIGNATURE- ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
Re: [Haskell-cafe] Problems with iteratees
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 2/2/11 20:06 , wren ng thornton wrote: When I put this all together, the process is killed with: control message: Just (Err endOfInput) POSIX FIFOs and GHC's nonblocking file descriptors implementation don't play well together; you should launch the writer end first and let it block waiting for the reader, or you should switch to opening the FIFO r/w and add a control message for end-of-stream (the usual way to work with FIFOs). - -- brandon s. allbery [linux,solaris,freebsd,perl]allber...@gmail.com system administrator [openafs,heimdal,too many hats]kf8nh -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1LRWYACgkQIn7hlCsL25UhiwCePaEpZM0wlKRabmOT0SV7UKbP Bc8AnRs+QTl59Cn9JRWUfNE1MBGv0X1S =Fvqe -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Problems with iteratees
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 2/3/11 19:16 , Brandon S Allbery KF8NH wrote: POSIX FIFOs and GHC's nonblocking file descriptors implementation don't play well together; you should launch the writer end first and let it block More specifically, I think what's happening here is that a non-blocking open() of a FIFO returns with the fd not actually open yet, a situation which isn't expected, and a blocking open will block until the other side is opened. - -- brandon s. allbery [linux,solaris,freebsd,perl]allber...@gmail.com system administrator [openafs,heimdal,too many hats]kf8nh -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1LRf4ACgkQIn7hlCsL25V8dQCgjD+pLVt9LbyqRJ8VYeF8XuLt ieQAoJl/3ws1hh8OJtrjVTyPx9gDRGgW =EcXI -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Loading bitmap with xlib
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 2/2/11 04:03 , Francesco Mazzoli wrote: Conrad Parker conrad at metadecks.org writes: On 31 January 2011 21:40, Francesco Mazzoli f at mazzo.li wrote: Francesco Mazzoli f at mazzo.li writes: At the end I gave up and I wrote the function myself: http://hpaste.org/43464/readbitmapfile cool ... the listed maintainer for the Xlib bindings is libraries at haskell.org. Perhaps you could prepare a patch and send it there? (does anyone know if there is an actual maintainer?) I will send a patch, but I'm sure there must be a reason behind the fact that those functions were not included, even if I can't see it. Pretty much what the comment says. Graphics.X11 was never really a complete set of bindings, just what people needed at the time. The Extras stuff in there was driven by xmonad development, for example (and named so because originally it was a separate library before it got folded in, so the module names were difficult to change while maintaining compatibility). Dealing with structs in the FFI is painful enough that I can easily imagine someone saying we don't need those, let someone else figure it out --- which you have done. Patch away. - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1Jq9cACgkQIn7hlCsL25XaJgCfc+CCngSmZlL9JOeZ21vZwkBO BHkAn128z1dH2entJKEfH6pKJ2Y7qW4w =LOMj -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Inheritance and Wrappers
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/31/11 15:24 , Daniel Fischer wrote: want. You could then also enable OverlappingInstances, which would allow you to write other instances, but that extension is widely regarded as dangerous (have to confess, I forgot what the dangers were, one was that instance selection doesn't always do what you want/expect). Instance selection will still not look at the context, so multiple instances would complain about needing IncoherentInstances, and if you add *that* then it does something like taking the first matching instance it finds (again, ignoring the context completely). - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1HHNMACgkQIn7hlCsL25XFYgCgqLWUoZzYrZO54ydDY9kTa9RT 3VAAn0WgJzeWO5vvO4QP1pkEYL5tzxYB =+6Pz -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: Local definitions in the class instances
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/30/11 05:54 , John Meacham wrote: instance Num Wrapped where (+) = lift2 (+) (-) = lift2 (-) (*) = lift2 (*) abs = lift abs signum = lift signum fromInteger = Wrapped where lift2 f (Wrapped a) (Wrapped b) = Wrapped (f a b) lift f (Wrapped a) = Wrapped (f a) so 'where' indroduces the local instance scope. The double where strikes me as a bit odd. Also, not sure how the parser would deal with it, even given that using the second without the first is entirely pointless; Haskell structures all follow a similar pattern WRT where, and this confounds it in several ways. - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1F8qgACgkQIn7hlCsL25UDmQCg0iyxts0dSvbhqdDosK0WKF/w CxkAnR5uxzTSYTmK4nvypRcIOtpxTDCm =Z8+V -END PGP SIGNATURE- ___ Haskell-prime mailing list Haskell-prime@haskell.org http://www.haskell.org/mailman/listinfo/haskell-prime
Re: [Haskell-cafe] Automatically move cursor focus in split window in haskell-mode in emacs on load (C-c C-l) command?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/30/11 12:13 , JETkoten wrote: ;Default behaviour is to always jump to the GHCi window. ;Jump back automatically unless errors. (defadvice haskell-ghci-load-file (after name) (other-window 1)) (ad-activate 'haskell-ghci-load-file t) I tried various combinations of moving the various lines around and nothing works. Is the indentation significant in elisp? Aside from the comments, wich go to end of line but got broken in this case, no; all that matters is the parens. I suspect it may depend strongly on what version of emacs you're running though. - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1GDB8ACgkQIn7hlCsL25XwUwCfTYktCZ2WuayLprACS79LS8gG td4AnR5WygspwmARIUUeNRm9E++cHOMa =1r0X -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] A few days to go before the old server goes down
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/31/11 00:04 , Antoine Latter wrote: On Sun, Jan 30, 2011 at 5:38 PM, Aaron Gray aaronngray.li...@gmail.com wrote: On 27 January 2011 22:42, Henk-Jan van Tuyl hjgt...@chello.nl wrote: Only four days until the old Haskell.org server disappears; I found the following missing: For what it's worth, the Internet Wayback Machine (http://web.archive.org) seems to have much if not all of the old haskell.org, so it will continue to be available even after the real server vanishes. - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1GRmEACgkQIn7hlCsL25WMkACeMPs/UOD2FZdA5zxs+a5pd7Mu IccAmwYwX1BzfJxqPD8jWZypR3a7R6Ld =g9fD -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Haskell for children? Any experience?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/27/11 10:26 , Stephen Tetley wrote: John Peterson had some nice work using Haskore and Fran for elementary teaching on the old Haskell.org website. Google's cache says the old URL was here but its now vanished: www.haskell.org/edsl/campy/campy-2003-music.ppt web.archive.org is your friend. - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1E9WcACgkQIn7hlCsL25VcUACbBjYscWmlm5QaHGWooQyqb0o1 mUEAn0D5LXJK8Gt+B8/ShqQclbs8R2Gs =8EdW -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Haskell for children? Any experience?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/27/11 10:28 , aditya siram wrote: Haskell's immutability is good for mathematics but doing anything else takes a great deal of up-front patience and perseverance, two very rare qualities in that demographic if my own childhood is any indication. Isn't there already a body of evidence that people who've never been exposed to procedural languages find functional programming to be much more natural? (I vaguely recall trying to teach someone at a summer camp what = did in BASIC; they were using the equational meaning, and assignment wasn't clicking with them at all.) - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1E9hIACgkQIn7hlCsL25WStwCgnCXonPchAQtXjmC1YOz8fGql NL4AnRZQXY4oIXMZ3I0yK6jVTZt6DOOY =i8cJ -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Haskell for children? Any experience?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/30/11 00:24 , Brandon S Allbery KF8NH wrote: Isn't there already a body of evidence that people who've never been exposed to procedural languages find functional programming to be much more natural? Also worth pointing out is that kids get math flash cards early, at least here in the US; while they're obviously trivial, they're still both equational and algebraic. So they're very probably already used to that meaning, and systems of equations and ADTs are actually fairly easy jumps. - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1E92EACgkQIn7hlCsL25WsWwCcDyoxsulKYstH2bXdeUBu/RB0 3A4AoL59wMMxMsSt032bXQ0ceQ+TDJUB =amOK -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Code from Haskell School of Expression hanging.
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/29/11 21:27 , michael rice wrote: I'm using the OpenGL stuff (GLFW). Same set of problems? None of the lower level libraries support multithreading. If any of those libraries use FFI bindings that run in a bound thread, they'll fail in the threaded runtime. gtk2hs was modified to allow ghci to work, IIRC. - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1FDIkACgkQIn7hlCsL25V6twCgn5JcK8Y0yerY5EkiyJyULOeM 6sYAoLkj8JS/CfquHfHCzl3DbGPKAhgo =Ybo6 -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Problem about exception.
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/26/11 21:10 , Magicloud Magiclouds wrote: Hi, Consider such a case: I'm making a client program. There is a process, client and server exchange some information in a strict order. So I do (persudo code): exchange = do sendHello readMsg = expect hello processHelloReply sendWhatsyourname readMsg = expect name processNameReply And expect is something like: expect c f (cmd, msg) = if c == cmd then f msg else fail unexpected This is OK until this situation: The server may send some special command, for example DEBUG, DISCONNECT. This breaks the process above. So I think I could throw the unexpected command to outer function to handle. Something like: main = do connect catch exchange $ \e - do case e of UnexpectedCMD DEBUG - -- ignore process UnexpectedCMD DISCONNECT - -- disconnect process _ - -- something really wrong Well, with Control.Exception, I do not know how to make this done. It looks to me like the very example in the Control.Exception documentation will do this, with some renaming. -- many languages call this a control exception; think break/next -- etc. It's an exception used internally to modify control flow. data ControlException = CEDebug | CEDisconnect deriving (Show, Typeable) instance Exception ControlException So now you can trap your ControlException above, or anything else is presumably a true exception. - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1A3RgACgkQIn7hlCsL25XRMgCeNEImC8VWPiM0fHB5Bu2ooFc8 nz8An0TwHXXUxJl7bhndSVf2vxWbXpGf =HIqR -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Problem about exception.
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/26/11 22:00 , Magicloud Magiclouds wrote: This is one way. But so the outer function could not know what happened in really wrong situation. How so? (1) fromException lets you test it: if (fromException e :: Maybe ControlException) returns a (Just ce), then you have a ControlException. (2) see under (catches) for examples of how to catch specific exception types. If you don't catch anything but ControlException then the exception propagates upward unchanged, which is exactly what you want. - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1A4S8ACgkQIn7hlCsL25VKgwCdF0rEO7FI2EFA7kQf2dEC70Oc mdIAnRz69xJCGzdNoDzSFn/NFic+rL5t =2qNi -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Problem about exception.
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/26/11 22:13 , Magicloud Magiclouds wrote: Yes, the problem is that Exception cannot hold anything in it. Things like Either might work. I am thinking how to make it work with StateT That wasn't my point, but sure it can. Go take a look at the IO exception, and in particular (ioeGetErrorType). (http://www.haskell.org/ghc/docs/latest/html/libraries/base-4.3.0.0/System-IO-Error.html#t:IOError) - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1A5HEACgkQIn7hlCsL25WajQCgnFlH0/k6W9I5qBvJSvrqSN0q bXoAn1yFY5eh9lvxcpv4VTEpZSasOKoW =3JhM -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] source line annotations
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/19/11 17:43 , Evan Laforge wrote: My preprocessor works well, but occasionally I do have to go in and fix yet another odd corner that came up. Initially I thought I would only simplistically replace tokens and avoid using a full syntax parser, but to really do it correctly a full parser is needed. And of course this is specific to my style (qualified imports) and project. To do this in full generality really requires the compiler's help. Had you looked at the haskell-src-exts package? - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk06TJYACgkQIn7hlCsL25VmugCfVxD0o078PwJx7da1Axnqg2ep TzMAnR4oEkA7S1oOdYWtNiS3WBWgb88i =FbHc -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: backward compatibility
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/20/11 12:09 , Sittampalam, Ganesh wrote: Simon Marlow wrote: judgement as to whether we should spend effort on backwards compatibility or not. Perhaps we're getting it wrong - so feedback from users is always valuable. From the point of view of darcs, which is usually trying to support 2 or 3 GHC versions at a time, one cycle of deprecation makes life a lot simpler. We do look at warnings and try to fix them, but it's nicer not to have to do so in a real hurry. And of the Haskell Platform, etc. Think of it as the price of failing to avoid success. - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk04bpsACgkQIn7hlCsL25Wh2QCgydcO3kZGxRTePJvp+HvnZloI r/wAn0YIv8ZqN6ZS9WNMvaH86F3AHZgl =m18O -END PGP SIGNATURE- ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: backward compatibility
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/20/11 21:12 , Ian Lynagh wrote: On Thu, Jan 20, 2011 at 09:22:37PM +0100, Axel Simon wrote: I therefore think that keeping the number of extensions to a minimum should be a high priority. It seems that the ghc team is going overboard with the amount of extensions and their granularity that I do not believe that there will ever be another compiler since implementing all these extensions is a nightmare. The road of may extensions is leading down the road that the Haskell standards aimed to avoid: having a single implementation defining what a Haskell program can be. I'm not sure if you're saying there should be fewer new language features implemented, less fine-grained control over which are enabled, or something else? Many of the new features ought to be changes to the standard, not individual language features that might or might not be implemented by various compilers. Less fine-grained control could be taken as a subset of this; consider that Haskell2010 can be understood as Haskell98 + a number of language extensions (or de-extensions in the case of n+k). I think he has a good point: having too many individual language features significantly raises the bar for what other compilers need to at least consider supporting. Even if we don't necessarily change the official standard, perhaps there should be standard packages of extensions which compilers are encouraged to support even if they don't support fine-grained extension control. - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk05BEcACgkQIn7hlCsL25VBnwCfT9nCZ5eLs4oJ3jUFHf3Tl8o1 7DwAnicvaNk6XuT0H1pZbaotzjKGoP+/ =vqzt -END PGP SIGNATURE- ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: [Haskell-cafe] Browser Game Engine
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/17/11 12:16 , Jeremy Shaw wrote: The must be at least a million flash games, so clearly it can be used for that. If you create a flash game, nobody gets excited. But if you create an html5 based game, then people still get excited about that. So, I assume it must be hard :) I think not so much hard as new. The latest Exciting! New! Web! Tech! (*yawn*... sorry, my cynicism is showing) - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEUEARECAAYFAk04zbcACgkQIn7hlCsL25Wh2ACXYKfES4AUgiLjzy9wp5NHPOga mgCeJDnbzxX4QQzeW5jY0dlxoWszAhQ= =fhJw -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Guy Steele's Praise For Haskell @ Strange Loop Keynote
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/15/11 18:15 , Warren Henning wrote: MATLAB, LabVIEW, Fortran, Java, C, and non-OO C++/random subsets of C++ rule scientific programming. Unit testing is rare and sporadic. In dragging scientists halfway to something new, the exotic, powerful things in Haskell will have to be left behind, just as Java only has a tiny fraction of what Smalltalk has had since the '80s. That seems clear to me, anyway. Scipy seems to be doing a decent job of throwing that into question. - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk0zZqMACgkQIn7hlCsL25XpLACgt58blRk3Sbaxnpyoi9Hu98Ma ZoIAnRWUUlJKyFbiVXvIUmfoGdw/mMIY =ucvP -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Generalizing catMaybes
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/8/11 07:11 , Conor McBride wrote: On 8 Jan 2011, at 11:14, Henning Thielemann wrote: For me, the solutions of Dave Menendez make most sense: Generalize Maybe to Foldable and List to MonadPlus. What has it to do with monads? There's no bind in sight. Alternative is certainly a more general alternative, but then I would say that, wouldn't I? Even that seems a tad too much. That was my thought too, and no, I didn't actually test first, just tried to think out what he was doing. Bad idea when half asleep :/ - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk0oln8ACgkQIn7hlCsL25WL1gCfepiOrw2ptUKah1KNj1vychnZ 1dMAoL2CmnbV2T/ravh6fuc8oyzlncrt =Hx/b -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Freeglut
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/3/11 18:21 , Eric wrote: I would like to use freeglut instead of GLUT for my Haskell OpenGL program, but when I place the freeglut dll in the program's directory and try to run the program on Windows XP, I get the following error message: user error (unknown GLUT call glutSetOption, check for freeglut) That would mean that it's known that freeglut doesn't have some necessary functions, and it's telling you to use a real GLUT. - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk0ntVYACgkQIn7hlCsL25UiIgCgxwaNeCh1JMiqJsFxdEpnq6kK 3AEAoJYhqNjuQrAaKF39NrFuFy/OG0UP =7RQ8 -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Building lambdabot
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/6/11 02:27 , Joe Bruce wrote: Now I'm stuck on readline again [lambdabot build step 28 of 81]: /Users/joe/.cabal/lib/readline-1.0.1.0/ghc-6.12.3/HSreadline-1.0.1.0.o: unknown symbol `_rl_basic_quote_characters' This sounds like the cabal readline package (the Haskell bindings) used Apple's libreadline (which is really libedit, so doesn't have most readline functionality). I'd forcibly reinstall readline-1.0.1.0 and then try again. - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk0nvyYACgkQIn7hlCsL25X1kQCgpnQIC4GmI0fUBh5E+3Z9vXBx T8MAn35u+cna0Dni+amapHXFsukpb8wz =fnWv -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Ur vs Haskell
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/7/11 14:14 , Alexander Kjeldaas wrote: Ur looks very impressive, so the natural question I'm asking myself is: How does it stack up against haskell frameworks, and why can't Ur be implemented in Haskell? I'm thinking mainly of the safety guarantees, not necessarily the performance guarantees, GC-less execution, or even non-lazy evaluation. And I can't answer those.. any takers? Right on the intro page it talks about having simplified dependent typing. While some (not all) forms of dependent typing can be simulated in Haskell, simple is not the word to describe the techniques. - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk0nygQACgkQIn7hlCsL25UUcACfSbSvzrFF3hFtPIOeV6+SEkCF 0dUAn3V4ozEYg/U6rzOYysaJXM7xKzBQ =QUia -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Generalizing catMaybes
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/7/11 21:56 , Tony Morris wrote: I am wondering if it possible to generalise catMaybes: (Something f, SomethingElse t) = t (f a) - t a I have being doing some gymnastics with Traversable and Foldable and a couple of other things from category-extras to no avail. Perhaps someone else's brain is molded into an appropriate shape to reveal an answer! Looks to me like you want something like: mtraverse :: (Traversable t, Monoid m) = t m - m mtraverse xs = traverse mappend (mempty:xs) or possibly the same kind of thing using MonadPlus instead of Monoid. ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk0n20AACgkQIn7hlCsL25V0MACeIJjbHmIjnABHxpykeVdcZ62f fS0AoL2xet/PpuvyuioWNvbzCTqWz5Z/ =2HGT -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] How about Haskell Golf just like vimgolf.com
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 1/2/11 02:48 , C K Kashyap wrote: I found this site called http://vimgolf.com/ ... the idea there is that people come up with challenges and try to come up with the least number of keystrokes to get it done. Code golf in any language is generally a recipe for obfuscation. Interesting, certainly, but I don't think I'd recommend it as a service or feature. - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk0gs90ACgkQIn7hlCsL25XOAACfQhq2bb18442MYAROhnqZ3jJ6 b7kAoIaJ8LNsAdjlEHZDftAspWtUgJ43 =zjuv -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] tplot and splot - analyst's swiss army knifes for visualizing log files
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 still catching up on inbox... On 12/17/10 04:08 , Eugene Kirpichov wrote: Just in case, I'm also attaching a PDF of the current version to this email, but visiting the link is preferable, since I'll be updating the contents. So lessee, I need to get *yet another* account to be able to get updated versions of your document? I expect I won't be updating, then. (No, I'm not on Facebook, and won't be; they aren't going to fix their security and privacy issues because they're where their profit comes from. If I want to give away my vital information to the universe I'll just post my social security/US ID number somewhere, thanks.) - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk0f2C8ACgkQIn7hlCsL25WbZACgoRAafE2xKTx7z5JxuypZdwRP JXsAnAkjx67HqBFYdobhk0zl9P34Vb95 =bp7O -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Incorrectly inferring type [t]
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/29/10 22:05 , william murphy wrote: I've spent a lot of time trying to write a version of concat, which concatenates lists of any depth: So: concat'' [[[1,2],[3,4]],[[5]]] would return: [1,2,3,4,5] You can't do that, at least with a normal type signature. There might be some evil that can do it, but (as you found) if you try to do it naively you will get an error which amounts to this type can't represent both an item and a list of that item at the same time. - -- 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 v1.4.11 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk0b+Z0ACgkQIn7hlCsL25WFCQCeNkSf0+1pyJI+rpBWtk3uBsv5 qosAoIRQQyg78IPlHuQiiVleqmYUdQD+ =lOjO -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] $ do?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/15/10 02:36 , Roman Cheplyaka wrote: Regarding the rationale, I'm not so sure and I'd like to hear an explanation from someone competent. But I assume it has something to do with the fact that if you supply a 'do' argument, you cannot supply any more arguments (because 'do' extends to the right as far as possible). Not that I'm convinced that it is a valid reason to prohibit such construct. Hm? do {...} would work, as would using indentation per usual layout rules (the next argument would be indented no farther than the do). It'd certainly be more confusing to read, though. - -- 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/ iEYEARECAAYFAk0SsvUACgkQIn7hlCsL25XM6wCcDvu9G3fc9M5Vv6d2EKZ64X8t k7YAn0hvoyq0KpmAAEyAD4HIWX8HsMTY =11UF -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Behaviour of System.Directory.getModificationTime
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/17/10 06:22 , Arnaud Bailly wrote: Thanks for your answers. I am a little bit surprised, I thought timestamps were on the milliseconds scale. POSIX timestamps are seconds. - -- 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/ iEYEARECAAYFAk0Ss28ACgkQIn7hlCsL25XpygCgziZm1KyO+dP00ACtIrfsueJg 0dQAoI6hNz3oSmiIO2kAiXtRmowWwAg1 =wAHu -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] IO, sequence, lazyness, takeWhile
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/13/10 09:15 , Jacek Generowicz wrote: untilQuit' = (fmap (takeWhile (/= quit))) (sequence $ map (= report) (repeat getLine)) -- The latter version shows the report, but it doesn't stop at the -- appropriate place, so I'm guessing that I'm being bitten by my -- ignorance about the interaction of actions and lazyness. The reason this doesn't stop where you expect it to is that sequence is effectively strict (that is, it will keep going until the list is exhausted), but repeat creates an infinite list. You want the stop condition between the map-report and the repeat-getLine. - -- 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/ iEYEARECAAYFAk0OWJQACgkQIn7hlCsL25Wb2gCgw3GKF/rBdXL2LIsV5qUVSa1M ZfEAoL5Vzd9+F7+NDqOAP7s2pyxtmJ0S =bU/D -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Offer to mirror Hackage
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/9/10 16:04 , Richard O'Keefe wrote: I thought X is a mirror of Y meant X would be a read-only replica of Y, with some sort of protocol between X and Y to keep X up to date. As long as the material from Y replicated at X is *supposed* to be publicly available, I don't see a security problem here. Only Y accepts updates from outside, and it continues to do whatever authentication it would do without a mirror. The mirror X would *not* accept updates. The above assumes that the operator of the mirror is trustworthy. It wouldn't be difficult for a hostile party to set up a mirror, but then modify the packages to include malware payloads --- if the packages aren't signed. (Or even if they are signed if it's a sufficiently weak algorithm. MD5 is already unusable for the purpose.) Other possibilities include MITM attacks where the hostile party detects that someone is attempting to download a package and spoofs a reply that directs it to a different package. (Or more complex tricks; see http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.167.4096rep=rep1type=pdf for examples.) - -- 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/ iEYEARECAAYFAk0D1jcACgkQIn7hlCsL25V3dQCfZ4zdF9KXNNS7bA35CL33e00q FzUAnAvQiRhElO/86qgagtKzv/cwgQfJ =DxV9 -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] [Haskell] ANNOUNCE: genprog-0.1
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/8/10 12:57 , Andrew Coppin wrote: inherited a knackered L-gulonolactone oxidase enzyme. L-gluconolactone oxidase maybe? (pedants-R-us...) - -- 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/ iEYEARECAAYFAk0D6vEACgkQIn7hlCsL25WTVgCgk39LETHHkzZElEVLZKCzt1KQ YhcAoKaevErIsoPx69Vkn8B0TK271beB =LEGS -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] haskell-2010 binary IO
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/10/10 02:14 , Permjacov Evgeniy wrote: Does haskell 2010 include binary IO? If no, what was the reason? That's not really the language report's job. You're looking for the Haskell Platform. - -- 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/ iEYEARECAAYFAk0EF9gACgkQIn7hlCsL25WT5QCgpeYsVUJA2SGDbob1pixivJMF 39kAn1hxwZjQloLNheCLlcSz1p9db0RK =gwKV -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] dot-ghci files
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/9/10 02:01 , Tony Morris wrote: I teach haskell quite a lot. I recommend using .ghci files in projects. Today I received complaints about the fact that ghci will reject .ghci if it is group-writeable. I didn't offer an opinion on the matter. I am wondering if these complaints have legitimate grounds i.e. maybe you want to have group write on that file for some reason. Linux likes to do the group-write thing (this derives from an early Debian decision that uids were obsolete and everything should use the gid as the uid; basically, the wrong solution to file ACLs). Given their decision and its near ubiquity in the Linux world these days, I suspect ghc's going to be on the wrong end of the battle. - -- 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/ iEYEARECAAYFAk0EHvoACgkQIn7hlCsL25WM3ACeMMSJAcyBEM0KRkK71nhpCiOx pRMAn01M0F2AJlkm+IxIeMrnIral/vwS =DcFw -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] haskell2010 and state question.
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/9/10 20:40 , Magicloud Magiclouds wrote: First to notice that. So standard-wise, there is no way to do state thing? There seems to be a lot of confusion as to what the language standard covers. It is a bare minimum; practical libraries are not part of its purview, but only the minimum needed to make implementing practical libraries possible. This includes some baked-in assumptions: for example, the do construct requires that the Monad typeclass support a fail method, numeric literals require the Num typeclass to support a fromIntegral method, etc., and since you can't extend typeclasses after definition that means Num and Monad are overspecified compared to other types in the language standard. Take a look at the Haskell Platform for a practical compiler-and-libraries standard. - -- 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/ iEYEARECAAYFAk0EI/IACgkQIn7hlCsL25Xc1wCgi9saZgo9h4RScI+ZAyR843sG eHoAn2J7Yfn664oaL1zAEZxQDLCat04k =SDlV -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [darcs-users] How to develop on a (GHC) branch with darcs
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/8/10 03:45 , Simon Peyton-Jones wrote: | known problem with darcs with no obvious solution. For me, switching | GHC to git would certainly be a win. I have personal experience of git, because I co-author papers with git users. I am not very technologically savvy, but my failure rate with git is close to 100%. Ie I can do the equivalent of 'pull' or 'push' but I fail at everything else with an incomprehensible error message. Maybe I just need practice (or more diligence), but I really don't understand git's underlying model, despite trying, and reading several tutorials. If anyone has a favourite how to understand git doc, do point me at it. I'm tempted to point out that Linux named it git for a reason. :) Mercurial might be a better choice, especially for people familiar with darcs. - -- 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/ iEYEARECAAYFAkz/sgQACgkQIn7hlCsL25WV7gCdF48m1hMxoQUc/NpW08zfye3P 7+sAnRy8ef3nImblBPGcXQPCzFWbdP2h =/Xf1 -END PGP SIGNATURE- ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: [Haskell-cafe] GHC 7.0.1 developer challenges
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/8/10 02:17 , Anders Kaseorg wrote: On Sat, 2010-12-04 at 13:42 -0500, Brandon S Allbery KF8NH wrote: We went over this some time back; the GHC runtime is wrong here, it should only disable flags when running with geteuid() == 0. No. +RTS flags on the command line, at least, need to stay disabled in all cases, not just setuid binaries. There are many situations where you can arrange for untrusted command line arguments to be passed to normal non-setuid binaries running with different privileges, including some that you might not expect, such as CGI scripts. We can possibly be more permissive with the GHCRTS environment variable, as long as we check that we aren’t setuid or setgid or running with elevated capabilities, because it’s harder to cross a privilege boundary with arbitrary environment variables. But, as already demonstrated by the replies, this check is hard to get right. Then build your CGIs restricted. Restricting the runtime by default, *especially* when setting runtime options at compile time is so much of a pain, is just going to cause problems. I'm already thinking that I may have to skip ghc7. - -- 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/ iEYEARECAAYFAkz/pGwACgkQIn7hlCsL25VzGwCfaI7e+WQewAMXHtqTAFhrWzFd SsQAmwY47A2lPqxmbI+pky7HiXFqwiUy =hLrC -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: How to develop on a (GHC) branch with darcs
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/7/10 21:42 , David Peixotto wrote: P.S. Apparently Linus used to use Lennart's method of diff and patch for version control before switching to bitkeeper and then git: http://www.youtube.com/watch?v=4XpnKHJAok8 about 10:30 minutes in. I guess it's a sign of a true hacker :) Right up until it bit him in the butt and he released a trashed kernel source tree as a result. (When is about when most people finally figure out that VCSes aren't pointless busywork.) - -- 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/ iEYEARECAAYFAkz/AVgACgkQIn7hlCsL25WorwCggF2OuwKWnVufktcfvA3rUZTw kqcAnj5K9UxzhE8/Fx8npAqNOvG39r1d =W2g7 -END PGP SIGNATURE- ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: [Haskell-cafe] Offer to mirror Hackage
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/7/10 08:07 , Ketil Malde wrote: Dan Knapp dan...@gmail.com writes: I agree that signed packages are a good idea. We should move with all haste to implement them. But I'm not sure we want to hold up everything else while we wait for that. IMO, mirroring is orthogonal to that, too. Only if you consider security a minor or non-issue. I'm tempted to say anyone who believes that on the modern Internet is at best naïve. (Although admittedly security is one of my work foci.) - -- 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/ iEYEARECAAYFAkz+k3YACgkQIn7hlCsL25W7PACdHUuh5zaPZeBTprMvN+HcLslu VV0AoJVgmDbBZyZtcX57fGWkGeW2dT/3 =Gqlm -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Question: mime-mail and base64 encoding
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/7/10 01:21 , Nathan Howell wrote: The way I've seen it done before was to: - calculate the size of the body in quoted-printable and base64 encoding - select the smaller encoded form of the two quoted-printable is fairly human readable. This strategy also works for encoding headers, particularly Subject: lines (substituting q-encoding for qp). Quoted-Printable: a standard for mangling Internet messages Quoted-Unreadable: the result of applying said standard Unquoted-Unprintable: the comments from the recipients of the above (me, in alt.sysadmin.recovery. I'm not sure how someone converted Brandon S Allbery KF8NH into bf8 but that's the universal attribution.) - -- 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/ iEYEARECAAYFAkz+87kACgkQIn7hlCsL25U+FQCgzV+47Rl5KB7ZreKMyRx4kDhb 6kMAmgJy8TW0omQyDuSMp5oaYOctnSDh =Si8I -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Conditional compilation for different versions of GHC?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/7/10 06:00 , Henning Thielemann wrote: Brandon S Allbery KF8NH wrote: Since the base package is (with good reason) part of the compiler, anyone smart enough to get that to work is smart enough to edit the cabal file. There are good reasons for not only bundling 'ghc' package with GHC, but 'base', too? I assumed it is intended to untangle 'base' and GHC in future, such that 'base' can be used with JHC, UHC, Hugs. I seem to recall that the logistics of that change have been proving a bit difficult in practice, and as such it's probably not going to happen very soon. - -- 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/ iEYEARECAAYFAkz+9HYACgkQIn7hlCsL25XXPQCfa/x9ZyhUmN88vu3/EPv8Tjhq +5EAniBq3G9gto/IC8kyYFP2rAjTxB/4 =LnDx -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Offer to mirror Hackage
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/7/10 18:53 , Darrin Chandler wrote: On Tue, Dec 07, 2010 at 11:04:04PM +0100, Ketil Malde wrote: It's not obvious to me that adding a mirror makes the infrastructure more more insecure. Any particular concerns? (I hope I qualify as naïve here :-) If you run a mirror people will come to you for software to run on their machines. I see a way to take advantage of that immediately. Exactly. And this isn't theoretical; fake packages and packages with extra payloads injected into them are fairly common. - -- 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/ iEYEARECAAYFAkz/AMYACgkQIn7hlCsL25WCuwCgyuhbb6Q1eMbatUX5mxDp6Avi dDoAnj49sj73cDTVp0+8BXxi6oir3zAq =x2Gr -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Storables and Ptrs
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/6/10 13:22 , Antoine Latter wrote: On Mon, Dec 6, 2010 at 12:03 PM, Tyler Pirtle tee...@gmail.com wrote: On Sun, Dec 5, 2010 at 9:46 PM, Antoine Latter aslat...@gmail.com wrote: On Sun, Dec 5, 2010 at 10:45 PM, Tyler Pirtle tee...@gmail.com wrote: Hi cafe, I'm just getting into Foreign.Storable and friends and I'm confused about the class storable. For GHC, there are instances of storable for all kinds of basic types (bool, int, etc) - but I can't find the actual declaration of those instances. I'm confused that it seems that all Storable instances operate on a Ptr, yet none of these types allow access to an underlying Ptr. I noticed that it's possible via Foreign.Marshal.Utils to call 'new' and get a datatype wrapped by a Ptr, but this isn't memory managed - I'd have to explicitly free it? Is that my only choice? The Storable class defines how to copy a particular Haskell type to or from a raw memory buffer - specifically represented by the Ptr type. It is most commonly used when interacting with non-Haskell (or 'Foreign') code, which is why a lot of the tools look like they require manual memory management (because foreign-owned resources must often be managed separately anyway). Not all of the means of creating a Ptr type require manual memory management - the 'alloca' family of Haskell functions allocate a buffer and then free it automatically when outside the scope of the passed-in callback (although 'continuation' or 'action' would be the more Haskell-y way to refer to the idea): alloca :: Storable a = (Ptr a - IO b) - IO b This can be used to call into C code expecting pointer input or output types to great effect: wrapperAroundForeignCode :: InputType - IO OutputType wrapperAroundForeignCode in = alloca $ \inPtr - alloca $ outPtr - do poke inPtr in c_call inPtr outPtr peek outPtr The functions 'peek' and 'poke' are from the Storable class, and I used the 'alloca' function to allocate temporary storage for the pointers I pass into C-land. Is there a particular problem you're trying to solve? We might be able to offer more specific advice. The Storable and Foreign operations may not even be the best solution to what you're trying to do. Hey Antoine, Thanks for the clarity, it's very helpful. There is in fact a particular problem I'm trying to solve - persisting data structures. I'm a huge fan of Data.Vector.Storable.MMap, and I'm interested in other things like it - but i realize that the whole thing is built up/on/around storables, and building vectors with storables (read == peek, write == poke, etc), because i'm trying to write the raw structures themselves to disk (via mmap). I am aware of Data.Binary, but I feel that this kind of serialization for the application I'm building would be too cumbersome considering the number of objects I'm dealing with (on the order of hundreds-of-millions to billions), especially considering that the application I'm building has some very nice pure-ish semantics (an append-only list). I'd like the application to able to simply load a file and interact with that memory - not have to load the file and then deserialize everything. If you have any suggestions here, or if anyone has any general feelings about the design or implementation of Data.Vector.Storable.MMap I'd be very interested in hearing them. Or about any ideas involving persisting native data structures in an append-only fashion, too. ;) If you took the approach of Data.Vector.Storable.MMap, every time you read an element out of the array you would be un-marshalling the object from a pointer into a Haskell type - in effect, making a copy. There are probably ways to do this for ByteStrings to make this copy free, but that's about it. IIRC bytestring-mmap uses pinned bytestrings; might be easier/faster to use that directly if the vector package is troublesome. You'd want to use the bytestring internals module for the equivalent of peek/poke. - -- 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/ iEYEARECAAYFAkz9Mm0ACgkQIn7hlCsL25UgKgCgqV/BIXRDm5BVEPBzNllpVVD9 QsYAoJMU7kvHWxoAmb2eYV9b5tll9U0d =p1GN -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Offer to mirror Hackage
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/5/10 02:41 , Florian Lengyel wrote: Why is there even any consideration of some committee if someone wants to mirror the Hackage site? Why not mirror the site? Because it would be nice to have a mirror run by someone (a) accountable (b) who is unlikely to suddenly disappear due to loss of job, life becoming hectic, etc. (Consider that this is pretty much why *.haskell.org has been unreliable and fixes have been slow in coming; the individual in question is at Yale, and a good person but kinda snowed under of late.) - -- 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/ iEYEARECAAYFAkz7wrAACgkQIn7hlCsL25VrvACZAWZq4rYMM8PARZYvyFmnt1qZ jX4An3fgSSsuFLHR0/HsEB8hEeyj4MCO =MI9c -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] the beginning of the end
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/4/10 21:35 , Jason Dagit wrote: In that case, here you go: http://twitter.com/statuses/user_timeline/216043045.rss http://twitter.com/statuses/user_timeline/17788765.rss You can get those by finding them on twitter and then clicking the RSS link. Twitter might be the one idea worse than reddit for this kind of thing - -- 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/ iEYEARECAAYFAkz7xR8ACgkQIn7hlCsL25UpxQCeL/v4mUjYpESgQWpDbj2ZQuyx 96sAoLiPOfvdT5r2vIRg3GxTKXntf/0c =0cvu -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] the beginning of the end
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/5/10 12:34 , Daniel Peebles wrote: Oh yeah, the 2.0 stuff that snobby techies love to hate :) hrrmpf back in my day we programmed in binary using a magnetized needle on the exposed tape! I don't need any of this newfangled bull. I kid! But I am curious to see why people are so opposed to this stuff? The attitude I can't see any reason for it to exist (without having seriously tried it) seems similar to that our (haskell's) detractors use when taking a cursory glance at it and saying the syntax doesn't make sense. My problem with reddit is (a) I always have to click through the reddit entry to see the article it's about; this is a usability botch as far as I'm concerned (b) I already have to follow too many sources of information, and would really like to get it under control. As for twitter, one word: firehose. *Way* too easy to miss things, even with Tweetdeck and the like. - -- 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/ iEYEARECAAYFAkz70L0ACgkQIn7hlCsL25VOjACghY40T+eHMEeQSAtmjxkXFoXr 53IAnRR4j9xF/TiHmlAQAswjzju3Zf/7 =oOFZ -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] the beginning of the end
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/5/10 15:07 , Andrew Coppin wrote: you actually cannot do something as trivial as follow a conversation You can, just not via the web site. I do it in Tweetdeck all the time. That said, the important thing about Twitter is that it's *broadcast*. If you try to force it to be an AIM/Windows Live Messenger etc. replacement, you will be unhappy; if you use it as itself, it actually works fairly well. But for itself doesn't include reliable delivery in any sense; not only does it not provide any guarantees that the recipient(s) received or saw any given message, but the service itself is unreliable (constant outages, and the fail whale (referring to the message the web site displays when the service is overloaded) shows up a lot even when Twitter's up. - -- 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/ iEYEARECAAYFAkz79HEACgkQIn7hlCsL25UlZwCgzJ76zZtLTixa3uf1Pi2sN2CA PVoAoK/ekbBEz+xUQbWiPLM7q14evyXp =wGeu -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Conditional compilation for different versions of GHC?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/5/10 17:05 , Henning Thielemann wrote: Isn't it better to move the dependency on 'base' out of the If block? I mean, someone might succeed to use GHC-7 with base-4.2 or GHC7 or a different compiler with base-4.3. Since the base package is (with good reason) part of the compiler, anyone smart enough to get that to work is smart enough to edit the cabal file. - -- 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/ iEYEARECAAYFAkz8GukACgkQIn7hlCsL25WTxACfc4k/3GoQr402TbVFmabRD7sJ 7WEAoMnmLeaKGfjQdjdP4K60Ch6g72md =LZuU -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] GHC 7.0.1 developer challenges
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 11/24/10 20:59 , John D. Ramsdell wrote: Due to a security concern, GHC 7.0.1 disables all runtime flags unless a new flag is provided during linking. Since limiting memory usage is so important, many developers will modify their cabal files to add the linker flag or prepare for complaints from users that the developer's program caused their machine to freeze and lose their work. We went over this some time back; the GHC runtime is wrong here, it should only disable flags when running with geteuid() == 0. Also, the current mechanism for specifying runtime flags at compile time is horridly ugly and this really needs to be fixed before any such runtime limitation is viable. I hope that will be fixed in a later point release. - -- 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/ iEYEARECAAYFAkz6i6gACgkQIn7hlCsL25VajgCeKqReTXt0JlQ90iTPtvU6VRXy 1PkAoJC83Glcy3jurrxH7eoiNGFZdazJ =Zi+B -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] GHC 7.0.1 developer challenges
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 12/4/10 14:35 , Riad S. Wahby wrote: Edward Z. Yang ezy...@mit.edu wrote: There are many setuid binaries to non-root users, so getuid() != geteuid() would probably make more sense, though I'm not 100% it has all the correct security properties. Might as well throw in getegid() != getgid() for good measure. Another issue with this: in the next couple years it looks like Fedora and Ubuntu will both be going towards filesystem capabilities instead of suid. If access to +RTS is restricted for suid binaries, it should probably also be restricted for binaries with elevated capabilities. Yes to both. And on Windows I wonder if it makes sense to try to detect that a program is running with restricted permissions (lack of membership in certain groups) and likewise restrict use of runtime options. (I don't think there's anything like setuid, though, and it probably makes no sense to try to detect that someone installed the program as a service running as LSA or used RunAs.) - -- 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/ iEYEARECAAYFAkz6xIQACgkQIn7hlCsL25XuiACfbUPTtk1Qkvo5fpWJzhX/WrbL A54An2CLYNa6Rza5KmswyrRJlKAb/w0G =X0nY -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: Problems with openFd and -threaded
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 11/29/10 18:36 , Bryan O'Sullivan wrote: On Sat, Nov 27, 2010 at 9:05 PM, wren ng thornton w...@freegeek.org mailto:w...@freegeek.org wrote: So I've just started playing around with STM and -threaded programs and I've run into a bug. The bug is similar to [1] except that the file in question is a Posix FIFO instead of a Bluetooth device. Same behavior: always errors with -threaded, but expected behavior when not -threaded (i.e., blocks until another process opens the other end of the FIFO). GHC version is 6.12.1. Isn't that pretty normal? Just retry if you get EINTR, that's what throwErrnoIfMinus1 and friends are for: The problem is the interrupting signal is the timer interrupt used by the runtime system; this should not be visible to user programs, instead the runtime should *itself* restart the operation. - -- 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/ iEYEARECAAYFAkz5Uv4ACgkQIn7hlCsL25UOLACgz85SXrIH54c5zVZHot0FTzqW Z9cAoKa6ViYVrT4U5PaYwVF34oM6lahv =o2md -END PGP SIGNATURE- ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: [Haskell-cafe] In what language...?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 11/28/10 08:47 , Florian Weimer wrote: * Gregory Collins: * Andrew Coppin: Hypothesis: The fact that the average Haskeller thinks that this kind of dense cryptic material is pretty garden-variety notation possibly explains why normal people think Haskell is scary. That's ridiculous. You're comparing apples to oranges: using Haskell and understanding the underlying theory are two completely different things. I could imagine that the theory could be quite helpful for accepting nagging limitations. I'm not an experienced Haskell programmer, though, but that's what I noticed when using other languages. Yes and no; for example, it's enough to know that System F (the type system used by GHC) can't describe dependent types, without needing to know *why*. A brief overview is more useful in this case. This is true of most of the ML-ish languages: they're based on rigorous mathematical principles, but those principles are sufficiently high level that there isn't a whole lot of point in teaching them as part of teaching the languages. The concepts behind other languages are rarely based in anything quite as high level, and moreover often take structural rather than mathematical form, so understanding them *does* help. (An example of this is C++ templates; as I understand it, there *is* mathematics behind them, but many of their behaviors come from their structure rather than the math.) - -- 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/ iEYEARECAAYFAkz5ROsACgkQIn7hlCsL25VdGQCeLuDo6HS8sfnFG1EuA4oDO56y 5soAoLexEtjRKYIVFFCpWk86u0/woZGF =Fn2e -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] RegEx versus (Parsec, TagSoup, others...)
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 11/13/10 09:19 , Brent Yorgey wrote: On Fri, Nov 12, 2010 at 03:56:26PM -0800, Michael Litchard wrote: a Perl perspective. I let him into what I was doing, and he opined I should be using pcre. So now I'm second guessing my choices. Why do people choose not to use regex for uri parsing? Never believe anything anyone coming from a Perl perspective says about regular expressions. If a Perl expert tells you that regexps are the way to parse HTML/XML, you can safely conclude they've never actually tried to do it. - -- 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/ iEYEARECAAYFAkzm93MACgkQIn7hlCsL25V6RACgxWMErR6armLoxyFooERkxnJa +I8Aniag5cRSZ9pdwsDeQ/nedMsxana+ =aiuP -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: List vs Data.List
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 11/18/10 13:06 , Serge D. Mechveliani wrote: In ghc-7.0.1, to import `partition', it is sufficient the line import List (partition), but to import `intercalate', it is needed import Data.List (intercalate). Does Haskell-2010 differ between List and Data.List import? Haskell-2010 specifies Data.List. List is only for Haskell98. - -- 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/ iEYEARECAAYFAkzliWgACgkQIn7hlCsL25XloQCggEV8ndpBEJp435VQj9ZqMqMp hicAnjrX7gQs7KYyW97c9HpkJcz3kKHJ =4yB5 -END PGP SIGNATURE- ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: [Haskell-cafe] Compiler constraints in cabal
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 11/6/10 23:09 , wren ng thornton wrote: On 11/6/10 6:20 AM, Reiner Pope wrote: I was aware of this condition, but I'm not precisely sure it addresses my requirements. When you run cabal install some-package, cabal reads all version constraints listed in the build-depends field, and chooses which versions of which packages to download from Hackage in order to satisfy these constraints. I want to expose my dependency on a particular version of ghc to cabal's constraint satisfier. The end result I want is that when you type cabal install hmatrix-static with ghc-6.12 installed, then cabal chooses hmatrix-static-0.3; and when you type cabal install hmatrix-static with ghc-7.0 installed, then cabal chooses hmatrix-static-0.4. Clients of hmatrix-static would have to say if impl(ghc = 7.0) Build-Depends: hmatrix-static == 0.4.* else Build-Depends: hmatrix-static == 0.3.* in order to pull in the right dependency for themselves. In order to get the behavior you're after, though, is trickier business. Since every version of GHC ships with a different version of base, you'll have to make use of that knowledge such that users of ghc-7.0 with base-5 will get hmatrix-static-0.4 whereas users of ghc-6.12 with base-4 will get hmatrix-static-0.3 Don't you just rerelease 0.3.x (bump the sub-version) with a dependency on base 5, and release 0.4 with base = 5, and let Cabal work out the above Build-Depends for itself? - -- 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/ iEYEARECAAYFAkze5FUACgkQIn7hlCsL25XnkACZAULQcjlaAxsClFxhQRsHcuRX NBkAn2cbZ4FD1+Qtu1qsB7f9mXvPHjMt =Zt6h -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Error installing hp2any-graph on Snow Leopard
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 11/8/10 04:52 , Ivan Lazar Miljenovic wrote: I'm not sure how MacPorts does packaging, so you may require to install a -dev or development version of glut to get the relevant headers and library files. MacPorts always builds from source, so always installs libraries with their development headers and libraries. A -devel package in MacPorts is usually the latest alpha/beta release of the corresponding non-devel package. - -- 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/ iEYEARECAAYFAkziAKkACgkQIn7hlCsL25VB4ACgr02BjAcI9m0Ju7jYzxE8W63V Er8AmgJ4FyO2SbGBBffyYRDeyOXdrUDw =gKN1 -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Re: Haskell is a scripting language inspired by Python.
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 11/11/10 11:12 , Simon Marlow wrote: I bootstrapped GHC from the intermediate C files on a 640K PC around 1993 or so. I don't remember exactly, but I think it might have worked, for some small value of work. If you used the right build environment, the compiler would have arranged for overlays; the better ones even supported data overlays, but I imagine that would have wreaked utter havoc with the runtime (its thunks would have been wrapped in compiler-generated thunks that swapped the overlay space as needed). - -- 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/ iEYEARECAAYFAkzcF7wACgkQIn7hlCsL25UdJACeNi0aPwQRAatUiBH1MDFQrttR jOcAnjrUA29p/lxqwv3N0WXDRvEO+DYW =+BuC -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Re: Decoupling type classes (e.g. Applicative)?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 11/3/10 21:30 , Maciej Piechotka wrote: On Tue, 2010-11-02 at 21:57 -0400, Brandon S Allbery KF8NH wrote: On 10/29/10 09:35 , Dominique Devriese wrote: * Only introduce a dependency from type class A to type class B if all functions in type class B can be implemented in terms of the functions in type class A or if type class A is empty. Er? Eq a = Ord a makes perfect sense in context but violates this law. x == y = case x `compare` y of EQ - True; _ - False So, gratuitous duplication. Leading to the potential for the lovely case where Eq does one thing and `compare` does something else. This is an improvement? - -- 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/ iEYEARECAAYFAkzYzTAACgkQIn7hlCsL25U91wCgz1kGXIyrlOqq69qnAyK4F1jm De0AoM8mwq39+qFQRRZSsf3Qu8dSLoQr =IMhV -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: Loop optimisation with identical counters
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 11/5/10 19:22 , David Peixotto wrote: Probably there are some wins to be had by choosing a good optimization sequence for the code generated from GHC, rather than just using `-O1`, `-O2`, etc. I believe It should be possible to find a good optimization sequence that would work well for Haskell codes. Didn't someone (dons?) already make a start on this? - -- 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/ iEYEARECAAYFAkzUtdQACgkQIn7hlCsL25VG6ACeJ3sSXoI4YLbXW3KIFVMqKqdK oTsAn23bxl0mvfdl3up69xM4qWPnklGj =TXBk -END PGP SIGNATURE- ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: [Haskell-cafe] What is simplest extension language to implement?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 11/2/10 03:33 , Permjacov Evgeniy wrote: Forth is quite easy to implement, but can it be used as extension language? Wiki describes it as quite low level... It's low level but rather easy to build up more complex stuff. It's never been that popular in general due to its RPN nature, but is quite popular for extensions in low memory situations: it's *extremely* compact when compiled (that is, when source code consisting solely of word definitions is executed, the result is quite tiny). To give one example of the latter, look at FreeBSD's boot loader. - -- 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/ iEYEARECAAYFAkzUq3sACgkQIn7hlCsL25UxZwCePgTpKGFnxZB+AJHugIAkXSbd FTUAnjl2FJEjyp9bxr3rh3Nmql3O0y22 =ncJH -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Decoupling type classes (e.g. Applicative)?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 10/29/10 09:35 , Dominique Devriese wrote: * Only introduce a dependency from type class A to type class B if all functions in type class B can be implemented in terms of the functions in type class A or if type class A is empty. Er? Eq a = Ord a makes perfect sense in context but violates this law. - -- 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/ iEYEARECAAYFAkzQwZUACgkQIn7hlCsL25UXaACghD6I6JnoVZ3LTOsjy86ZWzmO hq4An06sQPiC2/Xr40xlTAA97xdhACud =nf0v -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] commutativity
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 10/30/10 06:55 , Patrick Browne wrote: -- Question 1 -- commutative com 1 3 -- This also gives true. Is it because of commutative equation or because of the plus operation? Haskell doesn't know about commutativity; you got true because (+) happens to be commutative. There was a discussion about this recently on the list. - -- 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/ iEYEARECAAYFAkzO8MMACgkQIn7hlCsL25XC2ACgulNd5A+Gf33lplW3HOmhPLlZ u3EAoMsrbEkMQuU1yR/VaG5XqvNdhS5+ =jMQe -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: network programming with GHC 7
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 10/28/10 05:16 , Kazu Yamamoto (山本和彦) wrote: When I compiled a network server with GHC 7 without the -threaded option and ran it, I got the following error. file descriptor 5496824 out of range for select (0--1024). I would be extremely suspicious of memory corruption with an fd that large; it would indicate a kernel file table several tens of megabytes in size and a minimum 10MB per-process file table associated with every process (on Unix, but similar concerns probably apply on Windows). (Also, I thought the new I/O manager didn't use select(), specifically because it has annoying limitations like the above.) - -- 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/ iEYEARECAAYFAkzNwcsACgkQIn7hlCsL25V10ACdE6JOxEcTqbSarM0xnff3Bg7d 9Z0AoLPNWTCfJSF8BG7IDU6/Vghwcr/Q =Onzb -END PGP SIGNATURE- ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: [Haskell-cafe] Re: Current thinking on CompositionAsDot issue in haskell prime?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 10/29/10 20:33 , C. McCann wrote: I suggest U+2621. Did you mean U+2620 SKULL AND CROSSBONES there? - -- 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/ iEYEARECAAYFAkzNrfoACgkQIn7hlCsL25UTPwCfZIoFnec/y9Hx9BfIqzw6gSr8 ajAAnjycfEoRw7ZbBrplVb3xApb3Cq6J =7No/ -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Re: Current thinking on CompositionAsDot issue in haskell prime?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 10/29/10 22:30 , wren ng thornton wrote: On 10/29/10 8:33 PM, C. McCann wrote: I suggest U+2621. I'm not sure I'd've ever recognized a funny 'z' as caution sign... :) You'd have to be a TeX / Metafont user to get that one. (The LaTeX book doesn't use that symbol for caution, so I don't count LaTeX users so much.) - -- 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/ iEYEARECAAYFAkzNrlIACgkQIn7hlCsL25VoygCgnohkDoepVXT+SNzOOpJ15r/6 IB4AnA/dI1d6pk2pje3K2LSFGEXoCADE =JyAA -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Parsec in Haskell platform
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 10/24/10 06:59 , Andrew Coppin wrote: now I can't seem to find it. Instead, I had to navigate to the Unix download page, download the source tarball, untar it (non-trivial under Windows), and I thought WinZip added tar and tar.gz several years ago? - -- 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/ iEYEARECAAYFAkzFmO4ACgkQIn7hlCsL25U2LQCfdJYOYskuvEGV161ng5ntHjDe L2EAnjDNpjrqriRnXHJmmL0gCnZ804D1 =BhVW -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Parsec in Haskell platform
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 10/25/10 10:49 , Brandon S Allbery KF8NH wrote: On 10/24/10 06:59 , Andrew Coppin wrote: now I can't seem to find it. Instead, I had to navigate to the Unix download page, download the source tarball, untar it (non-trivial under Windows), and I thought WinZip added tar and tar.gz several years ago? Also, cabal configure gets you a nicely unpacked tree. (Hm, I thought there was a cabal unpack somewhere.) - -- 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/ iEYEARECAAYFAkzFmWEACgkQIn7hlCsL25WN8ACffLOlyebWjatpktmvSFnquJ1m WzEAn3OBVRReoOfT0hTpv0v0jl2bkwPD =LNmG -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] concurrency vs. I/O in GHC
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 10/22/10 19:16 , Bulat Ziganshin wrote: Monday, October 18, 2010, 8:15:42 PM, you wrote: If anyone is listening, I would very much like for there to be a mechanism by which external functions can be called unsafe-ly, but without blocking all other Haskell threads. I have code that does this: +RTS -N2 I think they mean please don't conflate `reentrant' with `blocking' in the FFI. - -- 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/ iEYEARECAAYFAkzDKmIACgkQIn7hlCsL25WHMwCgktq4XC3Exdij33maBxN9Vu8p jlcAoJhasAIqVbSYo79z+IrY3zp9GVOR =ZmOh -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Compiling and installing glib and gtk+ on Snow Leopard
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 10/23/10 10:00 , Mark Spezzano wrote: What, exactly is happening here? I've compiled libiconv and put it under /usr/bin (so iconv is there). Yet it still complains...I don't get it. I've spend the best part of a day mucking around with this to no avail. What's happening is SL has its own libiconv that interferes with pretty much everything; there have been bug reports filed against ghc, Fink, MacPorts, and pretty much every other development-related package/collection I know of that is available on SL. (Also, compiling your own something and putting it in /usr/{bin,lib} is a BAD BAD BAD idea that will come back and bite you at some point.) - -- 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/ iEYEARECAAYFAkzDOF4ACgkQIn7hlCsL25VwvQCeJ8+W0FUPN6DtxAwwv4DNt/V3 0DYAoIVrJHdBnW5TbbVAeW4edZ6D0rT7 =sccS -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] An interesting paper from Google
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 10/18/10 21:37 , Evan Laforge wrote: For instance, currently I have the top consumer of both time and alloc as 'get', which is 'lift . Monad.State.Strict.get'. Of course it occurs in a million places in the complete profile, along with mysteries like a line with 0 entries 0.7%/0.1 time/alloc. Doesn't 0 entries mean it was never called? Meanwhile, a line with 37000 entries has 0.2/0.2. Is the difference how the 'get'ed value was used? And then there's the wider question of how 'get' is taking so much time and space. Doesn't it just return a pointer to the State value? Biographical profiling shows large amounts of void, lag, and drag, but no clear way to trace that to the code that is responsible. Any time you see something inexplicable like lots of time being attributed to something simple like get, it means that something isn't strict enough and get is having to force a bunch of lazy evaluations to do its job. Since you're using State.Strict but lift-ing to get there, I'd first look at the strictness of the monad you're lift-ing from. (I'm assuming State.Strict does what the label says, but it's possible that it's not strict in the way you need; strictness is kinda tricky.) Moral of the story: time is accounted to the function that forces evaluation of lazy thunks, not to the thunks themselves or the function that created the lazy thunks. (I think the latter is impossible without passing around a lot of expensive baggage, and in any case doesn't tell you anything useful; unexpected functions taking a lot of time, on the other hand, tells you right away that there's excessive laziness in the invocation somewhere and gives you a starting point to track it down.) - -- 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/ iEYEARECAAYFAky9zQ8ACgkQIn7hlCsL25UvhACeIGaziKg+nx6cTWRLnwjf0T5c Gg8An1ZvNSDj/NXh032wsTGWZjLxZ7xD =VPo+ -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Haskellers.com skills list moderation?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 10/19/10 13:09 , Andrew Coppin wrote: On 18/10/2010 09:59 PM, Magnus Therning wrote: On 18/10/10 21:56, Andrew Coppin wrote: ...I thought *I* was the only person who's ever heard of Rexx? Every amiga user is very likely to have heard of rexx, as a close relative to it was included in AmigaOS at some point. ...and I had of course assumed that I was the only person to have ever heard of the Amiga too. Not to mention us old geekosaurs, some of whom have used (a) OS/2 (b) IBM VM/SP, for which REXX was the standard scripting language. (Fun stuff: extending XEDIT with REXX code.) - -- 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/ iEYEARECAAYFAky+U+EACgkQIn7hlCsL25VJAQCgzKsfXsTJ26r0Dlkhfb+eiMPq XKMAn3D0ygw74Y4YbqKiNtVVkEa1W/cm =/WfD -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] An interesting paper on VM-friendly GC
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 10/18/10 01:18 , Nathan Howell wrote: On Sat, Oct 16, 2010 at 8:45 AM, Brandon S Allbery KF8NH allb...@ece.cmu.edu wrote: I thought Windows already had a system message for something like that. Or at least it used to, although I can see why it would have been removed or at least deprecated. You're probably thinking of CreateMemoryResourceNotification [1], available since Windows XP. If they were to deprecate it (doubtful) it typically takes two major releases to do so. No, the one I'm thinking of was around (and buggy enough to get some press as the target of a service pack) for NT4. - -- 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/ iEYEARECAAYFAky8f0UACgkQIn7hlCsL25XXPwCgvsUYMa6EH/Ryp9WGhyZa3z/g XAcAn0Vdn6WZu7I4VoA1VVCKcLdkb913 =DTNY -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] An interesting paper on VM-friendly GC
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 10/16/10 05:35 , Andrew Coppin wrote: GC languages are not exactly rare, so maybe we'll see some OSes start adding new system calls to allow the OS to ask the application whether there's any memory it can cheaply hand back. We'll see... I thought Windows already had a system message for something like that. Or at least it used to, although I can see why it would have been removed or at least deprecated. Unix could do it with a signal, but in general the application can't easily do that at times chosen by an external entity (consider that the act of finding such memory could inadvertently *increase* memory pressure on the system, since an application can't tell which of its pages aren't in core) The correct solution is to give the application the tools necessary for it to do its own memory management --- which is what the paper is about. - -- 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/ iEYEARECAAYFAky5yLEACgkQIn7hlCsL25UU/ACfXc8mmUeR2oIJMKGYSwd61JvM qC0AoJ7BrEf0+ApE+Ohr4BnyqfqBCQ4q =VBBc -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] downloading GHC
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 10/16/10 12:07 , Ketil Malde wrote: Brandon S Allbery KF8NH allb...@ece.cmu.edu writes: Linux users don't have easy binary installers, usually. What can we do about this bootstrapping problem? I thought the answer to that was supposed to be bug your distribution to package the Platform. In my case, it's more like bug the IT department to get with the times and drop distributions like RHEL and CentOS. And I do try, but to my perpetual chagrin, I'm not always as high on their priority list as I might wish... There is that, isn't there? And, as one of aforementioned IT department folks (admittedly in a different context) it's not always as high on our priority lists as we might wish, and — worse — we may have our hands tied by someone even higher in the food chain. (I'm going to have to drop gtk2hs here because recent versions are incompatible with the glib (gtk+, oddly, is fine) we have installed on about a third of the machines in the department, and we're *already* failing to get those upgraded to something halfway modern) - -- 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/ iEYEARECAAYFAky54lcACgkQIn7hlCsL25WifgCgi/sMjBuqXm8jOIcpKnuCIVde meQAoNbbpu2hfAedLqRHmLEZuN66zuN6 =pgJg -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] downloading GHC
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 10/15/10 11:26 , Don Stewart wrote: Linux users don't have easy binary installers, usually. What can we do about this bootstrapping problem? I thought the answer to that was supposed to be bug your distribution to package the Platform. - -- 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/ iEYEARECAAYFAky46mEACgkQIn7hlCsL25XBNgCfefI3QCUmwGTMA5KlE05QY3S6 tAMAnjPMmFRQitxhB97o0lysnfGL41yj =VTuz -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] An interesting paper from Google
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 10/15/10 16:28 , Andrew Coppin wrote: I'm surprised about the profiler. They seem really, really impressed with it. Which is interesting to me, since I can never seen to get anything sensible out of it. It always seems to claim that my program is spending 80% of its runtime executing zipWith or something equally absurd. I'm That just means you haven't internalized managing laziness yet, so you're seeing thunks get processed by zipWith instead of where they ought to be. (Not that I'll claim to be any better; I just know why it happens.) surprised that there's no tool anywhere which will trivially print out the reduction sequence for executing an expression. You'd think this would be laughably easy, and yet nobody has done it yet. Hat hasn't been maintained for years, sigh. A number of times I could have used it... and I'm not confident enough of my ability to grok the code. Their comments about String are sadly true. HP's still struggling with that one (I think some people need to realize that Text and ByteString have different use cases and correspondingly different data models, and trying to force both into the list API will only cause grief, but I digress). I have hope that this situation will improve in the future. (Also, I process enough short strings that I'm uncertain of the wisdom of just using Text or ByteString for everything; this is admittedly a function of lack of experience.) - -- 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/ iEYEARECAAYFAky4/tgACgkQIn7hlCsL25UR4ACeJ/HY2OGyjEPCz1k3te+x0MRU ZUIAoI+P5KL//rkPv8nOZmqYqs90VruC =UBvU -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] In what language...?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 10/15/10 16:36 , Andrew Coppin wrote: Does anybody have any idea which particular dialect of pure math this paper is speaking? (And where I can go read about it...) Type theory. It makes my head spin, too, since essentially my only exposure to it so far is Haskell itself. - -- 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/ iEYEARECAAYFAky5AAUACgkQIn7hlCsL25UxawCePztYYnJLXZS8Cx78H4IdNs4q pG4AnjrRLBkL96gduOhN9AyBJPp+xKSv =IcA6 -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Re: Re: A question regarding cmdargs package
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 10/13/10 06:07 , Henning Thielemann wrote: Ben Franksen schrieb: I wanted to create a clone of an existing program that had no help option and instead gave the help output if it saw an invalid option. I find it very annoying if a program floods my terminal with a help page, when I just misspelled something. A short descriptive message that points to the mistake would be of more help for me. He mentioned that he has backward compatibility constraints. In an ideal world - -- 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/ iEYEARECAAYFAky1xmUACgkQIn7hlCsL25WWpwCdFM209D0Y0FfhBwgeOnfyuzJa SoYAnAhNuo1uhFE6hNErRG8QdIPmQmB6 =XTVN -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Re: Re: Make your Darcs repositories hashed?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 10/13/10 13:48 , Jason Dagit wrote: Isn't debian etch a security liability at this point? Never underestimate the inertia of a system which a professor uses for research or a grad student for their thesis work. - -- 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/ iEYEARECAAYFAky2aKMACgkQIn7hlCsL25W9vgCgvtBEJkSSTNfpk/kUXZ1GcWTW JfkAn3OOKnNaLcKuwk/Kh9OBNOtFxvIF =OD3V -END PGP SIGNATURE- ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe