Lenses for nested sum types e.g. Either.
On 03/10/2013 6:08 PM, "Simon Peyton-Jones" wrote:
> (I sent this to ‘libraries’ but Kim-Ee suggested adding Café, where so
> many smart people hang out.)
>
> ** **
>
> Friends
>
> ** **
>
> Some of you will know that I’ve promised to give a talk
These questions are exactly what Control.Lens answers.
On 04/09/2013 12:50 PM, "Mario Blažević" wrote:
> On 09/02/13 06:53, Nicolas Trangez wrote:
>
>> # Redirected to haskell-cafe
>>
>> On Sun, 2013-09-01 at 14:58 +0400, Artyom Kazak wrote:
>>
>>> Would this be an appropriate place to propose a
class BinaryFunctor f where
bimap :: (a -> c) -> (b -> d) -> f a b -> f c d
mapFst = (`bimap id`)
mapSnd = bimap id
On 31/05/2013 12:16 PM, "Shachaf Ben-Kiki" wrote:
> On Thu, May 30, 2013 at 7:12 PM, Shachaf Ben-Kiki
> wrote:
> > One generalization of them is to lenses. For example `lens` h
et to the
goal. So feel free to send me an email or I am on IRC (dibblego),
lurking around the #haskell channel or privmsg if you like. Personally,
I would love see more haskell submissions :)
LambdaJam2013 call for papers:
http://www.yowconference.com.au/lambdajam/Call.html
--
Tony Morris
ion that uses the argument?"
-- fmap const -- type-checks, but ignores the argument, unlike e.g.
QuickCheck which uses CoArbitrary to "perturb" that result with the
argument.
support libraries
instance Functor Op where
fmap f (DoubleOp g) =
DoubleOp (f . g)
fmap f
" away the argument.
I hope I have phrased this in a way to make the point. I found it a bit
difficult to articulate and I do wonder (hope!) that others encounter
similar scenarios. Thanks for any tips!
--
Tony Morris
http://tmorris.net/
_
_
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
Yeah that looks useful indeed. I am surprised there isn't a DIET on hackage.
On Tue, Oct 30, 2012 at 3:55 AM, Stephen Tetley wrote:
> Are Martin Erwig's "diets" anything close?
>
> http://web.engr.oregonstate.edu/~erwig/diet/
>
> On 29 October 2012 04:48, To
18:36, Roman Cheplyaka wrote:
> If you searched hackage, you'd find
> http://hackage.haskell.org/package/SegmentTree
>
> Roman
>
> * Tony Morris [2012-10-29 15:38:07+1000]
>> Er, oops.
>>
>> ...can be implemented as:
>> \a rs -> let s = Set.fromList (rs
Er, oops.
...can be implemented as:
\a rs -> let s = Set.fromList (rs >>= \(a, b) -> [a..b]) in a `member` s
Something like that!
On Mon, Oct 29, 2012 at 2:48 PM, Tony Morris wrote:
> Hi,
> I was wondering if anyone knows of a package implementing a fast lookup
> for
e seems like a more
appropriate data structure to store the ranges. Does such a library exist?
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
ful when I need to
> map a function over the list before composing. Does this function, or the
> more general "foldr fmap id", defined in a library anywhere? I googled and
> hoogled, but no luck so far.
>
> Thanks,
> Greg
>
>
>
> __
fe mailing list
>> Haskell-Cafe@haskell.org
>> http://www.haskell.org/mailman/listinfo/haskell-cafe
> ___
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
ages/archive/TypeCompose/0.9.1/doc/html/src/Control-Compose.html#Flip
I was wondering if there are any well-developed techniques to deal with
this? Of course, I could just write my own Flip with the appropriate
kinds and be done with it. Maybe there is a more suitable way?
--
Tony Morris
http:/
t;
>
> ___
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
askell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
g list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
data-lens has something similar (Tensor):
http://hackage.haskell.org/packages/archive/data-lens/2.10.0/doc/html/Control-Category-Product.html
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
Is there a library to traverse a source AST keeping state?
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
On 01/03/12 14:40, wren ng thornton wrote:
> Of course, you can simplify the implementation by:
>
> inter f xs = zipWith f xs (tail xs)
inter f = zipWith f <*> tail
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing li
>
> ___
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
It is not clear to me exactly what you are asking, so shot in the dark:
injection or surjection?
- --
Tony Morris
http
tinfo/haskell-cafe
?
http://hackage.haskell.org/packages/archive/newtype/0.2/doc/html/Control-Newtype.html
?
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
On 24/12/11 18:41, Gregory Crosswhite wrote:
> On Dec 24, 2011, at 6:22 PM, Tony Morris wrote:
>
>> Wait what?
>>
>> I find it intriguing, helpful, provocative and potentially helpful toward
>> the common goal of helping others. I am interested in further commenta
kell-cafe
Wait what?
I find it intriguing, helpful, provocative and potentially helpful
toward the common goal of helping others. I am interested in further
commentary. I'm not scared and you shouldn't be either.
--
Tony Morris
http://tmorris.net/
__
migroupT f a = SemigroupT (a -> a -> f a)
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
ng, though.
>
> Any thoughts?
>
> Thanks,
> Dan
>
>
>
>
> ___
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
- --
Tony Morris
http://tmo
f)
but not
Applicative f => Applicative (StateT s f)
- --
Tony Morris
http://tmorris.net/
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iQEcBAEBAgAGBQJOWhtaAAoJEPxHMY3rBz0Pa3oIAMrqoyv4DW39VjIXwzV3/4Ir
W5s0+fdo
html?eventId=3552
PS: we have a significant FP community here in Brisbane with nearly 250
members http://bfpg.org/
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
ong in assuming Data.Time is pretty useless?
If I am right, and there is no alternative, I see no option but to
take an excursion into writing my own. Ultimately, I am just trying to
avoid this. Tips welcome.
- --
Tony Morris
http://tmorris.net/
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.
sort of chunking the
enumeratee or something? I was unable to find any good general hints
in any of the hackage libraries.
Thanks for any pointers.
- --
Tony Morris
http://tmorris.net/
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http
cidentally come to believe that.
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
On 24/05/11 22:41, Johannes Waldmann wrote:
> Then tell me, why does calculating the length of a (Haskell)
> list has O(n) complexity.
Infiniticity aside, tail would become O(n) if you store a length with
each cons cell.
--
Tony Morris
http://tmorr
>
> Okay, I'm done now. :-)
>
> Cheers,
> Greg
>
> ___
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
--
Tony Morris
http://tmorris.net/
___
ing.
http://github.com/scalaz/scalaz/
I have been teaching functional programming for quite a while, both in
universities and outside of academia, and I am of the opinion that
Haskell's suitability in first place has no close second place. I wonder
why I am wrong, but this post (and previous) is ha
overhead of laziness is taken into account.
This is not what laziness gives us. Rather, it gives us terminating
programs that would otherwise not terminate.
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@hask
niser of Brisbane Functional Programming Group with
nearly 200 members. I have not seen anywhere near 50% post here.
- --
Tony Morris
http://tmorris.net/
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iEYEARECAAYFA
e many
pointed functors that are not monads. The paper, Applicative
Programming with Effects (McBride, Paterson) lists a couple.
- --
Tony Morris
http://tmorris.net/
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozd
omeone else's brain is molded into an appropriate shape to reveal an
answer!
- --
Tony Morris
http://tmorris.net/
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iEYEARECAAYFAk0n0lwACgkQmnpgrYe6r61
codeMarker then xs else s
readBOMFile ::
FilePath
-> IO String
readBOMFile p =
dropBOM `fmap` readFile p
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
obligation around, what could possibly be the
> downside of adding a puny Cofunctor class to the base library?
>
>
>
> ___ Haskell-Cafe
> mailing list Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell
have group write on that file for some reason.
I'd appreciate some comments on this issue. Thanks.
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
Does there exist a package for convenient load-testing against a
website? e.g. making lots of HTTP requests against a server, including
timing, and collecting the results?
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe
some packages failed to install:
xmonad-contrib-0.9.1 failed during the building phase. The exception was:
ExitFailure 1
- --
Tony Morris
http://tmorris.net/
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozi
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 21/11/10 04:43, Ross Paterson wrote:
> On Sat, Nov 20, 2010 at 10:58:44PM +1000, Tony Morris wrote:
>> I have installed mtl-1.1.1.0 so that xmonad-contrib-0.9.1 would
>> compile with GHC 6.12.1.
>> http:
packages failed to install:
category-extras-0.53.5 failed during the building phase. The exception
was:
ExitFailure 1
- --
Tony Morris
http://tmorris.net/
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
download
http://myhackage/packages/package/MyPackage-0.0.1.tar.gz : ErrorMisc
"Unsucessful HTTP code: 404"
Why is cabal even making this request?
Why is it not making the request to
http://myhackage/packages/MyPackage/0.0.1/MyPackage-0.0.1.tar.gz
Thanks for any tips.
--
Tony M
been coined to (and probably actually does) sound more commerce
> friendly. To countermand such an effect, we can point out that most
> libraries have non-copyleft licenses and that there are a number of
> companies who have done and still do a lot to support and advance Haskell.
>
&
uest equivalent to the following curl:
curl --basic -u "user:pass" -H "Accept: application/xml" -H "Content-type:
application/xml" "https://host/path";
It seems with Network.Browser I cannot send headers, but with Network.HTTP I
cannot see how to send the Basi
on how I could use that extension?
>
>
Here is an example:
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
class C a where
c :: a -> Int
data G = G
instance C G where
c _ = 7
newtype H = H G deriving C
--
Tony Morris
http://tmorris.net/
_
t
> such a seemingly trivial problem seems so hard to do.
>
> I am wondering if I am missing something really, really obvious.
>
> Any suggestions? Or is there perhaps a more Haskelly way to place type
> constraints on a more generic type?
>
> Kevin
> __
I wonder if the original site is recoverable from this, but I suspect there
are some missing.
On Fri, Aug 6, 2010 at 2:33 PM, Don Stewart wrote:
> ivan.miljenovic:
> > On 6 August 2010 14:12, Tony Morris wrote:
> > > Hello, does anyone happen to have the lambdacats page ca
Hello, does anyone happen to have the lambdacats page cached? The domain (
arcanux.org) and server have disappeared and the wayback machine doesn't
have the images.
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell
gah you're right, @mtl had confuzzled me.
Well that changes things then, thanks.
Ross Paterson wrote:
> On Sat, Jul 31, 2010 at 10:56:31PM +1000, Tony Morris wrote:
>
>> -- Suppose some data type
>> newtype Inter a = Inter (Int -> a)
>>
>> -- and
ather impractical
instance (Copointed m, Integral a) => Ints (InterT m a) where
ints (InterT a) = ints (copoint a)
{-
So it seems that for some type-classes it is possible to implement
for both the data type and the transformer, but not all type-classes.
Is there a general approach t
_
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
(f a) -> f a
>>
>> This would be a great idea, for the sake of logic, first (a monad
>> which is not a functor doesn't make sense), and also to eliminate
>> redudancy (fmap = liftM, ap = (<*>), etc.)
>>
>> 2010/5/20 Tony Morris > <mailto:tonymor...@
Ivan Miljenovic wrote:
> On 20 May 2010 14:42, Tony Morris wrote:
>
>> We all know that "class (Functor f) => Monad f" is preferable but its
>> absence is a historical mistake. We've all probably tried once:
>>
>> instance (Functor f) => M
me to retrospectively apply such a notion?
Ideally something like this would be handy if it could somehow be
retrospectively applied:
Monad <- Applicative <- Pointed <- Functor
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
there is one on
> Hackage without any instances:
> http://hackage.haskell.org/package/algebra
>
I do too. I also wish there was an associative: class F f where k :: f a
-> f a -> f a without the zero component.
--
Tony Morris
http://tmorris.net/
as pure, lazy programming to run on the JVM
in Java and Scala programming languages.
I expect others have forethought and perhaps even experimented with such
a language. Are there any dangers to be wary of that undo the entire
endeavour?
Thanks for any insights.
--
Tony Morris
http://tmorris.net
Ivan Miljenovic wrote:
> 2010/1/27 Tony Morris :
>
>> It might be more obvious by giving:
>>
>> fromMaybe :: a -> (a -> x, x) -> x
>>
>
> I actually found this more confusing, and am not sure of its validity:
> should that be "May
ensionally) possible total functions with
>>> that type, as far as I can see :)
>>>
>> Is the other one... const?
>>
>
> As far as I can tell, yes.
>
>
--
Tony Morris
http://tmorris.net/
___
Haskell
____
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
rise to me that C++ has the most
> keywords. But then, if I were to add AMOS Professional, that had well
> over 800 keywords at the last count...
>
> _______
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
Java has 53 reserved words.
-
Gwern Branwen wrote:
> On Wed, Jan 6, 2010 at 7:23 PM, Tony Morris wrote:
>
>> ghc -e "import Control.Monad; forM [[1,2,3]] reverse"
>>
>
> As of 6.10.2, the bug whereby the GHC API lets you use functions from
> anywhere just by naming them (Java-st
Can I import a module when using ghc -e?
e.g. ghc -e "import Control.Monad; forM [[1,2,3]] reverse"
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
Can (liftM join .) . mapM be improved?
(Monad m) => (a -> m [b]) -> [a] -> m [b]
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
Adding (a_remove_whitespace,v_1) as a parser option when running solves
it. Silly me.
Tony Morris wrote:
> I am trying to parse XML using HXT following
> http://www.haskell.org/haskellwiki/HXT/Conversion_of_Haskell_data_from/to_XML
>
> Here is my XML file (way.xml):
>
> ver
pElem "tag" (xpWrap (uncurry Tag, k &&& v) (xpPair (xpAttr
"k" xpText) (xpAttr "v" xpText)))
When I run, I get the following result:
Main> run = runX (xunpickleDocument xpWay [] "way.xml")
[Way {tags = []}]
Why is the tags list empty ins
then in my own humble opinion, snapping back with "\"Are you sure
this isn't a user error?\" is not a particularly nice response" is not a
particularly nice response.
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
o ambiguous code?
>
> Thanks,
>
> Martijn.
> ___
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
--
Tony Morris
http://tmorris.net/
___
I don't want to have to upload every time I make a minor change as I am
working. Surely there is an easier way.
Martijn van Steenbergen wrote:
> Tony Morris wrote:
>> I have two projects that I intend to put on hackage soon. One depends
>> on the other. I have "cabaled&
I have two projects that I intend to put on hackage soon. One depends
on the other. I have "cabaled" both. I am wondering how others work
with this kind of set up where changes are made to both libraries as
they work.
--
Tony Morris
http://t
g list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
>
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
to understand stuff like that
> might be to go thorugh it and convert it to use parens instead of $,
> full application instead of ., and so on.)
>
> cjs
>
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
John A. De Goes wrote:
> write them yourself (at a cost of several to dozens of man years),
Is that right?
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/hask
> - a community
>
> - good library
>
> - a package manager
>
> Thoughts?
> --
> Regards,
> Casey
> ___
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mail
t append
>
> but with less efficiency. Or am I wrong?
>
> Thanks
>
>Dusan
>
> ___
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
mapapp = ((++) .) . map
ding the obvious (<+) for
> 'flip mappend' which is sometimes useful.
>
>
> I actually think this proposal is pretty excellent.
I happen to agree.
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
Is there a canonical function for traversing the spine of a list?
I could use e.g. (seq . length) but this feels dirty, so I have foldl'
(const . const $ ()) () which still doesn't feel right. What's the
typical means of doing this?
--
Tony Morris
htt
Just guessing. How do you know it's an accident?
Richard O'Keefe wrote:
>
> On 15 Jun 2009, at 4:26 pm, Tony Morris wrote:
>
>> Prelude Data.List> nub . concat $ [[2, 3], [1, 2], [2, 3, 4], [1, 2, 3]]
>> [2,3,1,4]
>
> In this particular case. But that
to use it something like
>
> case all_choices sets of
> [] -> there are no such choices
> (first_choice:_) -> first_choice is one such choice
>
> For inputs like [[1,2],[2,1],[1]] there is of course no such
> choice function.
>
>
> _
> Regards,
> Casey
> ___
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
>
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe
to the functions that operate on the
> structure, ie. the lookups, inserts, delete etc.
>
> Günther
>
> ___
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
--
gt; is useful as an error monad:
>
> instance Monad (Except e) where
> (OK x) >>= f = f x
> Failed e >>= _ = Failed e
> return = OK
>
> This obeys all the monad laws.
>
> Thanks,
>
> Neil.
> _
_
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
I'm sure you could, but then ap /= (<*>).
This seems related to a question that I once as
l.org/mailman/listinfo/haskell-cafe
>
Hi Michael,
You'll want the Data.Maybe.listToMaybe and Data.Maybe.maybeToList functions.
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
__
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
Are you sure it supports
(>>) :: m a -> m b -> m b
and not
mplus :: m a -> m a -> m a ?
--
Tony Morris
http://tmorris.net/
__
________
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
--
Tony Morris
http://tmorris.net/
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe
ce if it ever
> "gets in contact with" the top level it will be executed. But the
> fact that IO types also behave as values makes Haskell a very
> powerful imperative language.
>
> On Mon, Feb 9, 2009 at 11:14 AM, Tony Morris
> wrote: You're right - my statement is ina
ng, but one
> must remember that IO is abstract.
>
> -- Lennart
>
> On Mon, Feb 9, 2009 at 10:26 AM, Tony Morris
> wrote: Gregg Reynolds wrote:
>>>> The point being that the metalanguage commonly used to
>>>> describe IO in Haskell contains a logical cont
has the type signature of a value.
getChar has the signature RealWorld -> (RealWorld, Char)
- --
Tony Morris
http://tmorris.net/
*
* Anteromedial Heterotopic Osseous Impingement Syndrome *
to get what I want)
>
> Thank you for your answers.
>
> Greetz TKM
>
> --
>
>
> ___ Haskell-Cafe
> mailing list Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
- --
Tony
`mappend` e2))
(Z (Left e1)) <*> (Z (Right _)) = Z (Left e1)
(Z (Right _)) <*> (Z (Left e2)) = Z (Left e2)
(Z (Right f)) <*> (Z (Right a)) = Z (Right (f a))
instance (Monoid e) => Monad (Z e) where
return = pure
(Z e) >>= f = error "todo" -- ?
- -
>
>
> --
>
> _______
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
- --
Tony Morris
ht
gt;
> I cannot figure out what is the (>>) and (>>=) way of this.
>
> Thanks. ___
> Haskell-Cafe mailing list Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
>
>
getArgs >>= (\a -&g
C++ templates, implemented via run-time
>>> dictionaries and other modules may define new instances
>>>
>
>> Personally, I have no clue how C++ templates work [yet]. (As in, I'm
>
> they are known as generics in java/c#
>
>
Except they're not. Java Generics are so
@check \x -> (nub . nub) x == nub x -- is nub idempotent?
OK, passed 500 tests.
- --
Tony Morris
http://tmorris.net/
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFIcS9LmnpgrYe6r60RAiDOAKCJlDaqNd5ssgxr
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
apt-get install zlib1g-dev
Tony Morris
http://tmorris.net/
Real-world problems are simply degenerate cases of pure mathematical
problems.
Thomas Hartman wrote:
> Tried to install
>
> http://hackage.haskell.org/cgi-bin/hackage-script
038) against GHC 6.8.2. Am I hitting
this bug? If so, can I get around it to get a working lambdabot? Thanks
for any tips.
- --
Tony Morris
http://tmorris.net/
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.
he error?), or if
the current scenario is acceptable.
I'm seeking comments about this, thanks!
- --
Tony Morris
http://tmorris.net/
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFIGjO6mnpgrYe6r60RAtohAK
1 - 100 of 126 matches
Mail list logo