Re: [Haskell-cafe] Splitting off many/some from Alternative

2011-12-14 Thread Gregory Crosswhite
On Dec 14, 2011, at 4:40 PM, Ivan Lazar Miljenovic wrote: [...] Apart from some basic combinators in Control.Monad or the definitions of monad transformers, how much of what you write in do-blocks is applicable to some generic Monad instance as opposed to a specific Monad? Well, if my

Re: [Haskell-cafe] Sharing on equality

2011-12-14 Thread Ketil Malde
Johan Brinch brin...@gmail.com writes: Can GHC eliminate one of two equal ByteStrings, when they are compared and turns out to be equal? Not in general, there is no guarantee that a is identical to b, just because a == b. Say i have a map, ByteString - Int. Data.Map.Map ByteString Int I

Re: [Haskell-cafe] indentation blues

2011-12-14 Thread Paul Koerbitz
Hello, TL;DR: If you have some time try emacs, the viper / vimpulse plugins are pretty good and the editor is awesome in general. Haskell indentation is good. I was a hardcore vim user and switched to emacs because the REPL for clojure was just aweful in vim. I am using the vi keybindings

Re: [Haskell-cafe] A Mascot

2011-12-14 Thread Clint Moore
On Tue, Nov 22, 2011 at 10:34 AM, Vincent Hanquez t...@snarc.org wrote: I think cute is good enough, and heathmatlock's lamb da, a good and simple name with a funny pun, definitely made me smile, and hope that's something i see on haskell tshirts soon ;-) Done.

Re: [Haskell-cafe] Splitting off many/some from Alternative

2011-12-14 Thread Ivan Lazar Miljenovic
On 14 December 2011 20:21, Gregory Crosswhite gcrosswh...@gmail.com wrote: On Dec 14, 2011, at 4:40 PM, Ivan Lazar Miljenovic wrote: [...] Apart from some basic combinators in Control.Monad or the definitions of monad transformers, how much of what you write in do-blocks is applicable to

Re: [Haskell-cafe] indentation blues

2011-12-14 Thread Oliver Charles
Paul Koerbitz paul.koerb...@gmail.com writes: Hello, TL;DR: If you have some time try emacs, the viper / vimpulse plugins are pretty good and the editor is awesome in general. Haskell indentation is good. Not to go too off topic, but I'm not sure people are aware there's another Vim

[Haskell-cafe] DB vs read/show for persisting large data

2011-12-14 Thread C K Kashyap
Hi, It has been on my todo list for some time now. I'd like to write a GTD tool that has dependency tracking support. Haskell seems like a good choice for this. I was wondering if there has been any past attempts with this? One thing that has been bothering me has been this - the persistence of

Re: [Haskell-cafe] DB vs read/show for persisting large data

2011-12-14 Thread Michael Snoyman
On Wed, Dec 14, 2011 at 3:31 PM, C K Kashyap ckkash...@gmail.com wrote: Hi, It has been on my todo list for some time now. I'd like to write a GTD tool that has dependency tracking support. Haskell seems like a good choice for this. I was wondering if there has been any past attempts with

Re: [Haskell-cafe] DB vs read/show for persisting large data

2011-12-14 Thread Yves Parès
If what bothers you is writing SQL code (and I could easily understand), you may wanna check persistent. It uses Template Haskell to generate for you the necessary marshalling and tables definition, so you just handle haskell datatypes. (^^ Michael just outposted [1] me). For json serialization,

Re: [Haskell-cafe] DB vs read/show for persisting large data

2011-12-14 Thread Yves Parès
I got mixed up with something else : forget about enumerator-based version of aeson, it does not exist. 2011/12/14 Yves Parès limestr...@gmail.com If what bothers you is writing SQL code (and I could easily understand), you may wanna check persistent. It uses Template Haskell to generate for

Re: [Haskell-cafe] indentation blues

2011-12-14 Thread Rustom Mody
Is the haskell-mode that comes out of the box with emacs (v 23.3) the one you folk use or do you use something more specific/uptodate? How to find out? [There should be a haskell-mode-version...] To the folks from the (hesitating) vi-camp: Whatever you use, please take time to familiarize

Re: [Haskell-cafe] DB vs read/show for persisting large data

