[Yhc] YHC build finished successfully, but install is not "fairly trivial"

Neil Mitchell ndmitchell at gmail.com
Thu Dec 22 08:12:57 EST 2005


Hi Jared,

> (1) I had to set up an environment variable
> YHC_BASE_PATH to point there
Yes, YHC_BASE_PATH is an ugly wart in the YHC compiler, we're going to
do some work to try and remove it, or at least make it required less
often. Ideally it should "guess" where your base path is, and
YHC_BASE_PATH should only be for people who want to put it somewhere
weird. YHC_BASE_PACKAGE should point at the inst directory. Its used
so the compiler and runtime can find the Haskell packages.


> The question is, why does running my factorial program trigger a
> Data.Ratio error?
Because you used numbers, that requires Data.Ratio. If your program
had been putStrLn "hello world" then this wouldn't have happened. Its
unfortunate that particular .hbc file is not copied by the makefile -
thats a bug in the makefile! For now just manually copy the Ratio.hbc
over.

> ... I can't really get most of the test suite to run. (Here is a link
> to the error output stream of runtests.py:
> http://www.updike.org/~jared/here/err.txt (164kB))
The python script is now depreciated, in src/tester there is a new
Haskell testing script. No one has yet run it from Unix, but its built
on Windows.

Your test report isn't that bad - the latest windows version gives
this: http://www-users.cs.york.ac.uk/~ndm/yhc/report.html - you can
see there are still quite a lot of failures. Most of those problems
are pretty trivial - missing modules and other small things. We will
probably have a good go at reducing the regression test errors to 0 in
January sometime.

btw, your emails both sent to the list successfully.

With regards to your comments about flat vs heirarchical: The original
flat module space is defined in the Haskell 98 report, and used by
lots of Haskell programs. Since that time, Heirarchical modules were
introduced which include lots of additional functionality. yhc-base is
the standard modules for Yhc, and these do most of the work. The flat
module structure is retained for compatability with programs using the
Haskell98 module structure, most of these just import the appropriate
heirarchical module and re-export stuff.

> P.S. I am still really excited about YHC!
Good :) I hope we can get you through these little glitches! If you
have anymore questions just send an email off to us.

Thanks

Neil


More information about the Yhc mailing list