Re: [Haskell-cafe] Haskell is a declarative language? Let's see how easy it is to declare types of things.

2013-04-06 Thread Albert Y. C. Lai
On 13-04-05 04:56 AM, Tom Ellis wrote: any is very ambiguous. Doesn't the problem go away if you replace it with all? Yes, that is even better. The world would be simple and elegant if it did things your way, and would still be not too shabby if it did things my way, no? «Learn You a

Re: [Haskell-cafe] Haskell is a declarative language? Let's see how easy it is to declare types of things.

2013-04-06 Thread Tom Ellis
On Sat, Apr 06, 2013 at 05:14:48PM -0400, Albert Y. C. Lai wrote: On 13-04-05 04:56 AM, Tom Ellis wrote: any is very ambiguous. Doesn't the problem go away if you replace it with all? Yes, that is even better. The world would be simple and elegant if it did things your way, and would

Re: [Haskell-cafe] Haskell is a declarative language? Let's see how easy it is to declare types of things.

2013-04-05 Thread Tom Ellis
On Thu, Apr 04, 2013 at 06:29:51PM -0400, Albert Y. C. Lai wrote: You may think you know what's wrong, but you don't actually know until you know how to clarify to the beginners. Note: harping on the word any does not clarify, for the beginners exactly say this: Yeah, t can be *any* type,

Re: [Haskell-cafe] Haskell is a declarative language? Let's see how easy it is to declare types of things.

2013-04-04 Thread Johannes Waldmann
Albert Y. C. Lai trebla at vex.net writes: Quantifiers are complicated, but I don't see how explicit is more so than implicit. [...] I have just seen recently [...] Great example. I completely agree. My feeling is that mathematicians use this principle of leaving out some of the

Re: [Haskell-cafe] Haskell is a declarative language? Let's see how easy it is to declare types of things.

2013-04-04 Thread Tom Ellis
On Thu, Apr 04, 2013 at 11:02:34AM +, Johannes Waldmann wrote: My feeling is that mathematicians use this principle of leaving out some of the quantifiers and putting some others in the wrong place as a cultural entry barrier to protect their field from newbies. Albert showed an example

Re: [Haskell-cafe] Haskell is a declarative language? Let's see how easy it is to declare types of things.

2013-04-04 Thread Tillmann Rendel
Hi, Richard A. O'Keefe wrote: As I understand it, in ML, it seemed to be a clever idea to not have type signatures at all. Wrong. In ML, it seemed to be a clever idea not to *NEED* type signatures, and for local definitions they are very commonly omitted. In the ML I used, I remember that

Re: [Haskell-cafe] Haskell is a declarative language? Let's see how easy it is to declare types of things.

2013-04-04 Thread Johannes Waldmann
Tom Ellis tom-lists-haskell-cafe-2013 at jaguarpaw.co.uk writes: I didn't see an example of quantifiers in the wrong place. The example was: every x satisfies P(x,y) for some y ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org

Re: [Haskell-cafe] Haskell is a declarative language? Let's see how easy it is to declare types of things.

2013-04-04 Thread Tom Ellis
On Thu, Apr 04, 2013 at 01:15:27PM +, Johannes Waldmann wrote: Tom Ellis tom-lists-haskell-cafe-2013 at jaguarpaw.co.uk writes: I didn't see an example of quantifiers in the wrong place. The example was: every x satisfies P(x,y) for some y Oh I see. I interpreted that as lack of

Re: [Haskell-cafe] Haskell is a declarative language? Let's see how easy it is to declare types of things.

2013-04-04 Thread Albert Y. C. Lai
On 13-04-04 01:07 AM, wren ng thornton wrote: When the quantifiers are implicit, we can rely on the unique human ability to DWIM. This is a tremendous advantage when first teaching people about mathematical concerns from a logical perspective. However, once people move beyond the basics of

Re: [Haskell-cafe] Haskell is a declarative language? Let's see how easy it is to declare types of things.

2013-04-04 Thread Richard A. O'Keefe
On 5/04/2013, at 1:22 AM, Tillmann Rendel wrote: Hi, Richard A. O'Keefe wrote: As I understand it, in ML, it seemed to be a clever idea to not have type signatures at all. Wrong. In ML, it seemed to be a clever idea not to *NEED* type signatures, and for local definitions they are

Re: [Haskell-cafe] Haskell is a declarative language? Let's see how easy it is to declare types of things.