2011-12-14 Thread Marc Weber
Excerpts from Michael Snoyman's message of Wed Dec 14 14:34:30 +0100 2011: On Wed, Dec 14, 2011 at 3:31 PM, C K Kashyap ckkash...@gmail.com wrote: Definite *don't* use read/show: if you make any updates to your data structures, all old files will be lost. Well you can work around it: data

Re: [Haskell-cafe] DB vs read/show for persisting large data

2011-12-14 Thread Yitzchak Gale
Yves Parès wrote: (^^ Michael just outposted [1] me). [1] I don't know if there is such a word. Sorry, I'm french. If there wasn't before, there is now. It's a great word! (Et je suis en effet un anglophone.) -Yitz ___ Haskell-Cafe mailing list

Re: [Haskell-cafe] DB vs read/show for persisting large data

2011-12-14 Thread Claude Heiland-Allen
On 14/12/11 13:59, Marc Weber wrote: Excerpts from Michael Snoyman's message of Wed Dec 14 14:34:30 +0100 2011: On Wed, Dec 14, 2011 at 3:31 PM, C K Kashyapckkash...@gmail.com wrote: Definite *don't* use read/show: if you make any updates to your data structures, all old files will be lost.

Re: [Haskell-cafe] DB vs read/show for persisting large data

2011-12-14 Thread Michael Snoyman
On Wed, Dec 14, 2011 at 4:22 PM, Claude Heiland-Allen cla...@goto10.org wrote: On 14/12/11 13:59, Marc Weber wrote: Excerpts from Michael Snoyman's message of Wed Dec 14 14:34:30 +0100 2011: On Wed, Dec 14, 2011 at 3:31 PM, C K Kashyapckkash...@gmail.com  wrote: Definite *don't* use

Re: [Haskell-cafe] DB vs read/show for persisting large data

2011-12-14 Thread Yves Parès
2011/12/14 Yves Parès limestr...@gmail.com For brutal binary serialization, you may like binary or cereal (I don't know the dis/advantages of both, except that the last time I checked, cereal only handled strict bytestrings). BTW, if we can cope with strict bytestrings (if we don't have a

Re: [Haskell-cafe] Splitting off many/some from Alternative

2011-12-14 Thread James Cook
On Dec 14, 2011, at 1:23 AM, Gregory Crosswhite wrote: On Dec 13, 2011, at 3:32 AM, Bryan O'Sullivan wrote: Don't be silly. The purpose of some and many is to be used with combinators that are expected to fail sometimes. If you use them with combinators that always succeed, of course

Re: [Haskell-cafe] ANNOUNCE: hxournal-0.5.0.0 - A pen notetaking program written in haskell

2011-12-14 Thread Tom Murphy
On Dec 14, 2011 1:33 AM, Ian-Woo Kim ianwoo...@gmail.com wrote: Hi, Ivan, I modified hxournal. New source code is now on github repository. https://www.github.com/wavewave/hxournal Are these changes reflected on Hackage? amindfv / Tom Now it has a very rudimentary config file. The config

Re: [Haskell-cafe] DB vs read/show for persisting large data

2011-12-14 Thread Ozgur Akgun
On 14 December 2011 15:02, Yves Parès limestr...@gmail.com wrote: The 'derive' package? The problem is that it has a lot of dependencies you maybe don't need if you jut want serialization, plus it relies on TH so it grows both compilation time and executable size. Well you can use the stand

Re: [Haskell-cafe] ANNOUNCE: hxournal-0.5.0.0 - A pen notetaking program written in haskell

2011-12-14 Thread Ivan Perez
I think not. The version in hackage is still hxournal-0.5.0.0. Unless, of course, you can update a package that's already been submitted without increasing the version number. Is that possible? (I actually don't know) Cheers, Ivan. On 14 December 2011 16:44, Tom Murphy amin...@gmail.com wrote:

Re: [Haskell-cafe] ANNOUNCE: hxournal-0.5.0.0 - A pen notetaking program written in haskell

2011-12-14 Thread Brent Yorgey
On Wed, Dec 14, 2011 at 04:53:38PM +0100, Ivan Perez wrote: I think not. The version in hackage is still hxournal-0.5.0.0. Unless, of course, you can update a package that's already been submitted without increasing the version number. Is that possible? (I actually don't know) Thankfully, it

