Home
Reading
Searching
Subscribe
Sponsors
Statistics
Posting
Contact
Spam
Lists
Links
About
Hosting
Filtering
Features Download
Marketing
Archives
FAQ
Blog
 
Gmane
From: Gwern Branwen <gwern0 <at> gmail.com>
Subject: ANN: Mueval 0.5.1, 0.6, 0.6.1, 0.6.2, 0.6.3, 0.6.4
Newsgroups: gmane.comp.lang.haskell.cafe
Date: Thursday 21st August 2008 21:00:16 UTC (over 9 years ago)
Evening folks. So it's that time again, to do a Mueval announcement! This
time I'd like to announce version 0.6.4, & 0.6.3. And 0.6.2. And 0.6.1. And
0.6. And 0.5.1.

These releases have some nice stuff to them; perhaps the most interesting
aspect is that I've carried through on my threats^Wpromises, and Lambdabot
in #haskell now uses Mueval.

GETTING
All the stuff from the previous ANNs still apply here: you can get it at
<http://hackage.haskell.org/cgi-bin/hackage-scripts/package/mueval>,
do a 'darcs get --lazy http://code.haskell.org/mubot/',
cabal-install mueval, and so on.

DEPENDENCIES
0.6.4 does add an additional dependency, on haskell-src-exts, for use in
some experimental parsing code, so you'll now need that in addition to
Hint, utf8-string, and show. (Upgrading Hint is mandatory, utf8-string
unnecessary, and show nice but certainly not necessary.)

BUILDING
Same as usual.

CHANGES
0.5.1
* SmallCheck support

0.6
* A new option, --loadfile, which loads a given *.{l}hs file with a module
and makes its function available for evaluation. This is a complex option;
see the README.
* Cleaner output, thanks to a needless show call sjanssen identified.

0.6.2
* Speed improvements (shorter timeouts, optimizations)
* Mueval imports many more modules by default, so one can freely use
standard functions from Control.Monad, for example; this also brings with
it many test examples from #haskell.
* experimental --noimports flag, to disable default imports (such as the
above, and also of the Prelude). This was motivated by Lambdabot's
Caleskell, but I'm not sure why it doesn't interact well with --loadfile
(and so doesn't work with Lambdabot).

0.6.3
* Saizan contributed some significant improvements to error reporting and
thread handling, so the infamous time-out errors are replaced by normal
errors more reminiscent of GHCi.

0.6.4
* Fixed an issue with lazy printing of results
* Exceptions are now caught and printed more prettily; again, thanks to
Saizan
* Forced a dependency on the latest Hint; this fixes an error where one
could successfully evaluate:
 bash-3.2$ mueval -e '1 + 1 {- addition example -}'
 2
but not:
 bash-3.2$ mueval -e '1 + 1 -- addition example'

* Added a --rlimits option. I decided that the POSIX resource limits were
causing too many people problems. So now non-time resource limits are
disabled unless specifically requested with --rlimits.
* mmorrow contributed some experimental parsing patches intended to catch
subtle invocations of dangerous functions. If haskell-src-exts is too
burdensome a dependency, Mueval/Context.hs and mueval.cabal can be easily
edited to remove the dependency.

KNOWN ISSUES
* Qualified imports do not work. That is, one cannot do $ mueval -e 'M.map
(+1) $ M.fromList [(1,2)]' or whatever and expect the proper Data.Map
functions to be substituted in. This is a weakness in the GHC API, AFAIK.
It is possible that this will be fixed in future versions of Hint or GHC,
but I do not expect that to happen for months.
* Many limits in System.Posix.Resource are simply completely broken for
many users; that is, *no* value can be set using them. I have been unable
to figure out the heck why this is the case (I can't reproduce it), and
AFAIK no one has filed a bug with the GHC developers, so this probably
won't be fixed anytime soon.

--
gwern
Secure wwics P415 SASP Comirex mailbomb ISADC Sayeret SBI Jatti
 
CD: 3ms