Difference between revisions of "Yhc"
Jump to navigation
Jump to search
NeilMitchell (talk | contribs) |
(Added Category:Orphaned projects) |
||
(37 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
{{Yhc}} |
{{Yhc}} |
||
+ | |||
+ | '''Yhc is no longer actively developed or maintained - see this [http://yhc06.blogspot.com/2011/04/yhc-is-dead.html blog post].''' |
||
[[Image:Yhc_Logo.png|Yhc Logo]] <span style="font-size:24pt;font-weight:bold;">- York Haskell Compiler</span> |
[[Image:Yhc_Logo.png|Yhc Logo]] <span style="font-size:24pt;font-weight:bold;">- York Haskell Compiler</span> |
||
⚫ | |||
− | <p style="border:2px solid red;background-color:#ffb;margin:20px;margin-left:50px;margin-right:50px;padding:3px;"> |
||
− | <b>Warning:</b><br/> |
||
⚫ | |||
− | This project is run by 3 York [ex-]students, and is not an official York Uni project. |
||
− | </p> |
||
+ | == Installing Yhc == |
||
− | See the official home page at http://www.cs.york.ac.uk/~ndm/yhc/ (Most of that page will be moved to the wiki over time). There is also the [http://haskell.org/hawiki/Yhc old haskell wiki] pages, which need migrating. |
||
+ | |||
+ | * Windows users - See the instructions to get a [[/Snapshots|snapshot]]. |
||
+ | * Other users - See the [[/Building|building]] guide. |
||
+ | |||
+ | == Further information == |
||
+ | |||
+ | * [http://yhc06.blogspot.com/ Blog] |
||
+ | * [http://haskell.org/mailman/listinfo/yhc Mailing List] - users and developers |
||
+ | * [http://www.indiegigs.co.uk:8010/ Build bot] - build status reports |
||
+ | * [http://code.google.com/p/yhc/issues/list Bug tracker] |
||
+ | * [http://www.cs.york.ac.uk/fp/yhc/snapshot/docs/ Haddock documentation] |
||
+ | * [http://darcs.haskell.org/darcsweb/darcsweb.cgi?r=yhc;a=summary Darcs Web] |
||
== Yhc Manual == |
== Yhc Manual == |
||
Line 18: | Line 28: | ||
#* [[/FAQ/]] - Frequently Asked Questions |
#* [[/FAQ/]] - Frequently Asked Questions |
||
#* [[/Tutorial|Using Yhc]] - short tutorial on yhc, yhi, yhe |
#* [[/Tutorial|Using Yhc]] - short tutorial on yhc, yhi, yhe |
||
+ | #* [[/HCAR|HCAR Entries]] - small overview progress reports |
||
# [[/Options/]] - command line options and environment variables |
# [[/Options/]] - command line options and environment variables |
||
− | # [[/Building |
+ | # [[/Building|Building]] - building yhc from source |
+ | #* [[/Buildbot|Buildbot]] - regular Yhc builds |
||
+ | #* [[/Snapshots|Snapshots]] - Windows binary snapshots |
||
# [[/Hacking/]] - how to hack on Yhc |
# [[/Hacking/]] - how to hack on Yhc |
||
#* [[/Porting/]] - how to port Yhc to a new architecture/platform |
#* [[/Porting/]] - how to port Yhc to a new architecture/platform |
||
+ | #* [[/Debug flags|Debug Flags]] - flags to help debug the compiler |
||
+ | #* [[/Primitives|Primitives]] - information about the primitives |
||
# [[/RTS|Runtime System]] - information on the runtime system |
# [[/RTS|Runtime System]] - information on the runtime system |
||
#* [[/RTS/Machine|Machine]] - the virtual machine architecture |
#* [[/RTS/Machine|Machine]] - the virtual machine architecture |
||
Line 28: | Line 43: | ||
#* [[/RTS/hbc|.hbc format]] |
#* [[/RTS/hbc|.hbc format]] |
||
#* [[/RTS/Bytecodes|Bytecodes]] |
#* [[/RTS/Bytecodes|Bytecodes]] |
||
+ | #* [[/RTS/Concurrency|Concurrency]] - how this is implemented |
||
⚫ | |||
+ | # Applications - additional tools for use with Yhc |
||
+ | #* [[/Yhe|Yhe]] - the evaluator (like GHCi) |
||
+ | #* [[/Pyhi|Pyhi]] - the python runtime |
||
+ | #* [[/Javascript|Javascript]] - Javascript back end |
||
+ | #* [[Yhc_web_service|Yhc web service]] - zero-install use of [[/Javascript|Javascript back end]] |
||
⚫ | |||
#* [[/API/Core|Yhc Core]] - similar to GHC Core, but for Yhc |
#* [[/API/Core|Yhc Core]] - similar to GHC Core, but for Yhc |
||
#* [[/API/Bytecode|Bytecode API]] - Haskell API to play with .hbc files |
#* [[/API/Bytecode|Bytecode API]] - Haskell API to play with .hbc files |
||
− | #* [[/API/Compiler|Compiler API]] - Haskell API for playing with Haskell files |
+ | #* [[/API/Compiler|Compiler API]] - Haskell API for playing with Haskell files (pending) |
− | #* [[/API/Interpreter|Interpreter API]] - C API for running .hbc files |
+ | #* [[/API/Interpreter|Interpreter API]] - C API for running .hbc files (pending) |
− | # [[/Ideas|Ideas]] |
+ | # [[/Ideas|Ideas]] - these are all for the future |
+ | #* [[/Todo|Todo]] - things on the todo list |
||
− | #* [[/Gtk2Hs|Gtk2Hs]] |
+ | #* [[/Gtk2Hs|Gtk2Hs]] - porting Gtk2Hs to Yhc |
− | |||
+ | #* [[/HeapProfiling|Heap Profiling]] |
||
− | == Notes == |
||
+ | #* [[/Path Handling|Path Handling]] - how file paths should be used |
||
− | |||
+ | #* [[/Erlang/Proof_of_concept|Compilation to Erlang]] - new backend for Erlang VM (Haskell on BEAMs) may start here |
||
− | These are work in progress notes etc, about things we would like to do, or are going to do soon. |
||
+ | #* [http://spreadsheets.google.com/pub?key=pwq-dUByH2-cC8hmKIoRdBg&output=pdf&gid=0 Yhc Core Primitives Proposal] - a Google spreadsheet (published as PDF) which contains the proposed set of Yhc Core primitives in the light of the possibility to have multiple back-ends and front-ends |
||
+ | #* [[/Core_conversion_infrastructure|Yhc Core Conversion Infrastructure]] - aimed at creation of complete Yhc Core toolchain |
||
+ | # [[/Notes|Notes]] - random notes collection |
||
− | == |
+ | == Contributors == |
+ | The "Yhc team" consists of a bunch of friend people, who enjoy doing this kind of thing. We include Tom Shackell, Neil Mitchell, Andrew Wilkinson, Mike Dodds, Bob Davie, Dimitry Golubovsky (insert your name here) |
||
− | These are all the pages within the Yhc domain |
||
+ | ==See also== |
||
− | How do you do a pagelist with this new wiki software? |
||
+ | *[[Catch]] |
||
[[Category:Implementations]] |
[[Category:Implementations]] |
||
+ | [[Category:Orphaned projects]] |
Latest revision as of 18:03, 10 May 2011
Part of Yhc |
Yhc is no longer actively developed or maintained - see this blog post.
Warning, this compiler is not finished, and is not useable as a standard Haskell Compiler. It is also not an official York project.
Installing Yhc
Further information
- Blog
- Mailing List - users and developers
- Build bot - build status reports
- Bug tracker
- Haddock documentation
- Darcs Web
Yhc Manual
This is the official Yhc manual, feel free to edit it!
- Introduction - how to get it, who to contact
- FAQ - Frequently Asked Questions
- Using Yhc - short tutorial on yhc, yhi, yhe
- HCAR Entries - small overview progress reports
- Options - command line options and environment variables
- Building - building yhc from source
- Hacking - how to hack on Yhc
- Porting - how to port Yhc to a new architecture/platform
- Debug Flags - flags to help debug the compiler
- Primitives - information about the primitives
- Runtime System - information on the runtime system
- Machine - the virtual machine architecture
- Heap - how the heap is laid out
- Modules
- .hbc format
- Bytecodes
- Concurrency - how this is implemented
- Applications - additional tools for use with Yhc
- Yhe - the evaluator (like GHCi)
- Pyhi - the python runtime
- Javascript - Javascript back end
- Yhc web service - zero-install use of Javascript back end
- API's - API (programmer libraries) available
- Yhc Core - similar to GHC Core, but for Yhc
- Bytecode API - Haskell API to play with .hbc files
- Compiler API - Haskell API for playing with Haskell files (pending)
- Interpreter API - C API for running .hbc files (pending)
- Ideas - these are all for the future
- Todo - things on the todo list
- Gtk2Hs - porting Gtk2Hs to Yhc
- Heap Profiling
- Path Handling - how file paths should be used
- Compilation to Erlang - new backend for Erlang VM (Haskell on BEAMs) may start here
- Yhc Core Primitives Proposal - a Google spreadsheet (published as PDF) which contains the proposed set of Yhc Core primitives in the light of the possibility to have multiple back-ends and front-ends
- Yhc Core Conversion Infrastructure - aimed at creation of complete Yhc Core toolchain
- Notes - random notes collection
Contributors
The "Yhc team" consists of a bunch of friend people, who enjoy doing this kind of thing. We include Tom Shackell, Neil Mitchell, Andrew Wilkinson, Mike Dodds, Bob Davie, Dimitry Golubovsky (insert your name here)