[Haskell-cafe] ANNOUNCE: keera-network-sms-diamondcard

2011-12-14 Thread Ivan Perez
My fellow haskellers, I wrote a very simple library to send SMSs using the DiamondCard VoIP provider. At the present time, it uses the HTTP interface to contact the provider (there's a SOAP interface, but I haven't been able to make it play along with shoap). The current API is quite

Re: [Haskell-cafe] Splitting off many/some from Alternative

2011-12-14 Thread Bryan O'Sullivan
On Tue, Dec 13, 2011 at 10:23 PM, Gregory Crosswhite gcrosswh...@gmail.comwrote: This way users of the classes will know whether their type has well-defined instance for some and many or not. But that's *precisely* what the Alternative class is already for! If you are writing an Alternative

Re: [Haskell-cafe] Splitting off many/some from Alternative

2011-12-14 Thread James Cook
On Dec 14, 2011, at 12:37 PM, Bryan O'Sullivan wrote: On Tue, Dec 13, 2011 at 10:23 PM, Gregory Crosswhite gcrosswh...@gmail.com wrote: This way users of the classes will know whether their type has well-defined instance for some and many or not. But that's precisely what the

Re: [Haskell-cafe] Splitting off many/some from Alternative

2011-12-14 Thread Chris Dornan
Well I do welcome such discussion. This list should be for those of us who are perhaps not so brilliant or knowledgeable. One of my biggest concerns with Haskell is that the complexity of some of the interfaces requires quite extraordinary demands on the user to use them correctly. I am not

Re: [Haskell-cafe] DB vs read/show for persisting large data

2011-12-14 Thread Bas van Dijk
On 14 December 2011 15:22, Claude Heiland-Allen cla...@goto10.org wrote: I ran into this very nightmare in one project, and was recommend safecopy [0] by someone on the #haskell IRC channel.  I've not (yet) used it but it looks very nice! [0] http://hackage.haskell.org/package/safecopy Or

Re: [Haskell-cafe] indentation blues

