Re: important news: refocusing discussion

2006-03-27 Thread Neil Mitchell
it's too hard to implement (and it's not always hard - the YHC guys managed it in a matter of days Tom is the one who implemented it in Yhc, and details can be found http://www.haskell.org/haskellwiki/Yhc/RTS/Concurrency but some of the reasons that it was easier than in other compilers are:

Re: FFI, safe vs unsafe

2006-03-29 Thread Neil Mitchell
Hi - we've been told here that concurrency is just a library No, its not. The interface to concurrency is just a library, but internally certain things in the runtime have to change. - FFI allows other Haskell' implementations to import that library If all Haskell' prime implementations depend

Re: Pre-emptive or co-operative concurrency (was: Concurrency)

2006-03-29 Thread Neil Mitchell
Hi, context-switches happen only on specific events, which every thread will usually engage in, although it need not always do so: 1 only calls to yield 2 any calls to concurrency library api 3 any allocation The Yhc concurrency switches every n instructions, and therefore even an evil

Re: Pre-emptive or co-operative concurrency (was: Concurrency)

2006-03-30 Thread Neil Mitchell
Hi What does YHC do about in-progress thunk evaluations when a context switch happens? Does it use blackholing like GHC, or does it portentially duplicate the work, or something else? As far as I am aware, since it only switches on instruction boundaries, it never has to worry about this. It

Re: Here-docs in Haskell source

2006-09-23 Thread Neil Mitchell
Hi Any tool which assumes strings are delimited by a single front delimiter and a single end delimiter, which they are in most reasonable languages, will have trouble. In current haskell any tool which assumes characters start and end with a ' are also wrong, because you can have name' as a

Re: Indentation of If-Then-Else

2006-10-22 Thread Neil Mitchell
Hi In order to solve the trouble I propose enhancements to teachers, compilers and standard libraries: 1. 'if' syntax should be teached as if a then b else c I love being able to ident if however I like: if a then b else c Where b is a trivial case, and c is the hard

Re: Indentation of If-Then-Else

2006-10-22 Thread Neil Mitchell
It seems better to change the language so it works like _everyone_ expects it does, rather than become syntax dictators. It's hard enough persuading people to move from C, but when you tell someone that their perfectly unambiguous sytnax is wrong, they aren't going to be amused. I don't

Re: Indentation of If-Then-Else

2006-10-24 Thread Neil Mitchell
Actually if-then-else isn't used that often today. Most programmers gave it up in favor of guards. I question both these statements. Can you cite some evidence here? I have 501 if statements in my current project. Yhc has 626. Hoogle has 101. If's seem pretty well used to me! Thanks Neil

Re: character literal question

