Hi all,
When I first discovered Haskell' I was really excited to hear that
many of the individual extensions that are already used by many people
are going to be put together to one coherent next release.
I have read the archive of the Haskell Prime Mailing list for all of
2007 as well as a lot of pages on Haskell.org and in the Haskell Prime
Wiki, yet the most recent status report that I found is the one in the
wiki from September 2006.
(http://hackage.haskell.org/trac/haskell-prime/wiki/Status')
Could someone please summarize the current status and planned time
line for Haskell'?
thanks a lot,
Robert
--
Skype: robert.will
[Moving to haskell-prime]
I think there would be real merit in some reworking of the module system, especially to allow programmers to give the complete signature of a module, perhaps by expanding what the export list says. Including instances.
Any such thing is very far from being a tried-and-tested feature, though, and it'd be hard to argue it into Haskell' unless someone gets busy very soon. Even then it looks a bit late.
Simon
| -----Original Message-----
| From: haskell-bounces(a)haskell.org [mailto:haskell-bounces@haskell.org] On Behalf Of John Meacham
| Sent: 17 October 2007 03:00
| To: haskell(a)haskell.org
| Subject: Re: [Haskell] Module system question
|
| On Mon, Oct 15, 2007 at 10:34:37PM +0300, Iavor Diatchki wrote:
| > I like the Hugs behavior because it accepts more programs. OTOH,
| > GHC's behavior may be a bit simpler to explain and implement(?). Any
| > thoughts?
|
| Currently, the class and datatype namespaces are considered the same by
| the standard. There is no particular reason this needs to be the case as
| they can always be disambiguated syntactically except in the one case of
| export/import lists. Some of the proposed module system changes for
| haskell' address this issue, which would allow fully separate namespaces
| for the two.
|
| Although I am not sure exactly what form it will take, I would like some
| reworking of the module system to allow this change in haskell'. There
| are some concrete proposals on the wiki, I have been meaning to make a
| grand unified proposal at some point that incorperates all the proposed
| changes (and incidentally, more importantly, proves compatibility
| between them) to the module system so that we may consider it. Not that
| I think all the proposals should go in or not as a unit, but it will
| give us a concrete theoretically implementable superset of all the
| proposals to think about and illuminate any interactions between
| proposals that might not be obvious when considered separately.
|
| John
|
| --
| John Meacham - ⑆repetae.net⑆john⑈
| _______________________________________________
| Haskell mailing list
| Haskell(a)haskell.org
| http://www.haskell.org/mailman/listinfo/haskell
I presume that the two statements below are equivalent [1]:
newtype A = MkA Int
data A = MkA !Int
So does Haskell' still need newtype? It seems like a needless keyword.
----------
[1] I ran ghc -c -fglasgow-exts -O -ddump-simpl and renamed identifiers
to match, then did a diff, resulting in identical Tidy Core except for
an explicit (inlined) reification function unused elsewhere:
Main.$WMkA :: GHC.Base.Int -> Main.A
[DataConWrapper]
[Arity 1
NoCafRefs
Str: DmdType Sm]
Main.$WMkA =
__inline_me (\ (tpl_A1 :: GHC.Base.Int) ->
case tpl_A1 of tpl1_A1 { __DEFAULT -> Main.MkA tpl1_A1 })
which I take to mean simply:
Main.$WMkA = Main.MkA