nicolas-van / Ring.js
Licence: mit
Ring.js - JavaScript Class System with Multiple Inheritance
Stars: ✭ 223
Programming Languages
javascript
184084 projects - #8 most used programming language
Labels
Projects that are alternatives of or similar to Ring.js
Stampit
OOP is better with stamps: Composable object factories.
Stars: ✭ 3,021 (+1254.71%)
Mutual labels: object-oriented, class
BashClass
BashClass is an Object Oriented Programming language that compiles to BASH 4.4
Stars: ✭ 40 (-82.06%)
Mutual labels: class, object-oriented
Struct2ts
Generate Typescript classes/interfaces out of Go structs
Stars: ✭ 116 (-47.98%)
Mutual labels: class
Lw oopc
modified from http://sourceforge.net/projects/lwoopc/
Stars: ✭ 159 (-28.7%)
Mutual labels: object-oriented
Eclipse Collections
Eclipse Collections is a collections framework for Java with optimized data structures and a rich, functional and fluent API.
Stars: ✭ 1,828 (+719.73%)
Mutual labels: object-oriented
React Universal Hooks
🎉 React Universal Hooks : just use****** everywhere (Functional or Class Component). Support React DevTools!
Stars: ✭ 148 (-33.63%)
Mutual labels: class
Papers Notebook
📄 🇨🇳 📃 论文阅读笔记(分布式系统、虚拟化、机器学习)Papers Notebook (Distributed System, Virtualization, Machine Learning), created by @gaocegege
Stars: ✭ 1,678 (+652.47%)
Mutual labels: class
Kinx
Looks like JavaScript, feels like Ruby, and it is a script language fitting in C programmers.
Stars: ✭ 134 (-39.91%)
Mutual labels: object-oriented
Db
Newt DB is a Python object-oriented database with JSONB-based access and search in PostgreSQL
Stars: ✭ 132 (-40.81%)
Mutual labels: object-oriented
Algo ds notes
It is a repository that is a collection of algorithms and data structures with implementation in various languages.
Stars: ✭ 1,897 (+750.67%)
Mutual labels: object-oriented
Python And Oop
Object-Oriented Programming concepts in Python
Stars: ✭ 123 (-44.84%)
Mutual labels: class
Elena Lang
ELENA is a general-purpose language with late binding. It is multi-paradigm, combining features of functional and object-oriented programming. Rich set of tools are provided to deal with message dispatching : multi-methods, message qualifying, generic message handlers, run-time interfaces
Stars: ✭ 161 (-27.8%)
Mutual labels: object-oriented
Ddd On Scala
DDD sample implementation by Scala.
Stars: ✭ 113 (-49.33%)
Mutual labels: object-oriented
Ood Principles In Swift
💎 The Principles of OOD (SOLID) based on Uncle Bob articles.
Stars: ✭ 1,710 (+666.82%)
Mutual labels: object-oriented
Ring.js
Ring.js is a class system in JavaScript allowing multiple inheritance.
var Human = ring.create({
talk: function() {
return "hello";
},
});
var Spider = ring.create({
climb: function() {
return "climbing";
},
});
var SpiderMan = ring.create([Spider, Human], {
talk: function() {
return this.$super() + ", my name is Peter Parker";
}
});
var spiderman = new SpiderMan();
console.log(spiderman.talk());
Its advantages:
- Stop fighting against JavaScript prototype-based object oriented system. Use a class system like you would in Java, Python, or basically any well-known language.
- Available in the browser or in node.js. Also works with require.js.
- The inheritance system is inspired by Python, one of the best multiple inheritance system ever.
- Provides compatibility with other JavaScript class systems, like CoffeeScript or Backbone.
- Licensed under the MIT license.
- Damn, multiple inheritance just rocks!
To get started, read the tutorial.
There is also a FAQ available here.
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].