dynamic-object: Object-oriented programming with duck typing and singleton classes.

[ bsd3, data, library ] [ Propose Tags ]

This package aims to combine the merit of Haskell's open, strong type system with flexible Object-oriented programming found in dynamically-typed languages such as python or ruby.

Objects are implemented as Maps from method keys to values. Each key specifies its own value types. You can add new members at runtime, for any instances of the object (singleton class). At the same time, you have typed and runtime-error-free access to the members (duck typing).

See Data.Object.Dynamic.Examples.PointParticle for examples.

Versions 0.1.0.0, 0.1.0.1, 0.2, 0.2.0.1, 0.2.1
Dependencies base (>=4.5 && <5), containers (>=0.4), lens (>=3.7.3), mtl (>=2.1), QuickCheck, text, transformers (>=0.3) [details]
License BSD-3-Clause
Author Takayuki Muranushi
Maintainer muranushi@gmail.com
Category Data
Source repo head: git clone https://github.com/nushio3/dynamic-object
Uploaded by TakayukiMuranushi at Tue Jan 15 08:18:50 UTC 2013
Distributions NixOS:0.2.1
Downloads 1931 total (16 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]
Hackage Matrix CI

Modules

[Index]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees