Home
Features
Documentation
Downloads
Known Bugs
Publications
Contributors
Contact
FP at the UU
Center
Center
Home
Courses
People
Projects
Page
Edit Page
Rename Page
Attach File
Printable
Wiki Source
More ...
Web
Recent Changes
Notify Service
News
Page Index
Search
More ...
Wiki
About TWiki
Text Formatting
Registration
Change Password
Reset Password
Users
Groups
Log In
or
Register
Documentation
Helium
There are three ways of working with Helium, each with their own intended audience. First off, there is the standalone Helium compiler, invoked by running the =helium= program. It's main purpose is to be called from the more user-friendly interactive tools that are part of the Helium distribution, or to be called from other programs, batch files, scripts or make files. It is not very user-friendly, because you have to tell it everything it needs to know about all over again. To actually execute a program, you need to run =lvmrun= on the output of =helium=. The two other possible ways of working with Helium are by means of =texthint= and =Hint=. The former is a text-based interactive environment, much like =ghci= and =hugs=, although with fewer capabilities. The advantage of =texthint= is that is can be used quite easily, and it will be built along with the Helium compiler. We use =texthint= ourselves to quickly try out a few expressions. =Hint=, on the other hand, is an interpreter with a graphical interface. It has buttons to be pushed, and pull-down menus. For the ordinary user, =Hint= is the best choice. An additional advantage of =Hint= is that you can teach it to load source files that you are working on into your favourite editor. In this way, you can jump directly to the place in your source file where you made a mistake. The drawback of using =Hint= is that you need Java and Ant on your system to compile and use it. For each of the three ways we have a separate manual. The interpreters can pass along parameters of your choice to the Helium compiler, so even if you are planning to use only the interpreters, it is best to start off by reading The Basics of the Helium compiler manual first. * [[The compiler user manual]]: how to use the Helium compiler. * [[The texthint user manual]]: using the textual interpreter. * [[The Hint user manual]]: using the graphical interpreter. In all cases, the above documentation discuss Helium version 1.7 (including pre-releases). Version 1.7 and higher differ in quite a few places from versions 1.6 and lower. Other issues of note: * [[A note on editors]]: some words of advice. * [[A tour of the Helium Prelude]]: an overview of almost all of the (non-overloaded) Prelude. Each function is clarified by at least its type, examples of its use and a description. * [[Differences with Haskell '98]] * [[http://www.cs.kent.ac.uk/people/staff/sjt/craft2e/][The Craft of Functional Programming]]: this book by Simon Thompson can be used with Helium. If you are aware of other books on Haskell where this is possible, please let [[ContactInformation][us]] know. * The [[HUT.AttributeGrammarSystem][UUAGC]] system was used heavily in the construction of Helium. * Research publications can be found under [[Publications]]. -- Main.JurriaanHage - 14 Apr 2008