Girish Mahajan (Editor)

Joose (framework)

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Developer(s)
  
Malte Ubl

License
  
New BSD License

Written in
  
JavaScript

Joose (framework)

Stable release
  
2.1 / August 2, 2009 (2009-08-02)

Type
  
Web application framework

Joose is an open-source self-hosting metaobject system for JavaScript with support for classes, inheritance, mixins, traits and aspect-oriented programming.

The Joose meta-object system is multi-paradigm. It supports class-based and prototype-based programming styles as well as class-based inheritance and role-based extension. While other JavaScript frameworks often specialize on DOM-access and AJAX, Joose specializes solely on bringing successful programming techniques to the JavaScript scripting language. Joose is thus often used in conjunction with another DOM/Ajax JavaScript framework and is tested with jQuery, YUI, Dojo, ExtJS, Prototype, Mootools and PureMVC.

Joose was heavily inspired by Moose, the object system for Perl 5 which was itself inspired by Perl 6 object system, but unlike Perl and Moose, Joose doesn't support multiple inheritance.

Example

Two classes written in Joose:

Point3D is a subclass of Point. It has another attribute defined and additional code to run after running the superclass clear() method. The "rw" means the attribute is readable and writable with a pair of get/set accessors generated automatically.

References

Joose (framework) Wikipedia