On 17 Dec 2008, at 03:14, Tony Hannan wrote:
Hello,
Can someone describe the advantages and disadvantages of the Yampa
library versus the Reactive library for functional reactive
programming, or point me to a link.
Thanks,
Tony
P.S. It is hard to google for Yampa and Reactive together
On 16 Dec 2008, at 18:40, Darrin Thompson wrote:
\\ \\
\\ \\ \|
\\ \\ ---
\\ \\
// / \
// / \ \|
// / /\\ ---
// / / \\
In the last episode you talk about an entity's update being a function like:
input_state - (output_state, [event])
for some suitably defined types of input state, output state, and event.
Connecting together functions with types like this is exactly what
Reactive does well. You have an event
m...@justinbogner.com wrote:
George Pollard por...@porg.es writes:
On Wed, 2008-12-17 at 02:47 +, Jeff Wheeler wrote:
I love this ASCII-art version. I tried to make a vector version of it in
Photoshop, and I came up with this [1]
and [2].
Any critiques/suggestions? I'm thinking about a
Oops, misread a bit. I thought this was your series of posts, Andrew!
But other than that, my points stand :)
-- ryan
On Wed, Dec 17, 2008 at 12:13 AM, Ryan Ingram ryani.s...@gmail.com wrote:
In the last episode you talk about an entity's update being a function like:
input_state -
2008/12/17 Neal Alexander wqeqwe...@hotmail.com:
m...@justinbogner.com wrote:
George Pollard por...@porg.es writes:
On Wed, 2008-12-17 at 02:47 +, Jeff Wheeler wrote:
I love this ASCII-art version. I tried to make a vector version of it in
Photoshop, and I came up with this [1] and
On Wed, Dec 17, 2008 at 1:10 AM, Thomas Davie tom.da...@gmail.com wrote:
On 16 Dec 2008, at 18:40, Darrin Thompson wrote:
\\ \\
\\ \\ \|
\\ \\ ---
\\ \\
// / \
// /
On 17 Dec 2008, at 09:26, Luke Palmer wrote:
On Wed, Dec 17, 2008 at 1:10 AM, Thomas Davie tom.da...@gmail.com
wrote:
On 16 Dec 2008, at 18:40, Darrin Thompson wrote:
\\ \\
\\ \\ \|
\\ \\ ---
\\ \\
/
I agree on what some people say; I see no point in trying to advertise
elitism.
Let's avoid the same mistake as the linux community made; soon we'll
have an internal flame war about which monad is the best (linux
distribution flame-wars analog), arguing who's the most 31337 haxxor
and so on.
In
It has a military feeling I don't like...
Might look cuddlier with slightly rounded edges. That's what all the
cool kids[1] are doing anyway ;)
[1]: http://www.python.org/
signature.asc
Description: This is a digitally signed message part
___
Hi,
I rewrote a piece of code that used applicative to use instead
monadic style, basically because I wanted to adapt it for my own
purposes but hadn't wrapped my head around applicative yet.
Unfortunately my rewrite had a bug, which I'm still not completely
clear on. (I am guessing it's a
The commented-out signature is incorrect.
Of course, the two functions have the same type sig.
2008/12/17 Thomas Hartman tphya...@gmail.com:
Hi,
I rewrote a piece of code that used applicative to use instead
monadic style, basically because I wanted to adapt it for my own
purposes but
On Wed, 2008-12-17 at 08:42 -0500, Darrin Thompson wrote:
If you play with the angles and vary the stroke thicknesses you'll
probably get a friendlier look, vs. the military/airline look these
have now. The first '' doesn't have to be the same thickness as the
lambda.
Just another $0.02
Hello,
I was playing with the following tree type (attached below) which can
be seen as the reification of an applicative. I wondered if I could
define a QuickCheck Arbitrary instance for it.
The only way I got it to type check however, was to give 'arg' a
monomorphic type (for example: 'Gen
It was pointed out to me that there are other differences besides
monadic versus applicative, and now I'm thinking I misdiagnosed the
bug after all.
sorry for the spam.
2008/12/17 Thomas Hartman tphya...@gmail.com:
The commented-out signature is incorrect.
Of course, the two functions have
I know it's not hard to write, but still:
concat :: String - [String] - String
concat _ [] =
concat _ [x] = x
concat sep x:xs = x ++ sep ++ (concat sep xs)
I've got to be stupid and missing it in the standard libraries. Please
tell me where. Thanks.
Brian
Hoogle is your friend:
Searching for String - [String] - String
Data.List intercalate :: [a] - [[a]] - [a]
base
intercalate xs xss is equivalent to (concat (intersperse xs xss)). It
inserts the...
Regards,
Max
On Wed, Dec 17, 2008 at 10:36 AM, Brian Hurt bh...@spnz.org wrote:
I know
On Wed, Dec 17, 2008 at 7:36 PM, Brian Hurt bh...@spnz.org wrote:
I know it's not hard to write, but still:
concat :: String - [String] - String
concat _ [] =
concat _ [x] = x
concat sep x:xs = x ++ sep ++ (concat sep xs)
I've got to be stupid and missing it in the standard libraries.
Am Mittwoch, 17. Dezember 2008 19:36 schrieb Brian Hurt:
I know it's not hard to write, but still:
concat :: String - [String] - String
concat _ [] =
concat _ [x] = x
concat sep x:xs = x ++ sep ++ (concat sep xs)
I've got to be stupid and missing it in the standard libraries. Please
Am Mittwoch, 17. Dezember 2008 19:36 schrieb Brian Hurt:
I know it's not hard to write, but still:
concat :: String - [String] - String
concat _ [] =
concat _ [x] = x
concat sep x:xs = x ++ sep ++ (concat sep xs)
I've got to be stupid and missing it in the standard libraries. Please
On Wed, 17 Dec 2008, Max Rabkin wrote:
Hoogle is your friend:
Searching for String - [String] - String
Data.List intercalate :: [a] - [[a]] - [a]
base
intercalate xs xss is equivalent to (concat (intersperse xs xss)). It
inserts the...
Thanks.
Brian
On Tue, Dec 16, 2008 at 9:47 PM, Jeff Wheeler j...@nokrev.com wrote:
[1]: http://media.nokrev.com/junk/haskell-logos/logo1.png
[2]: http://media.nokrev.com/junk/haskell-logos/logo2.png
Oops, I meant to post on list.
If you play with the angles and vary the stroke thicknesses you'll
probably
2008/12/17 wman 666w...@gmail.com:
2008/12/17 Tristan Seligmann mithra...@mithrandi.net
I really don't think that including a visual pun on the (=)
operator translates to Haskell, it's all about monads; you're only
likely to recognise the pun after you already know about monads anyway.
Gwern Branwen wrote:
On Mon, Dec 15, 2008 at 9:00 AM, Simon Marlow wrote:
This particular example illustrates a bug in 6.10.1 that we've since fixed:
http://hackage.haskell.org/trac/ghc/ticket/2783
OK, that's good...
However in general you can still write expressions that don't allocate
Any critiques/suggestions? I'm thinking about a second version that
more
obviously defines the second '' with color from the bottom-right part
of the
lambda.
Jeff Wheeler
[1]: http://media.nokrev.com/junk/haskell-logos/logo1.png
[2]:
Hi,
I have a strange problem with interact on OS X (ghc 6.10.1). It
seems to garble stdin.
I have some code here http://hpaste.org/13135#a2 , for testing purpose:
*Main main
1
1.0
2
1.5
3
2.0
*Main setNonBlockingFD: invalid argument (Bad file descriptor)
11:40:45 ~/Desktop
(I hit
2008/12/17 Tristan Seligmann mithra...@mithrandi.net
I really don't think that including a visual pun on the (=)
operator translates to Haskell, it's all about monads; you're only
likely to recognise the pun after you already know about monads anyway.
True, true, and who cares about folks
Darrin Thompson wrote:
On Tue, Dec 16, 2008 at 9:47 PM, Jeff Wheeler j...@nokrev.com wrote:
[1]: http://media.nokrev.com/junk/haskell-logos/logo1.png
[2]: http://media.nokrev.com/junk/haskell-logos/logo2.png
Oops, I meant to post on list.
If you play with the angles and vary the stroke
Hello,
I was surprised to discover that `cabal-install' -- a popular utility
for installing Hackage packages -- cannot work with HTTP proxies.
Despite all the necessary code linked in.
`cabal update' command returns HTTP 407 (Proxy Authentication Required)
error. The problem is explained
I'll have an attempt at addressing the questions, although I freely
admit that I'm not as into Reactive as Conal is yet, so he may come
and correct me in a minute.
On 17 Dec 2008, at 15:29, Henrik Nilsson wrote:
I have not used Reactive as such, but I did use Classic FRP
extensively, and
On Wed, 2008-12-17 at 21:46 +0100, Martijn van Steenbergen wrote:
If you play with the angles and vary the stroke thicknesses you'll
probably get a friendlier look, vs. the military/airline look these
have now. The first '' doesn't have to be the same thickness as the
lambda.
If you
* Andrew Coppin andrewcop...@btinternet.com [2008-12-16 20:23:50 +]:
I think the accusation is more that Haskell tries to be cryptic and
arcane *on purpose*, just to confuse people.
Sure, there are many concepts in Haskell which just aren't found
anywhere else. But monads?
Thomas Davie wrote:
Advantages of Yampa:
• Just at the moment, slightly more polished.
• (maybe) harder to introduce space/time leaks.
Advantages of Reactive:
• More functional programming like -- doesn't require you to use
arrows everywhere, and supports a nice applicative style.
• In
I must agree, the proposal pure . lazy . fun is quite funny and
informative at the same time.
It will hopefully also supply people with something to laugh about
when they have learned enough. :)
While being true, it's also subtle.
/Gf
On Wed, Dec 17, 2008 at 11:48 AM, Ketil Malde
* Thomas Davie tom.da...@gmail.com [2008-12-17 09:10:55 +0100]:
Oh please no, please don't let the logo be something that says Haskell,
it's all about monads.
I don't see anyone complaining about the python logo being something
that says Python, it's all about snakes (Python is named after
Type wildcards that allow partially specifying types, e.g:
f :: _ - String
f x = show x
This will instruct the type-inferrer to fill out the wild-card part only
(e.g: Show a = a).
Also see
http://hackage.haskell.org/trac/haskell-prime/wiki/PartialTypeAnnotations
Cheers,
Andres
--
Hello Simon,
Wednesday, December 17, 2008, 4:05:48 PM, you wrote:
I'm afraid the underlying problem is one that GHC has always had - that we
can't preempt threads that aren't allocating. It's not easily fixable, we
would have to inject dummy heap checks into every non-allocating loop,
which
Gianfranco Alongi gianfranco.alo...@gmail.com writes:
I agree on what some people say; I see no point in trying to advertise
elitism.
For this reason, my favorite subtitle is pure . lazy . fun. Nice
and friendly, with some doulbe meanings for the cognoscenti. (I'm
sorry, but I can't bring
Jonathan Cast wrote:
{-# LANGUAGE ExistentialQuantification #-}
Hmm, now if this was Perl or something, that would be
HiddenTypeVariables or something. Much less fearsom-sounding.
No, it's cute. Repulsively so.
Right. So giving things meaningful names is repulsive? No wonder
Jeff Wheeler wrote:
[1]: http://media.nokrev.com/junk/haskell-logos/logo1.png
[2]: http://media.nokrev.com/junk/haskell-logos/logo2.png
As others have said:
- I very much like the concept of this. It's clean, simple, elegant.
Like Haskell!
- Yeah, it does look a tad harsh. Maybe curvy
andrewcoppin:
Jonathan Cast wrote:
{-# LANGUAGE ExistentialQuantification #-}
Hmm, now if this was Perl or something, that would be
HiddenTypeVariables or something. Much less fearsom-sounding.
No, it's cute. Repulsively so.
Right. So giving things meaningful names is
On Wed, 2008-12-17 at 21:31 +, Andrew Coppin wrote:
Jonathan Cast wrote:
{-# LANGUAGE ExistentialQuantification #-}
Hmm, now if this was Perl or something, that would be
HiddenTypeVariables or something. Much less fearsom-sounding.
No, it's cute. Repulsively so.
Might be interesting to try angling the ends of the stems to look
something more like the guillemot in [1]. I might try this in Gimp but
I'm no designer :P
Here is what I got; I think I chose the wrong yellow :) Based it on the
font Diavlo, which is free.
attachment: hasklogo.png
Henrik Nilsson wrote:
Hi,
Thoughts, people?
Functional Reactive Programming (FRP) tends to, in principle, work
pretty well for this kind of application.
So I keep hearing. Unfortunately, discovering what FRP actually *means*
is more or less impossible. I can't find a precise definition of
Ryan Ingram wrote:
Oops, misread a bit. I thought this was your series of posts, Andrew!
But other than that, my points stand :)
Don't you just *hate* it when you reply, and then later realise you
missed some small but important detail? ;-)
As for your actual content... I will have to
Darrin Thompson wrote:
What I like about the design is anybody can draw it in 5 strokes and
it's unmistakably what it is. Sharpie, pencil, even spray paint all
work. You could make your own hat or t-shirt and wear it to an
important event, or a wedding. You could tag a rival cube farm wall to
On Thu, 2008-12-18 at 09:55 +1300, George Pollard wrote:
Might be interesting to try angling the ends of the stems to look
something more like the guillemot in [1]. I might try this in Gimp but
I'm no designer :P
Unfortunately, neither am I. :P
The curvey version (3rd and 4th images on the
Am Mittwoch, 17. Dezember 2008 22:35 schrieb Jonathan Cast:
On Wed, 2008-12-17 at 21:31 +, Andrew Coppin wrote:
In other words, you want to keep Haskell elitist.
I think there's value in having elites around.
Yes, but not if they're elitist :-)
Seriously, I hope you're deliberately
Gianfranco Alongi wrote:
That's the kind of mentality I am talking about. The we are better
than you mentality, should stay with the Java and .NET people. If you
have this urge of feeling superior and believe haskell-hacking is some
kind of achievement. .
Haskell is a tool like any other,
On Wed, Dec 17, 2008 at 09:34:15PM +, Andrew Coppin wrote:
- I very much like the concept of this. It's clean, simple, elegant.
Like Haskell!
But Haskell isn't Clean.
(SCNR)
Ciao,
Kili
___
Haskell-Cafe mailing list
It's absolutely possible. However, I think you do need to enumerate
the possible types somehow.
Here's an example that demonstrates the idea:
{-# LANGUAGE ScopedTypeVariables #-}
sizedTree :: forall a. Arbitrary a = Int - Gen (Tree a)
sizedTree n | n = 0 = liftM Val arbitrary
sizedTree n =
Tristan Seligmann wrote:
* Andrew Coppin andrewcop...@btinternet.com [2008-12-16 20:23:50 +]:
Sure, there are many concepts in Haskell which just aren't found
anywhere else. But monads? Catamorphisms? Coroutines? Couldn't we think
up some less intimidating terminology?
The
The current logo is basically a circle plus a whole heap of mathematical
symbols. That doesn't really say hey, this stuff is fun, come on in!
It says this is for maths nerds only. (Which isn't actually true, in
my opinion. But the current logo gives that impression.) I'd like our
new
On Wed, 2008-12-17 at 23:00 +0100, Daniel Fischer wrote:
Am Mittwoch, 17. Dezember 2008 22:35 schrieb Jonathan Cast:
On Wed, 2008-12-17 at 21:31 +, Andrew Coppin wrote:
In other words, you want to keep Haskell elitist.
I think there's value in having elites around.
Yes, but not if
2008/12/17 George Pollard por...@porg.es:
Might be interesting to try angling the ends of the stems to look
something more like the guillemot in [1]. I might try this in Gimp but
I'm no designer :P
Here is what I got; I think I chose the wrong yellow :) Based it on the
font Diavlo, which is
And who knows category theory? Almost nobody. If you insist on naming stuff
after things that nobody will have heard of and which sound highly
technical, you're going to seriously limit your potential audience.
If you insist on naming stuff ad hoc, you're going to seriously limit
the appeal of
Andrew Coppin writes:
And who knows category theory? Almost nobody. If you insist on naming
stuff after things that nobody will have heard of and which sound highly
technical, you're going to seriously limit your potential audience.
Speak for yourself, not for almost everybody, or you will
[Names removed as a courtesy]
True, true, and who cares about folks afraid of unknown operators
which
might do wonderfull stuff ;-)))
That's the kind of mentality I am talking about. The we are better
than you mentality, should stay with the Java and .NET people.
The subject is a LOGO
To be eligible, you will need to upload them. Entries not displayed
here won't be eligible.
Do the images really have to be uploaded to the wiki or are external
links on the wiki page ok?
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
On 18 Dec 2008, at 7:36 am, Brian Hurt wrote:
I know it's not hard to write, but still:
concat :: String - [String] - String
concat _ [] =
concat _ [x] = x
concat sep x:xs = x ++ sep ++ (concat sep xs)
I've got to be stupid and missing it in the standard libraries.
You want concat
Hi Andrew,
Andrew Coppin wrote:
Technical terms are only
useful to those who already know what they mean, after all.
All terms, whether technical or not, are only useful to those who
already know what they mean. So if you want to learn new concepts, then
you have to learn new terms. All
Jeff Wheeler wrote:
On Dec 16, 2008, at 10:08 PM, Ryan Grant wrote:
nice.
the first is better.
in the second, i don't even see the lambda.
Thanks the feedback. I just uploaded a new version [1] that is
icon-sized, although the font used is Helvetica Neue, which is non-free.
I have no free
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA512
On Wed, Dec 17, 2008 at 8:09 PM, Neal Alexander wrote:
To be eligible, you will need to upload them. Entries not displayed here
won't be eligible.
Do the images really have to be uploaded to the wiki or are external links
on the wiki page
wqeqweuqy:
To be eligible, you will need to upload them. Entries not displayed
here won't be eligible.
Do the images really have to be uploaded to the wiki or are external
links on the wiki page ok?
External is fine. Just make sure they're visible on the page.
Thanks!
- Don
On 2008 Dec 17, at 16:39, Andrew Coppin wrote:
So I keep hearing. Unfortunately, discovering what FRP actually
*means* is more or less impossible. I can't find a precise
definition of the term anywhere. There are a small handful
That would be because it's still very much an open area of
On 18 Dec 2008, at 11:26 am, Andrew Coppin wrote:
(Also, coroutines? Seriously? That's hardly an obscure term in
programming circles.)
Well now, I'm curios. I've been writing computer programs since I
was 9 years old. I hold a diploma *and* an honours degree in
computer science. And I
I'm learning QuickCheck, and I'm puzzled by the behavior I'm seeing
with conditional properties. After writing and loading a simple qsort
function from a separate file, I typed these into ghci:
let prop_minimum xs = (length xs 0) == head (qsort xs) == minimum xs
where types = xs ::
On Wed, Dec 17, 2008 at 11:41 PM, Belka lambda-be...@yandex.ru wrote:
Thanks for the info!
These days, however, web services seem to be moving towards a RESTful
model with a JSON layer and there are plenty of JSON libraries on
hackage, which you could just throw over the fastCGI bindings.
Hi *^o^*,
With the following rewrite rules:
lengthOP :: (Num a, Ord a) ⇒ Bool → (a → a → Bool) → [b] → a → Bool
lengthOP v (⊜) [] n = 0 ⊜ n
lengthOP v (⊜) xxs n = co xxs 0
where
co [] c = c ⊜ n
co (_:xs) c | n c = co xs (c+1)
| otherwise = v
lenEQ = lengthOP
69 matches
Mail list logo