Re: [Haskell-cafe] Top Level -

2008-09-01 Thread Brandon S. Allbery KF8NH
On 2008 Sep 1, at 1:33, Ganesh Sittampalam wrote: On Sun, 31 Aug 2008, Brandon S. Allbery KF8NH wrote: On 2008 Aug 31, at 13:20, Ganesh Sittampalam wrote: I'm afraid I don't see how this generalises to sharing something across an entire process where the things that want to do the sharing

[Haskell-cafe] Re: [Haskell] The initial view on typed sprintf and sscanf

2008-09-01 Thread Matthew Brecknell
oleg [1]: We demonstrate typed sprintf and typed sscanf sharing the same formatting specification. [1]http://www.haskell.org/pipermail/haskell/2008-August/020605.html Reading Oleg's post, I noticed that it is quite straightforward to generalise printing to arbitrary output types. class

Re: [Haskell-cafe] Re: [Haskell] The initial view on typed sprintf and sscanf

2008-09-01 Thread Don Stewart
haskell: oleg [1]: We demonstrate typed sprintf and typed sscanf sharing the same formatting specification. [1]http://www.haskell.org/pipermail/haskell/2008-August/020605.html Reading Oleg's post, I noticed that it is quite straightforward to generalise printing to arbitrary output

[Haskell-cafe] Re: language proposal: ad-hoc overloading

2008-09-01 Thread Gracjan Polak
Philippa Cowderoy flippa at flippac.org writes: Haskell already has one method of overloading: type classes. What you propose is a seemingly innocent extension that I now doubt has extremely far-reaching consequences into the language. Such a feature should be properly researched

[Haskell-cafe] Research language vs. professional language

2008-09-01 Thread Ryan Ingram
Jonathan, I think we are going to end up just disagreeing on this subject, but I'd like to point out the reasons why we disagree. On Sun, Aug 31, 2008 at 7:27 PM, Jonathan Cast [EMAIL PROTECTED] wrote: This concept of `day-to-day work' is a curious one. Haskell is not a mature language, and

Re: [Haskell-cafe] Re: [Haskell] The initial view on typed sprintf and sscanf