2006-12-01 Thread Neil Mitchell
Hi Is there a reason why we have to escape the character ' (apostrophe) when used in a character literal? For example, we have to write '\'' instead of '''. This is what Ada does. I think that's a reason enough to keep things the way they are. It does actually make syntax hilighting more

Re: Are pattern guards obsolete?

2006-12-13 Thread Neil Mitchell
Hi in spite of their similarity, all of these constructs handle some of the monadic aspects differently. the translations of pattern guards not only embed statements in guard, they also embed the right hand sides of generators in return. translations of list comprehensions only lift statements.

Re: List syntax (was: Re: help from the community?)

2007-02-02 Thread Neil Mitchell
Hi The argument that a trailing comma means the programmer forgot the last item in a list / tuple is inconsistent with the deliberately explicit permissiveness of a trailing comma in the import / export lists. In the import / export lists such a trailing comma does not mean programmer forgot

Re: rank-2 vs. arbitrary rank types

2007-02-06 Thread Neil Mitchell
Hi I guess another important point is to make sure that when we pick a design, then we have at least one (current) implementation that supports it (ideally, all implementations would eventually). Could we get a heads up from implementors about the the current status and future plans in this

Re: Make it possible to evaluate monadic actions when assigning record fields

2007-07-12 Thread Neil Mitchell
Hi Put differently, I don't see a compelling use-case for the proposed syntax extension. But I've seen many misused monads. A compelling use-case: http://darcs.haskell.org/yhc/src/libraries/core/Yhc/Core/Simplify.hs Look at coreSimplifyExprUniqueExt And from that file: -- helpers,

Re: Re[2]: Make it possible to evaluate monadic actions when assigning record fields

2007-07-12 Thread Neil Mitchell
Hi This extension seems like a great idea - my only concern would be about the order of computations. Clearly left-to-right makes sense, but this may break some natural intuition in Haskell: i think that undefined order will be a best one Using undefined does not make for great reading in

Re: hello

2007-08-29 Thread Neil Mitchell
Hi hello thanks for my new subscription, do I need to pay a fee or is it free to join ? This is a mailing list. Its totally free, and for the purpose of discussing future improvements to the Haskell standard. If you just wait, you'll find interesting discussions flowing into your inbox. If

Re: Consistency of reserved operators and bang patterns

2007-09-08 Thread Neil Mitchell
Hi Re ! as an operator: This caused a number of complexities in the parsing of stuff, including shift-reduce conflicts. Someone would need to look into this, and determine that the rules are completely unambiguous. Backwards compatibility requires that it be implicitly imported from Prelude

Re: patch applied (haskell-prime-status): proposal: remove string gaps

2008-04-01 Thread Neil Mitchell
Hi Henrik, In reality, string gaps are unusable in practice, because of GHC and -cpp. We had some in Yhc at one point, and then breakage happened, so we removed them. To quote from the page: * string gaps cause problems with CPP, which doesn't like the backslash at the end of the line. (a

Re: patch applied (haskell-prime-status): proposal: remove string gaps

2008-04-01 Thread Neil Mitchell
Hi If you have two features battling each other, you probably need to remove one of them. CPP isn't going to be removed, which kind of forces the issue... Well, for the record, I've used both CPP and string gaps extensively. And all I've done is to be careful to run CPP only

Re: patch applied (haskell-prime-status): BangPatterns: probably accept == undecided

2008-04-16 Thread Neil Mitchell
Hi a!b = ... Did I just define the function a or the function !? I'm not saying they shouldn't be accepted, but the story should be a little clearer about this as well! For what it is worth, in discussions with Matt, we wondered if eliminating infix function definition altogether was

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Neil Mitchell
Hi How would you propose supporting multiple preludes at once? Unhappy. The Haskell Prelude is more than just a standard library. Things like $, ., otherwise, = etc would be keywords in any other language. As such, you expect their meaning to be consistent. If you let other people define

Re: The monomorphism restriction and monomorphic pattern bindings

2008-04-23 Thread Neil Mitchell
Hi * remove the MR entirely Finally! * adopt Monomorphic Pattern Bindings (MPB) There are 6 reasons on that page why we shouldn't adopt MPB - of those number 5 I think is particularly compelling. There seems to be 1 main reason to remove it, which is that it has a complex translation to

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Neil Mitchell
Hi I think it is reasonable to look closely at the motivations for wanting to retain the $ as is. Looking through this thread, I can find only a single complaint raised (albeit an important one), namely backwards compatibility. Yes, such a change would likely break quite a few my

Re: Meta-point: backward compatibility

2008-04-24 Thread Neil Mitchell
Hi I think Henrik's criteria are pretty close to perfect. As I have argued before on the committee list, I also think we should *not* worry about backwards incompatible changes too much in cases where a simple automatic translation from H98 to H' code is possible. Even for a large project,

Re: The monomorphism restriction and monomorphic pattern bindings

2008-04-25 Thread Neil Mitchell
Hi Simon, Those additional reasons given are much more compelling, and should definately go on the wiki. I think the essential point is that it makes reasoning about the code simpler - regardless of the effect on implementation. My main remaining reservation is that: (x) /= x [EMAIL PROTECTED]

Re: PROPOSAL: Make Applicative a superclass of Monad

2008-06-27 Thread Neil Mitchell
Hi So does the silence = approval rule apply here? 2 days is not enough time :-) I disagree, its a breaking change from Haskell 98. It also means that if you want to provide syntactic sugar for do notation, i.e. my Test monad, you have to jump through more hoops.

Re: empty case, empty definitions

2008-08-15 Thread Neil Mitchell
Hi 1. Allow empty case, i.e. case some_variable of { } (GHC ticket [1]). This adds consistency, it always causes a pattern-match error, and it is a sensible way to look at all the cases of types with no constructors (recall EmptyDataDecls will probably be in Haskell' [4]) -- especially for

Re: Repair to floating point enumerations?

2008-12-09 Thread Neil Mitchell
Hi Bringing up an old thread, but this issue just bit me in real life: [0, 2.5 .. 3.75 ] = [0, 2.5, 5.0] I was comparative testing some C++ and some Haskell, and its a shame when its the Haskell that is clearly wrong! I don't think any end decision was reached in this thread, but I think this

Re: Suggestion: Syntactic sugar for Maps!

2008-12-14 Thread Neil Mitchell
Hi Alson, So why not {hello: 1, there: 2} ? A comment from the peanut gallery: I took circ's comment to be a suggestion that we adopt an _idiom_. That you can non-idiomatically accomplish the same thing in Haskell by defining some datatypes and functions doesn't seem to address the core

Re: StricterLabelledFieldSyntax

2009-07-26 Thread Neil Mitchell
Hi Would it be proper to create a counterproposal for this syntax? ReversedLabelledFieldSyntax? I would claim that, of the existing Haskell code, StricterLabelledFieldSyntax only rejects unclear (bad) code, and requiring it be changed (to be made clearer) is a good thing. I haven't seen

Re: StricterLabelledFieldSyntax

2009-07-26 Thread Neil Mitchell
I haven't seen anyone else claim to use the current more liberal syntax for fields, but I know that I do rather extensively. I would consider: Just A {a = 1} To be confusing, but if you simply omit the space: Just A{a = 1} I now find that perfectly clear and unambiguous. I did

Re: Proposals and owners

2009-07-31 Thread Neil Mitchell
Hi   remove FixityResolution from the context-free grammar http://hackage.haskell.org/trac/haskell-prime/wiki/FixityResolution Please take a look and comment.  This fixes a nasty bug in the Haskell syntax - albeit one that doesn't cause problems in practice, but still.  I think the changes

Re: Add haskell-src as an official machine-readable component of the Haskell standard

2010-11-18 Thread Neil Mitchell
There is nothing to stop an library author doing exactly this, and it might even be useful for some people (personally I'm going to stick to haskell-src-exts, because it's a brilliant library). However, I don't think we should make it official or part of the standard. I've found plenty of HSE/GHC