Difference between revisions of "Performance/Yhc"

From HaskellWiki
Jump to navigation Jump to search
m (Performance:Yhc moved to Performance/Yhc)
(No difference)

Revision as of 20:23, 20 January 2006

Haskell Performance Resource

Constructs:
Data Types - Functions
Overloading - FFI - Arrays
Strings - Integers - I/O
Floating point - Concurrency
Modules - Monads

Techniques:
Strictness - Laziness
Avoiding space leaks
Accumulating parameter

Implementation-Specific:
GHC - nhc98 - Hugs
Yhc - JHC

Yhc is not optimised for speed, and as such does not infer strictness information, and does not honour any specialise pragmas. If your program is time critical, using GHC would probably be a better bet. In particular, Yhc does no inlining, so if you have a time critical inner loop and have to use Yhc, then inlining manually would probably be a good idea.

Yhc is optimised for small size useage, and should require less heap space than other compilers. There are no space optimisations that can be made that will help Yhc, beyond those which are useful for all Haskell compilers.