2008-09-01 Thread Ryan Ingram
On Mon, Sep 1, 2008 at 1:00 AM, Don Stewart [EMAIL PROTECTED] wrote: I also wonder if we could give a String syntax to the formatting language, using -XOverloadedStrings and the IsString class. Probably easier with Template Haskell: ghci -fth Sprintf.hs *Sprintf :t $(sprintf Hello %s, showing

Re: [Haskell-cafe] Research language vs. professional language

2008-09-01 Thread Don Stewart
ryani.spam: On Sun, Aug 31, 2008 at 7:27 PM, Jonathan Cast [EMAIL PROTECTED] wrote: This concept of `day-to-day work' is a curious one. Haskell is not a mature language, and probably shouldn't ever be one. I see where you are coming from here, but I think that train has already started

Re[2]: [Haskell-cafe] Re: [Haskell] The initial view on typed sprintf and sscanf

2008-09-01 Thread Bulat Ziganshin
Hello Ryan, Monday, September 1, 2008, 12:16:46 PM, you wrote: of course this may be done with code generation tools (such as TH). point of this research is to do this using type abilities of Haskell Don, i think this should be impossible with IsString since the point is that Haskell compiler

Re: Re[2]: [Haskell-cafe] Re: [Haskell] The initial view on typed sprintf and sscanf

2008-09-01 Thread Ryan Ingram
On Mon, Sep 1, 2008 at 1:30 AM, Bulat Ziganshin [EMAIL PROTECTED] wrote: of course this may be done with code generation tools (such as TH). point of this research is to do this using type abilities of Haskell Yes, I know. My point was that TH could be used as a minimal String - ExpQ wrapper,

[Haskell-cafe] Types in bounds

2008-09-01 Thread Brettschneider, Matthias
Hey there, i was just thinking about types in Haskell and I asked myself, Is there a mechanism, that allows me to define a new type out of an existing one with some restrictions? So that the new type is a subset of the existing one. Lets imagine I want a type for a point like: type Point =

Re: [Haskell-cafe] Types in bounds

2008-09-01 Thread Johannes Waldmann
Lets imagine I want a type for a point like: type Point = (Int, Int) But what, if I can predict that the X and Y values are in a range between 0 and 100? 1. this only works with dependent types, which Haskell does not have - by design (type inference/checking would be undecidable). It works

Re: [Haskell-cafe] Types in bounds

2008-09-01 Thread Johannes Waldmann
type Point = (Int, Int) 2. using type (instead of data) is generally a bad idea. and in this case, using data Point ... would allow to define a smart constructor that can at least check at run-time whether the bounds are met. - J.W. signature.asc Description: OpenPGP digital signature

[Haskell-cafe] cabal update : getHostByName

2008-09-01 Thread minh thu
Hi, I've followed the instruction from the upcoming book Real World Haskell to install cabal. Now, when I enter cabal update, it answers this: Downloading package list from server 'http://hackage.haskell.org/packages/archive' cabal: getHostByName: does not exist (no such host entry) What's the

[Haskell-cafe] Re: Research language vs. professional language

2008-09-01 Thread Aaron Denney
On 2008-09-01, Don Stewart [EMAIL PROTECTED] wrote: ryani.spam: On Sun, Aug 31, 2008 at 7:27 PM, Jonathan Cast [EMAIL PROTECTED] wrote: This concept of `day-to-day work' is a curious one. Haskell is not a mature language, and probably shouldn't ever be one. I see where you are coming

Re: [Haskell-cafe] Re: Research language vs. professional language

2008-09-01 Thread Sean Leather
This concept of `day-to-day work' is a curious one. Haskell is not a mature language, and probably shouldn't ever be one. I see where you are coming from here, but I think that train has already started and can't be stopped. Yeah, it's too late. Too many people have their pay

Re: [Haskell-cafe] Re: [Haskell] Top Level -

2008-09-01 Thread Adrian Hey
Ganesh Sittampalam wrote: On Sun, 31 Aug 2008, Adrian Hey wrote: Eh? Please illustrate your point with Data.Unique. What requirements does it place on it's context? (whatever that might mean :-) It requires that its context initialises it precisely once. It's context being main? If so this

Re: [Haskell-cafe] Types in bounds

2008-09-01 Thread Marc Weber
On Mon, Sep 01, 2008 at 11:45:12AM +0200, Brettschneider, Matthias wrote: Hey there, i was just thinking about types in Haskell and I asked myself, Is there a mechanism, that allows me to define a new type out of an existing one with some restrictions? So that the new

Re: [Haskell-cafe] cabal update : getHostByName

2008-09-01 Thread Marc Weber
On Mon, Sep 01, 2008 at 12:01:49PM +0200, minh thu wrote: Hi, I've followed the instruction from the upcoming book Real World Haskell to install cabal. Now, when I enter cabal update, it answers this: Downloading package list from server 'http://hackage.haskell.org/packages/archive'

Re: [Haskell-cafe] Re: [Haskell] Top Level -

2008-09-01 Thread Adrian Hey
Adrian Hey wrote: We have to have something concrete to discuss and this is the simplest. Like I said there are a dozen or so other examples in the base package last time I counted and plenty of people have found that other libs/ffi bindings need them for safety reasons. Or at least they need

Re: [Haskell-cafe] cabal update : getHostByName

2008-09-01 Thread minh thu
2008/9/1 Marc Weber [EMAIL PROTECTED]: On Mon, Sep 01, 2008 at 12:01:49PM +0200, minh thu wrote: Hi, I've followed the instruction from the upcoming book Real World Haskell to install cabal. Now, when I enter cabal update, it answers this: Downloading package list from server

[Haskell-cafe] Re: cabal update : getHostByName

2008-09-01 Thread PéterDiviánszky
Hi, Now, when I enter cabal update, it answers this: Downloading package list from server 'http://hackage.haskell.org/packages/archive' cabal: getHostByName: does not exist (no such host entry) I received the same error message. After a month I realized that my proxy settings were wrong.

Re: [Haskell-cafe] Re: cabal update : getHostByName

2008-09-01 Thread minh thu
2008/9/1 PéterDiviánszky [EMAIL PROTECTED]: Hi, Now, when I enter cabal update, it answers this: Downloading package list from server 'http://hackage.haskell.org/packages/archive' cabal: getHostByName: does not exist (no such host entry) I received the same error message. After a month I

Re: [Haskell-cafe] language proposal: ad-hoc overloading

2008-09-01 Thread Tillmann Rendel
Ryan Ingram wrote: I maintain that in Haskell, trying to get this same generality often leads to abuse of the typeclass system for things where the types should trivially be determined at compile time. I don't see how that is abuse. The type class system is there for types which can be (more

Re: [Haskell-cafe] Research language vs. professional language

2008-09-01 Thread Derek Elkins
On Mon, 2008-09-01 at 01:20 -0700, Don Stewart wrote: ryani.spam: On Sun, Aug 31, 2008 at 7:27 PM, Jonathan Cast [EMAIL PROTECTED] wrote: This concept of `day-to-day work' is a curious one. Haskell is not a mature language, and probably shouldn't ever be one. I see where you are

Re: [Haskell-cafe] Research language vs. professional language

2008-09-01 Thread Jonathan Cast
On Mon, 2008-09-01 at 01:20 -0700, Don Stewart wrote: ryani.spam: On Sun, Aug 31, 2008 at 7:27 PM, Jonathan Cast [EMAIL PROTECTED] wrote: This concept of `day-to-day work' is a curious one. Haskell is not a mature language, and probably shouldn't ever be one. I see where you are

[Haskell-cafe] Re: Research language vs. professional language

2008-09-01 Thread Jonathan Cast
On Mon, 2008-09-01 at 01:07 -0700, Ryan Ingram wrote: Jonathan, I think we are going to end up just disagreeing on this subject, but I'd like to point out the reasons why we disagree. On Sun, Aug 31, 2008 at 7:27 PM, Jonathan Cast [EMAIL PROTECTED] wrote: This concept of `day-to-day work'

Re: [Haskell-cafe] Compiler's bane

2008-09-01 Thread Andrew Coppin
Jeremy Apthorp wrote: 2008/9/1 Andrew Coppin [EMAIL PROTECTED]: Trouble is, as soon as you allow let-bindings, some clever person is going to start writing recursive ones. And actually, that's a useful thing to be able to do, but it makes figuring out the technical details... rather

Re: [Haskell-cafe] Compiler's bane

2008-09-01 Thread Andrew Coppin
Here is a *much* bigger problem: How do you check that an interpretter is correct?? You can't very easily write a QuickCheck property that will generate every possible valid expression and then check that the output of the interpretter is formally equivilent. The QuickCheck property would be

Re: [Haskell-cafe] Compiler's bane

2008-09-01 Thread Brandon S. Allbery KF8NH
On 2008 Sep 1, at 14:47, Andrew Coppin wrote: I wonder - how do the GHC developers check that GHC works properly? (I guess by compiling stuff and running it... It's a bit harder to check that a lambda interpretter is working right.) GHC has a comprehensive test suite (not included in the

[Haskell-cafe] Haskell Propeganda

2008-09-01 Thread Niels Aan de Brugh
On Sun, Aug 24, 2008 at 5:44 AM, Thomas M. DuBuisson [EMAIL PROTECTED] wrote: wrt head [], Niels said: So now what? Action plan = [] Oh come now. Between ghci, hpc, and manual analysis I've never hit a Haskell error and thrown my hands up, I can't go any further, I'm at a complete loss!

[Haskell-cafe] getting Quickcheck 2.0

2008-09-01 Thread Wolfgang Jeltsch
Hello, is there a reason why Quickcheck 2.0 isn’t released via Hackage? Does anybody know where to get it? The darcs repository already has 2.1 as the version number in the Cabal file but Hackage still only has 1.1.0.0. Best wishes, Wolfgang ___

Re: [Haskell-cafe] getting Quickcheck 2.0

2008-09-01 Thread Don Stewart
g9ks157k: Hello, is there a reason why Quickcheck 2.0 isn’t released via Hackage? Does anybody know where to get it? The darcs repository already has 2.1 as the version number in the Cabal file but Hackage still only has 1.1.0.0. Andy Gill and Koen Claessen are preparing a release,

Re: [Haskell-cafe] Re: [Haskell] Top Level -

2008-09-01 Thread Ganesh Sittampalam
On Mon, 1 Sep 2008, Adrian Hey wrote: Actually all this use of the tainted and derogatory term global variable is causing me to be imprecise. All MVars/IORefs have global main/process scope whether or not they're bound to something at the top level. Global variable is exactly the right term

Re: [Haskell-cafe] Re: [Haskell] Top Level -

2008-09-01 Thread John Meacham
On Thu, Aug 28, 2008 at 07:21:48PM -0400, Brandon S. Allbery KF8NH wrote: OS provided one? What if you have an exokernel, where it is expected these things _will_ be implemented in the userspace code. why shouldn't that part of the exokernel be written in haskell? What's stopping it? Just

Re: [Haskell-cafe] Re: [Haskell] Top Level -

2008-09-01 Thread John Meacham
On Fri, Aug 29, 2008 at 04:33:50PM -0700, Dan Weston wrote: C++ faced this very issue by saying that with global data, uniqueness of initialization is guaranteed but order of evaluation is not. Assuming that the global data are merely thunk wrappers over some common data source, this

Re: [Haskell-cafe] Re: [Haskell] Top Level -

2008-09-01 Thread Ganesh Sittampalam
On Mon, 1 Sep 2008, John Meacham wrote: On Mon, Sep 01, 2008 at 10:45:05PM +0100, Ganesh Sittampalam wrote: Actually all this use of the tainted and derogatory term global variable is causing me to be imprecise. All MVars/IORefs have global main/process scope whether or not they're bound to

Re: [Haskell-cafe] Re: [Haskell] Top Level -

2008-09-01 Thread Brandon S. Allbery KF8NH
On 2008 Sep 1, at 18:08, Ganesh Sittampalam wrote: On Mon, 1 Sep 2008, John Meacham wrote: On Mon, Sep 01, 2008 at 10:45:05PM +0100, Ganesh Sittampalam wrote: Actually all this use of the tainted and derogatory term global variable is causing me to be imprecise. All MVars/IORefs have global

[Haskell-cafe] Fast parallel binary-trees for the shootout: Control.Parallel.Strategies FTW!

2008-09-01 Thread Don Stewart
The Computer Language Benchmarks Game recently got a quad core 64 bit machine. Initial results just porting the single-threaded Haskell benchmarks to 64 bit look rather pleasing, http://shootout.alioth.debian.org/u64q/benchmark.php?test=alllang=all Note that C++, D, Clean et al aren't ported

Re: [Haskell-cafe] Re: [Haskell] Top Level -

2008-09-01 Thread Ganesh Sittampalam
On Mon, 1 Sep 2008, Brandon S. Allbery KF8NH wrote: On 2008 Sep 1, at 18:08, Ganesh Sittampalam wrote: On Mon, 1 Sep 2008, John Meacham wrote: for instance, windows dll's have the ability to share individual variables across all loadings of said dll. (for better or worse.) Interesting, is

Re: [Haskell-cafe] Re: [Haskell] Top Level -

2008-09-01 Thread Ganesh Sittampalam
On Mon, 1 Sep 2008, Adrian Hey wrote: Ganesh Sittampalam wrote: On Sun, 31 Aug 2008, Adrian Hey wrote: Eh? Please illustrate your point with Data.Unique. What requirements does it place on it's context? (whatever that might mean :-) It requires that its context initialises it precisely

Re: [Haskell-cafe] Fast parallel binary-trees for the shootout: Control.Parallel.Strategies FTW!

2008-09-01 Thread Don Stewart
dons: The Computer Language Benchmarks Game recently got a quad core 64 bit machine. Initial results just porting the single-threaded Haskell benchmarks to 64 bit look rather pleasing, http://shootout.alioth.debian.org/u64q/benchmark.php?test=alllang=all Note that C++, D, Clean et al

[Haskell-cafe] Re: [Haskell] Top Level -

2008-09-01 Thread Ashley Yakeley
Ganesh Sittampalam wrote: Well, the question of whether multiple copies of a module are ok is still open, I guess - as you say later, it seems perfectly reasonable for two different versions of Data.Unique to exist, each with their own types and global variables - so why not two copies of the

[Haskell-cafe] Re: [Haskell] Top Level -

2008-09-01 Thread Ganesh Sittampalam
On Mon, 1 Sep 2008, Ashley Yakeley wrote: Ganesh Sittampalam wrote: Well, the question of whether multiple copies of a module are ok is still open, I guess - as you say later, it seems perfectly reasonable for two different versions of Data.Unique to exist, each with their own types and

[Haskell-cafe] Re: [Haskell] Top Level -

2008-09-01 Thread Ashley Yakeley
Ganesh Sittampalam wrote: Right, but they might be the same package version, if one is a dynamically loaded bit of code and the other isn't. OK. It's up to the dynamic loader to deal with this, and make sure that initialisers are not run more than once when it loads the package into the RTS.

Re: [Haskell-cafe] Compiler's bane

2008-09-01 Thread Tillmann Rendel
Andrew Coppin wrote: Here is a *much* bigger problem: How do you check that an interpretter is correct?? Before checking for correctness, you have to define correctness. What is the specification of your interpreter? You can't very easily write a QuickCheck property that will generate

Re: [Haskell-cafe] Compiler's bane

2008-09-01 Thread Brandon S. Allbery KF8NH
On 2008 Sep 1, at 20:06, Tillmann Rendel wrote: Andrew Coppin wrote: Any hints? Just how *do* you check something large like this? You could write a lot of test cases, calculating the correct answers by hand. You could check that during evaluation, you have always wellformed terms (e.g.

[Haskell-cafe] It's not a monad - what is it? looking for nice syntactic sugar, customizable do notation?

2008-09-01 Thread Marc Weber
Context: Basic xml validation of vxml does work now. So I'm looking for a convinient way to use it. (1) My first approach: putStrLn $ xml $ ((html_T ( head_T (title_T hw) (link_T `rel_A` stylesheet `type_A` text/css `href_A` style.css) ))

Re: [Haskell-cafe] It's not a monad - what is it? looking for nice syntactic sugar, customizable do notation?

2008-09-01 Thread Marc Weber
I still think that (3) would be superiour.. Is there a way to define my own = and functions such as: {-# define custom do doX; (=) : mybind , : my #-} body $ doX args - lift $ getArgs This would be terrific. Sincerly Marc Weber dons has told me about 06:27 dons

Re: [Haskell-cafe] Re: [Haskell] Top Level -

2008-09-01 Thread Ganesh Sittampalam
On Mon, 1 Sep 2008, Ashley Yakeley wrote: Ganesh Sittampalam wrote: Right, but they might be the same package version, if one is a dynamically loaded bit of code and the other isn't. OK. It's up to the dynamic loader to deal with this, and make sure that initialisers are not run more than

Re: [Haskell-cafe] language proposal: ad-hoc overloading

2008-09-01 Thread Jason Dusek
Andrew Coppin [EMAIL PROTECTED] wrote: This quickly boils down to an argument along the lines of Haskell doesn't support container neutrality very well, which as I understand it is already a known problem. In all fairness, this complaint boils down to there is no container typeclass -- a