RE: type checker bug

2002-01-31 Thread Simon Peyton-Jones
We've all been away at POPL, still catching up. I've taken a look now. Yes, this is a bug in 5.02.2 (and all earlier compilers). What happens is that the fixpoint computation, designed to infer the context for the derived instance declaration, diverges. As it happens, it's already fixed in

RE: heap oversize panic when compiling with -prof -auto-all

2002-01-31 Thread Simon Marlow
Certainly. We've just spent lots of time trying to get this stuff to be utterly painless to compile, so please let us know if the instructions below give you any trouble. The problem is that you didn't compile the whole program with -prof: the BareBonesArrows library was compiled the

Dynamic types/multiparameter type classes

2002-01-31 Thread George Russell
Something is rotten in the state of dynamic types and multiparameter type classes. I'd be grateful if you'd fix it soon, this is causing me big difficulties. I'm sorry if this is complicated, but I've already spent two hours narrowing this bug down and the security are about to throw me out of

Re: Passing values taking implicit parameters

2002-01-31 Thread Johannes Waldmann
I'd like write a function taking values with implicit parameters. This may not be exactly what you're after, but .. I understand the need for implicit parameters (sometimes when my functions seem to need A LOT of parameters, the code looks really messy, and adding another parameter is a

Re: Passing values taking implicit parameters

2002-01-31 Thread Jan de Wit
From: Johannes Waldmann: [reply to Mike Gunter snipped] BEGIN wishlist: Now, can we please have defaults in data declarations? As in data Foo = { host :: String, port = :: Int } Better still, can we construct default values, using values of other components, as in data Tree = {

RE: Passing values taking implicit parameters

2002-01-31 Thread Simon Peyton-Jones
You don't point it out explicitly, but you are using rank-2 types here! This is indeed a bug in 5.02, fixed in the current release 5.02.2 Simon | -Original Message- | From: Mike Gunter [mailto:[EMAIL PROTECTED]] | Sent: 31 January 2002 05:36 | To: [EMAIL PROTECTED] | Subject: Passing

Re: Passing values taking implicit parameters / smart constructors

2002-01-31 Thread Johannes Waldmann
Jan de Wit writes: I think that what you want here are 'smart constructors', i.e. functions that create a new value but also perform other initializations. .. If you define Tree and the smart constructors in a separate module and then only export the type Tree (*not* the real constructors!),

Re: Passing values taking implicit parameters / smart constructors

2002-01-31 Thread Malcolm Wallace
I think that what you want here are 'smart constructors', i.e. functions that create a new value but also perform other initializations. .. If you define Tree and the smart constructors in a separate module and then only export the type Tree (*not* the real constructors!), But then I

Re: Passing values taking implicit parameters

2002-01-31 Thread Jorge Adriano
I'd like write a function taking values with implicit parameters. This may not be exactly what you're after, but .. I understand the need for implicit parameters (sometimes when my functions seem to need A LOT of parameters, the code looks really messy, and adding another parameter is a

Re: Passing values taking implicit parameters

2002-01-31 Thread Jorge Adriano
BEGIN wishlist: snip My whilist for records. 'Records' provide projection functions, but IMO that is not enough, it would be really handy to have some 'update' and 'apply field' functions provided automaticly for each field. I always find myself having to write this functions by hand for

Re: Passing values taking implicit parameters

2002-01-31 Thread Jorge Adriano
Forgot to mention that a particular case in which these functions are extremely useful, is when using implicit parameters as John Huges describes in http://www.md.chalmers.se/~rjmh/Combinators/MonadTransformers.hs opsss wrong link, correct one is: http://www.md.chalmers.se/~rjmh/Globals.ps

unIO vs. unsafePerformIO

2002-01-31 Thread Andre W B Furtado
What's the difference between unIO and unsafePerformIO? And why is the former safe? (I would like to apply the same questions to unsafeIOToST and ioToST) Thanks, -- Andre ___ Glasgow-haskell-users mailing list [EMAIL PROTECTED]

partial evaluation

2002-01-31 Thread David Feuer
It seems to me that it might be useful (and probably fairly easy) to add to GHC a limited sort of partial evaluation: programmer-designated top-level CAFs could be evaluated to WHNF during compilation. Termination of that compiler phase would obviously not be guaranteed, but if this were

Re: Another H'98 Report query

2002-01-31 Thread Fergus Henderson
On 31-Jan-2002, Malcolm Wallace [EMAIL PROTECTED] wrote: The subordinate names c_i (f_i) must not contain duplicates. Yet later in the text it is stated that Exports lists are cumulative: the set of entities exported by an export list is the union of the entities exported by

Re: Another H'98 Report query

2002-01-31 Thread Malcolm Wallace
I see no reason to disallow duplicates at the subordinate level if they are permitted otherwise. Well, disallowing duplicates here may improve error detection, catching some unintentional typos and cut-and-paste errors. By the same argument, we should disallow *all* duplicates, for

Announcing Lipari 2002 Summer School on Sw Engg

2002-01-31 Thread boerger
please forward to those interested Lipari SOFTWARE ENGINEERING Summer School Lipari, Sicily, 30.6.-13.7. 2002 http://lipari.cs.unict.it/lipari/index.htm PROGRAM (Courses of 5x2 lecture hours each): Software Architectures (David

Re: Another H'98 Report query

2002-01-31 Thread Iavor S. Diatchki
hi On Thursday 31 January 2002 03:53 am, Malcolm Wallace wrote: I see no reason to disallow duplicates at the subordinate level if they are permitted otherwise. Well, disallowing duplicates here may improve error detection, catching some unintentional typos and cut-and-paste errors.

Re: Another H'98 Report query

2002-01-31 Thread Malcolm Wallace
disallowing all duplicates seems tricky. is there a duplicate here: module A (f, module M) where import M(f) Yes, there is a duplicate here. Strangely enough, hbc does not report this as an error, even though it refuses to compile the following very similar case: module A (f, module A)

Re: Another H'98 Report query

2002-01-31 Thread Iavor S. Diatchki
hi again, On Thursday 31 January 2002 10:18 am, Malcolm Wallace wrote: disallowing all duplicates seems tricky. is there a duplicate here: module A (f, module M) where import M(f) Yes, there is a duplicate here. Strangely enough, hbc does not report this as an error, even though it

Re: ideas for compiler project

2002-01-31 Thread Eray Ozkural (exa)
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On Friday 25 January 2002 13:25, Jerzy Karczmarczuk wrote: Block recursive Schemes in Matlab are easier than in C++. Implementing pyramid algorithms is not difficult. Slicing, reshaping, cloning, etc. of matrices are very powerful tools, but they

Problem with 'nested' pattern matching

2002-01-31 Thread carlos . scheidegger
Hello. I'm having some trouble trying to understand exactly what's behind the rule for pattern-matching with data constructors. The code I'm having trouble with is similar to this: f (C p1 p2 (C2 p3 p4)) = ... f _ = False What happens is if f is called with (C p1 p2 (NOT_C2 ...)), I get a