DeepRuby: Extending Ruby with Dual Deep Instantiation

Activity: Talk or presentationContributed talkscience-to-science

Description

Clabjects, the central construct of multi-level modeling, overcome the strict separation of class and object in conceptual modeling. Ruby, a dynamic object-oriented programming language, similarly treats classes as objects and thus appears as a natural candidate for implementing clabject-based modeling constructs. In this paper we introduce DeepRuby, a Ruby implementation of the core constructs of Dual Deep Instantiation: clabject hierarchies and attributes with separate source potency and target potency. DeepRuby represents clabjects at two layers: the clabject layer and the clabject facet layer. At the clabject facet layer, a clabject with maximum source potency i-1 and maximum target potency j-1 is represented by a matrix of i × j clabject facets organized using Ruby’s superclass and eigenclass constructs. Clabject facets can easily be extended with behaviour implemented in custom methods. Keywords: Multilevel Modeling, Deep Metamodeling, Programming Languages, Ruby, Object-oriented Programming
Period19 Sept 2017
Event title4th International Workshop on Multi-Level Modelling (MULTI 2017), co-located with the ACM/IEEE 20th International Conference on Model Driven Engineering Languages and Systems (MODELS 2017), MODELS (Satellite Events), September 17-22, 2017, Austin, Te
Event typeConference
LocationUnited StatesShow on map

Fields of science

  • 102028 Knowledge engineering
  • 102016 IT security
  • 102027 Web engineering
  • 502050 Business informatics
  • 503008 E-learning
  • 102 Computer Sciences
  • 102030 Semantic technologies
  • 102033 Data mining
  • 102010 Database systems
  • 102015 Information systems
  • 102025 Distributed systems

JKU Focus areas

  • Management and Innovation
  • Computation in Informatics and Mathematics