2011-12-14 Thread Evan Laforge
On Mon, Dec 12, 2011 at 4:50 PM, Martin DeMello martindeme...@gmail.com wrote: The vim autoindent for haskell is really bad :( Is there a better indent.hs file floating around somewhere? Alternatively, is the emacs haskell mode better enough that it's worth my time learning my way around emacs

Re: [Haskell-cafe] indentation blues

2011-12-14 Thread Evan Laforge
On Wed, Dec 14, 2011 at 5:56 AM, Rustom Mody rustompm...@gmail.com wrote: Is the haskell-mode that comes out of the box with emacs (v 23.3) the one you folk use or do you use something more specific/uptodate?  How to find out? [There should be a haskell-mode-version...] To the folks from the

Re: [Haskell-cafe] Splitting off many/some from Alternative

2011-12-14 Thread Felipe Almeida Lessa
On Wed, Dec 14, 2011 at 4:09 PM, James Cook mo...@deepbondi.net wrote: So a case could be made that, just as forever (Just 1) being nonsensical doesn't invalidate instance Monad Maybe, some (Just 1) being nonsensical doesn't invalidate instance Alternative Maybe.  And on the other hand, a case

Re: [Haskell-cafe] Splitting off many/some from Alternative

2011-12-14 Thread Felipe Almeida Lessa
Ok, sorry for the spam, accidentaly hit the send button =/. On Wed, Dec 14, 2011 at 11:03 PM, Felipe Almeida Lessa felipe.le...@gmail.com wrote: On Wed, Dec 14, 2011 at 4:09 PM, James Cook mo...@deepbondi.net wrote: So a case could be made that, just as forever (Just 1) being nonsensical

Re: [Haskell-cafe] Splitting off many/some from Alternative

2011-12-14 Thread Gregory Crosswhite
On Dec 15, 2011, at 3:37 AM, Bryan O'Sullivan wrote: But that's precisely what the Alternative class is already for! If you are writing an Alternative instance at all, then you are asserting that it must be possible and reasonable to replicate the existing behaviour of some and many.

Re: [Haskell-cafe] Splitting off many/some from Alternative

2011-12-14 Thread Ross Paterson
The current definition says that some and many should be the least solutions of the equations some v = (:) $ v * many v many v = some v | pure [] We could relax that to just requiring that they satisfy these equations (which I think is what John wants). In that case there would be

Re: [Haskell-cafe] Splitting off many/some from Alternative

2011-12-14 Thread Gregory Crosswhite
On Dec 15, 2011, at 12:03 PM, Ross Paterson wrote: The current definition says that some and many should be the least solutions of the equations some v = (:) $ v * many v many v = some v | pure [] We could relax that to just requiring that they satisfy these equations (which I

Re: [Haskell-cafe] Splitting off many/some from Alternative

2011-12-14 Thread Ross Paterson
On Thu, Dec 15, 2011 at 02:19:34AM +, Gregory Crosswhite wrote: On Dec 15, 2011, at 12:03 PM, Ross Paterson wrote: The current definition says that some and many should be the least solutions of the equations some v = (:) $ v * many v many v = some v | pure []

Re: [Haskell-cafe] Splitting off many/some from Alternative

2011-12-14 Thread Antoine Latter
On Wed, Dec 14, 2011 at 8:03 PM, Ross Paterson r...@soi.city.ac.uk wrote: The current definition says that some and many should be the least solutions of the equations    some v = (:) $ v * many v    many v = some v | pure [] We could relax that to just requiring that they satisfy these

Re: [Haskell-cafe] Splitting off many/some from Alternative

2011-12-14 Thread Brandon Allbery
On Wed, Dec 14, 2011 at 21:01, Gregory Crosswhite gcrosswh...@gmail.comwrote: Also, frankly, I haven't seen much of a sign that the community itself has some kind of deep understanding of some/many that I lack. People have been giving me different answers to my question, many of which are not

Re: [Haskell-cafe] Splitting off many/some from Alternative

2011-12-14 Thread Gregory Crosswhite
On Dec 15, 2011, at 12:36 PM, Antoine Latter wrote: Although I'm still not sure why I would be using these operations in maybe or list. You probably wouldn't use these operations directly on Maybe or List, but the whole point is that when you are using a typeclass you have cannot assume that

Re: [Haskell-cafe] Splitting off many/some from Alternative

2011-12-14 Thread Ross Paterson
On Thu, Dec 15, 2011 at 02:36:52AM +, Antoine Latter wrote: This seems to generalize to list: some [] = [] some xs = [cycle xs] many [] = [[]] many xs = [cycle xs] More like some [] = [] some (x:xs) = repeat (repeat x) many [] = [[]] many (x:xs) =

Re: [Haskell-cafe] Splitting off many/some from Alternative

2011-12-14 Thread Gregory Crosswhite
On Dec 15, 2011, at 12:52 PM, Brandon Allbery wrote: These statements are not mutually logically consistent, and leave me wondering if Applicative and/or Alternative have been fully thought out. Oh, that particular question is *super*-easy to answer: based on what I've been reading, they

[Haskell-cafe] [Alternative] some/many narrative

2011-12-14 Thread Gregory Crosswhite
Okay, so how about the following as a user narrative for some and many? many v = repeatedly execute the action v and save each obtained result until v fails; at that point, *succeed* and return a list with all of the results that had been collected some v = like many v, but if

[Haskell-cafe] [Alternative] change some/many semantics

2011-12-14 Thread Gregory Crosswhite
Hey everyone, This is even more out there than my previous posts, but the following just occurred to me: is it absolutely necessary that some/many have produced the entire list of results before returning? Couldn't we change their semantics so that the list of results is computed and/or

Re: [Haskell-cafe] [Alternative] change some/many semantics

2011-12-14 Thread Antoine Latter
On Wed, Dec 14, 2011 at 9:58 PM, Gregory Crosswhite gcrosswh...@gmail.com wrote: Hey everyone, This is even more out there than my previous posts, but the following just occurred to me:  is it absolutely necessary that some/many have produced the entire list of results before returning?  

Re: [Haskell-cafe] [Alternative] change some/many semantics

2011-12-14 Thread Gregory Crosswhite
On Dec 15, 2011, at 2:13 PM, Antoine Latter wrote: Isn't this what Ross previously suggested? I think his suggested instance methods for Maybe return the elements of the lists incrementally. Yes and no. Yes, his excellent suggestion is one of my favorite ideas for what we should do with

Re: [Haskell-cafe] Splitting off many/some from Alternative

2011-12-14 Thread Richard O'Keefe
Suppose you have a typeclass C with operations x y z w and you decide that there's a real difference, that more things can support x y than can support z w. If you then split C' x y C z w then all existing *uses* of C are happy. But all the existing *instances* of C have to be

Re: [Haskell-cafe] [Alternative] change some/many semantics

2011-12-14 Thread Antoine Latter
On Wed, Dec 14, 2011 at 10:33 PM, Gregory Crosswhite gcrosswh...@gmail.com wrote: On Dec 15, 2011, at 2:13 PM, Antoine Latter wrote: Isn't this what Ross previously suggested? I think his suggested instance methods for Maybe return the elements of the lists incrementally. Yes and no.  

Re: [Haskell-cafe] [Alternative] change some/many semantics

2011-12-14 Thread Brandon Allbery
On Wed, Dec 14, 2011 at 23:49, Antoine Latter aslat...@gmail.com wrote: Or we could not use 'some' and 'many' with list and maybe :-) Yes, yes, we get the message, a wink and a nod is all that's needed to discard the nonsensical notion that types and typeclasses *mean* something. -- brandon

Re: [Haskell-cafe] [Alternative] change some/many semantics

2011-12-14 Thread Antoine Latter
On Wed, Dec 14, 2011 at 10:57 PM, Brandon Allbery allber...@gmail.com wrote: On Wed, Dec 14, 2011 at 23:49, Antoine Latter aslat...@gmail.com wrote: Or we could not use 'some' and 'many' with list and maybe :-) Yes, yes, we get the message, a wink and a nod is all that's needed to discard

