Hello,
What semantics are you using for recursive modules? As far as I see, if
you take a least fixed point semantics (e.g. as described in A Formal
Specification for the Haskell 98 Module System,
http://yav.github.io/publications/modules98.pdf ) this program is incorrect
as the module does not
: Re: Aliasing current module qualifier
Hello,
What semantics are you using for recursive modules? As far as I see, if you
take a least fixed point semantics (e.g. as described in A Formal
Specification for the Haskell 98 Module System,
http://yav.github.io/publications/modules98.pdf
Yes, that is the semantics I use for recursive module imports in jhc. And
you are right in that it does not accept those examples due to being unable
to bootstrap the least fixed point.
How would the 'as M' proposal interact? Would it actually be new entries in
the name table or rewritten as a
Hello *,
Here's a situation I've encountered recently, which mades me wish to be
able to define a local alias (in order to avoid CPP use). Consider the
following stupid module:
module AnnoyinglyLongModuleName
( AnnoyinglyLongModuleName.length
, AnnoyinglyLongModuleName.null
On a somewhat related note, I'd love to be able to do this in Haskell:
import Basics.Nat renaming (_≥_ to _≥ℕ_)
(this is taken from Agda).
Janek
Dnia poniedziałek, 29 września 2014, Herbert Valerio Riedel napisał:
Hello *,
Here's a situation I've encountered recently, which mades me wish
Hi,
rather than disambiguating a name from the current module by an
abbreviated module name, I would prefer a disambiguation as is done for
local names that shadows existing bindings. Then only imported names
would need to be qualified (possibly using shorter module names).
So names of the
On Mon, Sep 29, 2014 at 4:19 AM, Herbert Valerio Riedel h...@gnu.org wrote:
Now it'd be great if I could do the following instead:
module AnnoyinglyLongModuleName (M.length, M.null) where
import AnnoyinglyLongModuleName as M -- - does not work
I think if I wanted this syntax, I'd
You don't need a new language construct, what i do is:
module AnnoyinglyLongModuleName (M.length, M.null) where
import AnnoyinglongLongModuleName as M
I think ghc would need to be extended a little to make this convienient as
it doesn't handle recursive module imports as transparently.
On Mon, Sep 29, 2014 at 5:02 PM, John Meacham j...@repetae.net wrote:
You don't need a new language construct, what i do is:
module AnnoyinglyLongModuleName (M.length, M.null) where
import AnnoyinglongLongModuleName as M
Isn't that exactly what the OP said doesn't work?
On Mon,