Send Beginners mailing list submissions to
[email protected]
To subscribe or unsubscribe via the World Wide Web, visit
http://www.haskell.org/mailman/listinfo/beginners
or, via email, send a message with subject or body 'help' to
[email protected]
You can reach the person managing the list at
[email protected]
When replying, please edit your Subject line so it is more specific
than "Re: Contents of Beginners digest..."
Today's Topics:
1. Re: FRP (Heinrich Apfelmus)
2. Re: FRP (Miguel Negrao)
3. Re: FRP (Darren Grant)
4. Re: FRP (Kim-Ee Yeoh)
5. an observation about Haskell vs. Python (Dennis Raddle)
6. Re: an observation about Haskell vs. Python (David Hinkes)
7. Re: an observation about Haskell vs. Python (Ertugrul S?ylemez)
----------------------------------------------------------------------
Message: 1
Date: Wed, 19 Sep 2012 17:18:28 +0200
From: Heinrich Apfelmus <[email protected]>
Subject: Re: [Haskell-beginners] FRP
To: [email protected]
Message-ID: <[email protected]>
Content-Type: text/plain; charset=UTF-8; format=flowed
Darren Grant wrote:
> I have found Reactive Banana to be the most accessible so far. Still
> struggling with some of the language syntax though.
Are you struggling with the Haskell syntax, or with FRP in general or
with any particular example?
Best regards,
Heinrich Apfelmus
--
http://apfelmus.nfshost.com
------------------------------
Message: 2
Date: Wed, 19 Sep 2012 18:32:10 +0100
From: Miguel Negrao <[email protected]>
Subject: Re: [Haskell-beginners] FRP
To: [email protected]
Message-ID: <[email protected]>
Content-Type: text/plain; charset=iso-8859-1
A 19/09/2012, ?s 03:35, Ertugrul S?ylemez escreveu:
> Netwire follows a more algebraic path and drops the classic notion. The
> line between signals and events is blurred. It's a bit more difficult
> to understand, but is more expressive and concise. Also it's pretty
> much time-leak-free. The library is designed to be very elegant while
> preserving non-FRP performance to a high degree.
>
> (To be fair, I'm the author of Netwire.) =)
Having recently looked a bit on Yampa, what are the main differences between
Yampa and Netwire ?
best,
Miguel Negr?o
------------------------------
Message: 3
Date: Wed, 19 Sep 2012 12:09:05 -0700
From: Darren Grant <[email protected]>
Subject: Re: [Haskell-beginners] FRP
To: Heinrich Apfelmus <[email protected]>
Cc: [email protected]
Message-ID:
<CA+jD6Sg+iumDkoA176eyrP7UhgbU__Vm9rMYjeR3nyp=7e+...@mail.gmail.com>
Content-Type: text/plain; charset=ISO-8859-1
Primarily Haskell syntax.
On Wed, Sep 19, 2012 at 8:18 AM, Heinrich Apfelmus
<[email protected]> wrote:
> Darren Grant wrote:
>>
>> I have found Reactive Banana to be the most accessible so far. Still
>> struggling with some of the language syntax though.
>
>
> Are you struggling with the Haskell syntax, or with FRP in general or with
> any particular example?
>
>
>
> Best regards,
> Heinrich Apfelmus
>
> --
> http://apfelmus.nfshost.com
>
>
> _______________________________________________
> Beginners mailing list
> [email protected]
> http://www.haskell.org/mailman/listinfo/beginners
------------------------------
Message: 4
Date: Thu, 20 Sep 2012 02:32:44 +0700
From: Kim-Ee Yeoh <[email protected]>
Subject: Re: [Haskell-beginners] FRP
To: Darren Grant <[email protected]>
Cc: Heinrich Apfelmus <[email protected]>,
[email protected]
Message-ID:
<CAPY+ZdTyaxddcgEqJa7LY9jAsL0G13E5aKEBW384U1aWSrtS=w...@mail.gmail.com>
Content-Type: text/plain; charset="iso-8859-1"
On Thu, Sep 20, 2012 at 2:09 AM, Darren Grant <[email protected]>
wrote:
> Primarily Haskell syntax.
Would you like to try an experiment with me? Post one or two lines of code
that's been really challenging for you, and let's see if we can't figure it
out. The bar I'll set myself is not just explaining how it works but also
figuring out to /say/ the code in plain English. How's that?
-- Kim-Ee
On Thu, Sep 20, 2012 at 2:09 AM, Darren Grant <[email protected]>wrote:
> Primarily Haskell syntax.
>
>
> On Wed, Sep 19, 2012 at 8:18 AM, Heinrich Apfelmus
> <[email protected]> wrote:
> > Darren Grant wrote:
> >>
> >> I have found Reactive Banana to be the most accessible so far. Still
> >> struggling with some of the language syntax though.
> >
> >
> > Are you struggling with the Haskell syntax, or with FRP in general or
> with
> > any particular example?
> >
> >
> >
> > Best regards,
> > Heinrich Apfelmus
> >
> > --
> > http://apfelmus.nfshost.com
> >
> >
> > _______________________________________________
> > Beginners mailing list
> > [email protected]
> > http://www.haskell.org/mailman/listinfo/beginners
>
> _______________________________________________
> Beginners mailing list
> [email protected]
> http://www.haskell.org/mailman/listinfo/beginners
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://www.haskell.org/pipermail/beginners/attachments/20120920/f413786b/attachment-0001.htm>
------------------------------
Message: 5
Date: Wed, 19 Sep 2012 15:15:26 -0700
From: Dennis Raddle <[email protected]>
Subject: [Haskell-beginners] an observation about Haskell vs. Python
To: Haskell Beginners <[email protected]>
Message-ID:
<CAKxLvoorsq_NO5TfUGXbwBDZYHZ1wG_5CBB=3xsindvazea...@mail.gmail.com>
Content-Type: text/plain; charset="iso-8859-1"
As a somewhat-newbie haskell user and longtime Python user, what I have
observed is this.
Haskell creates compile-time error messages that are somewhat hard to
understand for beginners.
Python (or any scripting language) creates run-time bugs that are hard to
understand.
One reason for the weird (to a beginner) compile errors in Haskell is its
expressivity -- almost any sequence of identifiers could potentially mean
something, and if you make a mistake, the compiler is sure to find some
"weird" way to interpret it.
But Python suffers from a similar problem -- it's not as expressive a
language, but it is very permissive, not insisting on type correctness,
order of arguments, or any of a number of things so that the programmer can
write a program that compiles with no errors -- but has strange run-time
bugs.
I'll take Haskell. I'm a bit OCD about getting the bugs out of my programs,
and Python just opens up too many holes for me to relax with it.
Dennis
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://www.haskell.org/pipermail/beginners/attachments/20120919/eea79a9d/attachment-0001.htm>
------------------------------
Message: 6
Date: Wed, 19 Sep 2012 18:24:35 -0700
From: David Hinkes <[email protected]>
Subject: Re: [Haskell-beginners] an observation about Haskell vs.
Python
To: Dennis Raddle <[email protected]>
Cc: Haskell Beginners <[email protected]>
Message-ID:
<CA+_CxFME61Df+HjimUYz=-ccdy+uyp+oizrqhidconndrqm...@mail.gmail.com>
Content-Type: text/plain; charset="utf-8"
With python (and any other non-compiled language for that matter) the unit
testing is very important. I almost think of the unit tests as the
compiler (does that make sense to anyone but me?).
On Wed, Sep 19, 2012 at 3:15 PM, Dennis Raddle <[email protected]>wrote:
> As a somewhat-newbie haskell user and longtime Python user, what I have
> observed is this.
>
> Haskell creates compile-time error messages that are somewhat hard to
> understand for beginners.
>
> Python (or any scripting language) creates run-time bugs that are hard to
> understand.
>
> One reason for the weird (to a beginner) compile errors in Haskell is its
> expressivity -- almost any sequence of identifiers could potentially mean
> something, and if you make a mistake, the compiler is sure to find some
> "weird" way to interpret it.
>
> But Python suffers from a similar problem -- it's not as expressive a
> language, but it is very permissive, not insisting on type correctness,
> order of arguments, or any of a number of things so that the programmer can
> write a program that compiles with no errors -- but has strange run-time
> bugs.
>
> I'll take Haskell. I'm a bit OCD about getting the bugs out of my
> programs, and Python just opens up too many holes for me to relax with it.
>
> Dennis
>
>
>
>
> _______________________________________________
> Beginners mailing list
> [email protected]
> http://www.haskell.org/mailman/listinfo/beginners
>
>
--
David Hinkes
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://www.haskell.org/pipermail/beginners/attachments/20120919/679caeeb/attachment-0001.htm>
------------------------------
Message: 7
Date: Thu, 20 Sep 2012 04:43:07 +0200
From: Ertugrul S?ylemez <[email protected]>
Subject: Re: [Haskell-beginners] an observation about Haskell vs.
Python
To: [email protected]
Message-ID: <[email protected]>
Content-Type: text/plain; charset="us-ascii"
Dennis Raddle <[email protected]> wrote:
> Haskell creates compile-time error messages that are somewhat hard to
> understand for beginners.
>
> [...]
>
> One reason for the weird (to a beginner) compile errors in Haskell is
> its expressivity -- almost any sequence of identifiers could
> potentially mean something, and if you make a mistake, the compiler is
> sure to find some "weird" way to interpret it.
I think the main source of weird error messages is Haskell's support for
type classes. Remember all those compiler's complaints about missing
instances? Those are probably the most confusing ones for beginners:
main = print (sin + 3)
You just forgot the argument to sin, for which an appropriate error
message would be something like "missing argument" or "first argument of
(+) is not a number". Of course the former is impossible in Haskell
because of currying. The latter would be possible, if Haskell wouldn't
have type classes (you would get a regular type mismatch). Instead you
get two missing instance errors:
No instance for (Show (a0 -> a0))
arising from a use of `print'
No instance for (Num (a0 -> a0))
arising from a use of `+'
I think that this problem cannot be solved, but one possible improvement
is for the compiler to print suggestions taken from a database.
Something along the lines of:
Notice: You probably forgot to apply `sin' to an argument.
However, I think that no work is done on that, and there is another
possible path: An average Haskell tutorial should always include a
section on understanding error messages. In fact the latest issue of
The Monad Reader [1] has an article on that by Jan Stolarek.
[1]: http://themonadreader.files.wordpress.com/2012/08/issue20.pdf
Greets,
Ertugrul
--
Not to be or to be and (not to be or to be and (not to be or to be and
(not to be or to be and ... that is the list monad.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: not available
URL:
<http://www.haskell.org/pipermail/beginners/attachments/20120920/136f8756/attachment.pgp>
------------------------------
_______________________________________________
Beginners mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/beginners
End of Beginners Digest, Vol 51, Issue 29
*****************************************