Skip to content

nkaretnikov/OOHaskell

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

(C) 2004-2010, Oleg Kiselyov, Ralf Laemmel, Keean Schupke

OOHaskell -- Haskell's overlooked object system

----------------------------------------------------------------------

Getting the code

> darcs get http://code.haskell.org/OOHaskell

----------------------------------------------------------------------

----------------------------------------------------------------------

The code relies on the HList library.
(The Makefile attempts to find HList in the same root dir as OOHaskell.)
The code has been released for GHC 6.4.
See the Makefile for ways of running test cases.

Here is a brief overview on the sample files:

- SimpleIO.hs        -- Simple objects in classes; in the IO monad
- SimpleST.hs        -- Incomplete variation using the ST monad
- CircBuffer.hs      -- A typical polymorphic collection type
- Selfish.hs         -- Open recursion and inheritance examples
- Shapes*.hs         -- Several encodings of the shapes example
- SelfReturn.hs      -- Returning self; almost
- CovariantArgs.hs   -- Co-variant argument types as in Eiffel
- EiffelFaqLcon.hs   -- Co-variance example from Eiffel FAQ
- CovariantReturn.hs -- Co-variant return types as in Java 5
- RecList.hs         -- Iso-recursive types; recursive classes
- Nominal*.hs        -- Nominal types; nominal subtype polymorphism
- DynamicOo.hs       -- Dynamics for OOHaskell objects
- DeepNarrow.hs      -- A narrow operation for deep subtyping
- DeepSubtyping.hs   -- Examples for width vs. depth subtyping
- New.hs             -- Operations for safe value recursion
- SelfishSafe.hs     -- Many examples with safe value recursion


Non-OOHaskell examples:

- Weirich	-- The C++ implementation from the Shapes Code Suite.
- Rathman	-- The Haskell implementation from the Shape Code Suite.
- Shapes1 ..    -- non-OOHaskell-based implementations of shapes example.
- ...           -- See other subdirs in repository/shapes

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages