Core package: attempt #1

Bulat Ziganshin bulat.ziganshin at gmail.com
Tue Oct 3 10:06:10 EDT 2006


Hello glasgow-haskell-users,

i've uploaded my first attempt to define Core package as
http://www.haskell.org/bz/core20061003.tar.gz

you should use -fno-implicit-prelude to compile it with GHC.
it also compiles with Hugs, although zeroInt and other constant
definitions are definitely wrong :)  it's impossible to define them
before fromInteger arrived!

as you can see, compiler-specific definitions are very short here,
much of code is in compiler-independent modules. i hope that adding yhc
and jhc support should be rather simple

of course, it's just proof-of-concept implementation and it shows me
that Igloo was not too wrong ;) - it's really hard to define anything in
absence of type classes with at least Int/Integer instances of them

so now i want to try another way, that is rather like GHC.* actual
implementation - define rather large Core.Base module that will
contain all the base classes together with Int/Integer implementations
so that all the circular dependencies will be satisfied

so while my original proposal was to use Core.* modules as "equalizer"
which implements the same class-less interface for all compilers (Int,
eqInt, addInt...) - now i will add to Core.* implementation of base
classes which will make "equalizing" a much easier (look, for example,
how i implemented now divInt in Core.Int)


-- 
Best regards,
 Bulat                          mailto:Bulat.Ziganshin at gmail.com



More information about the Glasgow-haskell-users mailing list