2013-04-04 Thread Alexander Solla
On Thu, Apr 4, 2013 at 3:29 PM, Albert Y. C. Lai tre...@vex.net wrote: On 13-04-04 01:07 AM, wren ng thornton wrote: When the quantifiers are implicit, we can rely on the unique human ability to DWIM. This is a tremendous advantage when first teaching people about mathematical concerns from

Re: [Haskell-cafe] Haskell is a declarative language? Let's see how easy it is to declare types of things.

2013-04-04 Thread Kim-Ee Yeoh
(Folks, let's rescue this increasingly tendentious thread.) Some points to ponder: (1) Any can be often be clarified to mean all, depending on how polymorphic functions are exegeted. In a homotopy-flavored explanation of natural transformation, its components (read parametric instances) exist

[Haskell-cafe] Haskell is a declarative language? Let's see how easy it is to declare types of things.

2013-04-03 Thread Johannes Waldmann
I absolutely love to use Haskell when teaching (and I have several years of experience doing it). And I absolutely dislike it when I have to jump through hoops to declare types in the most correct way, and in the most natural places. This is hard to sell to the students. - Examples: 1. for

Re: [Haskell-cafe] Haskell is a declarative language? Let's see how easy it is to declare types of things.

2013-04-03 Thread Andres Löh
Hi Johannes. I know this isn't really an answer, but ... 1. for explicit declaration of type variables, as in reverse :: forall (a :: *) . [a] - [a] I have to switch on RankNTypes and/or KindSignatures (ghc suggests). ... you can do this with ExplicitForall rather than RankNTypes, which

Re: [Haskell-cafe] Haskell is a declarative language? Let's see how easy it is to declare types of things.

2013-04-03 Thread Tillmann Rendel
Hi Johannes, Johannes Waldmann wrote: I absolutely dislike it when I have to jump through hoops to declare types in the most correct way, and in the most natural places. reverse :: forall (a :: *) . [a] - [a] \ (xs :: [Bool]) - ... All of this just because it seemed, at some time, a clever

Re: [Haskell-cafe] Haskell is a declarative language? Let's see how easy it is to declare types of things.

2013-04-03 Thread Kim-Ee Yeoh
Hi Tillmann, On Wed, Apr 3, 2013 at 11:59 PM, Tillmann Rendel ren...@informatik.uni-marburg.de wrote: From the type-theoretic point of view, I guess this is related to your view of what a polymorphic function is. Do you have a reference to the previous conversation? but we moved further and

Re: [Haskell-cafe] Haskell is a declarative language? Let's see how easy it is to declare types of things.

2013-04-03 Thread Tillmann Rendel
Hi Kim-Ee, Kim-Ee Yeoh wrote: [...] I guess this is related to your view of [...] Do you have a reference to the previous conversation? Sorry, I mean related to one's view of, not related to Johannes Waldmanns' view of. Which seems miles away from what you're alluding to. Full-blown

Re: [Haskell-cafe] Haskell is a declarative language? Let's see how easy it is to declare types of things.

2013-04-03 Thread Richard A. O'Keefe
On 4/04/2013, at 5:59 AM, Tillmann Rendel wrote: As I understand it, in ML, it seemed to be a clever idea to not have type signatures at all. Wrong. In ML, it seemed to be a clever idea not to *NEED* type signatures, and for local definitions they are very commonly omitted. But you can

Re: [Haskell-cafe] Haskell is a declarative language? Let's see how easy it is to declare types of things.

2013-04-03 Thread Alexander Solla
On Wed, Apr 3, 2013 at 8:28 AM, Johannes Waldmann waldm...@imn.htwk-leipzig.de wrote: All of this just because it seemed, at some time, a clever idea to allow the programmer to omit quantifiers? (I know, mathematicians do this all over the place, but it is never helpful, and especially not

Re: [Haskell-cafe] Haskell is a declarative language? Let's see how easy it is to declare types of things.

2013-04-03 Thread Albert Y. C. Lai
On 13-04-03 07:39 PM, Alexander Solla wrote: There's your problem. Mathematicians do this specifically because it is helpful. If anything, explicit quantifiers and their interpretations are more complicated. People seem to naturally get how scoping works in mathematics until they have to

Re: [Haskell-cafe] Haskell is a declarative language? Let's see how easy it is to declare types of things.

2013-04-03 Thread wren ng thornton
On 4/3/13 11:46 PM, Albert Y. C. Lai wrote: On 13-04-03 07:39 PM, Alexander Solla wrote: There's your problem. Mathematicians do this specifically because it is helpful. If anything, explicit quantifiers and their interpretations are more complicated. People seem to naturally get how