Re: [Haskell-cafe] [Alternative] some/many narrative

2011-12-14 Thread Chris Wong
Okay, so how about the following as a user narrative for some and many? ... I was in the middle of writing my own version of Applicative when I stumbled on this intense debate. Here's what I wrote for the documentation: class (Applicative f, Monoid f) = Alternative f where -- | Keep

Re: [Haskell-cafe] [Alternative] change some/many semantics

2011-12-14 Thread Gregory Crosswhite
On Dec 15, 2011, at 3:36 PM, Antoine Latter wrote: That's the interesting thing about type-classes like Alternative and Functor - they mean very little, and are used in widely varying contexts. So... your point is that in the Haskell community we don't tend to care about whether our types,

Re: [Haskell-cafe] [Alternative] some/many narrative

2011-12-14 Thread Gregory Crosswhite
On Dec 15, 2011, at 4:29 PM, Chris Wong wrote: Okay, so how about the following as a user narrative for some and many? ... I was in the middle of writing my own version of Applicative when I stumbled on this intense debate. Here's what I wrote for the documentation: class

Re: [Haskell-cafe] [Alternative] change some/many semantics

2011-12-14 Thread Brandon Allbery
On Thu, Dec 15, 2011 at 02:23, Gregory Crosswhite gcrosswh...@gmail.comwrote: On Dec 15, 2011, at 3:36 PM, Antoine Latter wrote: Even the operators at hand ('many' and 'some') are partial in parsing, but I'm not prepared to throw them out. Okay, I must confess that this straw man has been

Re: [Haskell-cafe] [Alternative] change some/many semantics

2011-12-14 Thread Antoine Latter
On Thu, Dec 15, 2011 at 1:23 AM, Gregory Crosswhite gcrosswh...@gmail.com wrote: On Dec 15, 2011, at 3:36 PM, Antoine Latter wrote: There are a lot of combinators you can build from (|) and empty that go terribly wrong for Maybe and List but are still quite useful. Yes, you *could* do

Re: [Haskell-cafe] [Alternative] change some/many semantics

2011-12-14 Thread Antoine Latter
On Thu, Dec 15, 2011 at 1:40 AM, Antoine Latter aslat...@gmail.com wrote: On Thu, Dec 15, 2011 at 1:23 AM, Gregory Crosswhite gcrosswh...@gmail.com wrote: On Dec 15, 2011, at 3:36 PM, Antoine Latter wrote: There are a lot of combinators you can build from (|) and empty that go terribly