SlideShare ist ein Scribd-Unternehmen logo
1 von 15
The Very Model of a Modern Metamodeler
MODELSWARD 2019, Prague, Czech Republic
22 February 2019
Ed Seidewitz
Chief Technology Officer
Model Driven Solutions
Page 2
Going “Meta”
22 February 2018
Pickles by Brian Crane for October 04, 2018
Page 3
Metaphysics
22 February 2018
Wrote a series of books collectively called Physics
(Φυσικὴ, “On nature”).
Followed by unnamed books later collectively called
Metaphysics (μετά Φυσικὴ, “After Physics”).
Metaphysics is a reflection on the “why of things”.
Nature
Reflections on nature
(“2nd philosophy”)
Reflections on
reflections on nature
(“1st philosophy”)
Aristotle 4th century BC
“Meta”
Page 4
Metalanguage
22 February 2018
David Hilbert 1862 – 1943
In 1920, introduced metamathematics, a project to
use mathematical methods to study mathematics.
A metalanguage was used to discuss the language
of mathematics.
Mathematical logicians now commonly use
metalanguage to mean the language used to define
a formal logic language.
World
Mathematics
(language)
Metamathematics
(metalanguage)
Page 5
Metacircularity (1)
22 February 2018
Kurt Gödel 1906 – 1978
In 1931, published two incompleteness theorems.
Used Gödel numbering to reduce number theory
proofs to arithmetic operations.
Proved the existence of a theorem stating This
theorem cannot be proved, which, if false, is
inconsistent, and, if true, cannot be proved in
number theory!
World
Mathematics
(language)
Metamathematics
(metalanguage)
Page 6
Metacircularity (2)
22 February 2018
https://www.flickr.com/photos/null0/272015955/ (cropped)
CC BY-SA 2.0
John McCarthy 1927 – 2011
In 1960, published Recursive Functions of Symbolic
Expressions and Their Computation by Machine, on
the design of Lisp, a “list processing” language.
Encoding Lisp meta-expressions as symbolic
expressions (lists), Lisp can be implemented in itself
metacircularly.
Lisp programmers actually use S-expressions.
Lists
Lisp program
(S-expressions)
Lisp definition
(M-expressions)
Machine code
Steve Russell 1937 – present
Implemented Lisp eval on the IBM 704.
https://commons.wikimedia.org/wiki/File:Len_Shustek,_CHM_2011.jpg (cropped)
CC BY-SA 2.0
Page 7
Metaclass
22 February 2018
Smalltalk 1980
Developed in the 1970s at Xerox PARC by Alan
Kay, Dan Ingalls, Adele Goldberg and others.
Object-oriented programming language in which
“everything is an object.”
The first publicly released version, Smalltalk-80,
introduced metaclasses.
Objects Class Metaclass
instance of instance of
Bytecode
Page 8
Metaobject
22 February 2018
Metaobject Protocol 1991
A metaobject protocol (MOP) gives “users the ability
to incrementally modify [a programming] language’s
behavior an implementation.”
This is done by allowing extensions to the
metaobjects that represent language elements.
The Art of the Metaobject Protocol, by Kiczales, des
Rivières and Bobrow, describes the MOP for the
Common Lisp Object System (CLOS).
Objects Class Metaclass
instance of instance of
Metaobject extension Metaclass extension
Page 9
Metamodel
22 February 2018
Meta Object Facility (MOF) 1999 – 2016
MOF is “the basis for metamodel [abstract syntax]
definition in [Object Management Group’s] family of
[modeling] languages”.
Since MOF 2.0, “based on a simplification of [the]
class modeling capabilities” of UML.
Date: November 2016
OMG Meta Object Facility (MOF) Core Specification
Version 2.5.1
OMG Document Number: formal/2016-11-01
Standard document URL: http://www.omg.org/spec/MOF/2.5.1
Associated Normative Machine-Readable Files:
http://www.omg.org/spec/MOF/20131001/MOF.xmi
Associated Non-normative Machine-Readable Files:
http://www.omg.org/spec/MOF/20131001/CMOFConstraints.ocl
http://www.omg.org/spec/MOF/20131001/EMOFConstraints.ocl
“Real world”
system
Model
(in UML)
Metamodel
(for UML)
“instance of” “instance of”
M0 M1 M2 M3
Four metalayer architecture
(deemphasized in MOF 2.x)
Meta-metamodel
(for MOF)
“instance of”
Page 10
Metasemantic Protocol
22 February 2018
ad/2017-12-02 RFP Template: ab/15-06-01
OMG RFP 9 December 2017 1
Object Management Group
109 Highland Avenue
Needham, MA 02494
USA
Telephone: +1-781-444-0404
Facsimile: +1-781-444-0320
rfp@omg.org
Systems Modeling Language (SysML®) v2
Request For Proposal (RFP)
OMG Document: ad/2017-12-02
Letters of Intent due: 24 September, 2018
Submissions due: 4 November, 2019
Systems Modeling Language (SysML) v2 2017 – ?
Since 2006, SysML has been the OMG-standard
UML profile for systems engineering.
In 2017, OMG issue a Request for Proposals (RFP)
for SysML version 2.
To meet user needs, SysML v2 requires a
syntactically and semantically user-extensible
metamodel.
“Real world”
system
Model
(in SysML)
Metamodel
(for SysML)
“instance of” “instance of”
Semantic extension Semantic model library
Builds on Kernel Modeling Language (KerML) work by Bock, Cole, Galey and others.
Page 11
System Model
22 February 2018
2435.0
A block is a class whose
instances are objects.
A value type is a class
whose instances are values.
An object has identity
and has properties that
can change over time.
A value does not have identity
separate from its value and is
immutable over time.
Both classes and
features have instances.
Page 12
2435.0
Semantic Model Library
22 February 2018
Library model
System model
System
“Block” and “value type” are just
syntactic markers for classes
that descend from the library
classes Object and Value.
Features of classes also
specialize (“subset”) general
library features.
Page 13
Quantities and Units Domain Model Library
22 February 2018
Base
Quantities
and Units
The base library model can be
extended with library models for
specific subject domains.
An individual is a model
of a class constrained to
a single instance.
Generic functions
on numeric values
can also operate on
quantity values.
Page 14
Quantities Units Usage
22 February 2018
Library model
System model
System 2435.0
The domain library adds
modeling capabilities to
the base language.
Page 15
Gone “Meta”!
General-purpose modeling languages…
…with rigourous semantics
…allowing for domain-specific specialization
…through semantic model libraries and
metasemantic protocols
22 February 2018
We need to
activate our
metacomic
protocol!

Weitere ähnliche Inhalte

Was ist angesagt?

Xe 구조에 대한 이해
Xe 구조에 대한 이해Xe 구조에 대한 이해
Xe 구조에 대한 이해
Dong Hyun Kim
 

Was ist angesagt? (18)

Design Patterns - Factory Method & Abstract Factory
Design Patterns - Factory Method & Abstract FactoryDesign Patterns - Factory Method & Abstract Factory
Design Patterns - Factory Method & Abstract Factory
 
Decorator Design Pattern
Decorator Design PatternDecorator Design Pattern
Decorator Design Pattern
 
Design pattern
Design patternDesign pattern
Design pattern
 
Factory Design Pattern
Factory Design PatternFactory Design Pattern
Factory Design Pattern
 
Lect6-An introduction to ontologies and ontology development
Lect6-An introduction to ontologies and ontology developmentLect6-An introduction to ontologies and ontology development
Lect6-An introduction to ontologies and ontology development
 
Domain Driven Design Tactical Patterns
Domain Driven Design Tactical PatternsDomain Driven Design Tactical Patterns
Domain Driven Design Tactical Patterns
 
基幹システム RDRAモデルサンプル
基幹システム RDRAモデルサンプル基幹システム RDRAモデルサンプル
基幹システム RDRAモデルサンプル
 
Design Patterns Presentation - Chetan Gole
Design Patterns Presentation -  Chetan GoleDesign Patterns Presentation -  Chetan Gole
Design Patterns Presentation - Chetan Gole
 
Introduction to Design Patterns and Singleton
Introduction to Design Patterns and SingletonIntroduction to Design Patterns and Singleton
Introduction to Design Patterns and Singleton
 
Xe 구조에 대한 이해
Xe 구조에 대한 이해Xe 구조에 대한 이해
Xe 구조에 대한 이해
 
presentation.pdf
presentation.pdfpresentation.pdf
presentation.pdf
 
Design Pattern For C# Part 1
Design Pattern For C# Part 1Design Pattern For C# Part 1
Design Pattern For C# Part 1
 
DDD - 2 - Domain Driven Design: Tactical design.pdf
DDD - 2 - Domain Driven Design: Tactical design.pdfDDD - 2 - Domain Driven Design: Tactical design.pdf
DDD - 2 - Domain Driven Design: Tactical design.pdf
 
Using Generative AI
Using Generative AIUsing Generative AI
Using Generative AI
 
Machine Intelligence Powerpoint Presentation Slides
Machine Intelligence Powerpoint Presentation SlidesMachine Intelligence Powerpoint Presentation Slides
Machine Intelligence Powerpoint Presentation Slides
 
vm meetup_tokyo #1 NSX の運用と DFW トラブルシューティング
vm meetup_tokyo #1 NSX の運用と DFW トラブルシューティングvm meetup_tokyo #1 NSX の運用と DFW トラブルシューティング
vm meetup_tokyo #1 NSX の運用と DFW トラブルシューティング
 
LLMs_talk_March23.pdf
LLMs_talk_March23.pdfLLMs_talk_March23.pdf
LLMs_talk_March23.pdf
 
A Practical Guide to Domain Driven Design: Presentation Slides
A Practical Guide to Domain Driven Design: Presentation SlidesA Practical Guide to Domain Driven Design: Presentation Slides
A Practical Guide to Domain Driven Design: Presentation Slides
 

Ähnlich wie The Very Model of a Modern Metamodeler

Lecture knowledge representationreasoning
Lecture knowledge representationreasoningLecture knowledge representationreasoning
Lecture knowledge representationreasoning
IKS - Project
 
USING ONTOLOGIES TO OVERCOMING DRAWBACKS OF DATABASES AND VICE VERSA: A SURVEY
USING ONTOLOGIES TO OVERCOMING DRAWBACKS OF DATABASES AND VICE VERSA: A SURVEYUSING ONTOLOGIES TO OVERCOMING DRAWBACKS OF DATABASES AND VICE VERSA: A SURVEY
USING ONTOLOGIES TO OVERCOMING DRAWBACKS OF DATABASES AND VICE VERSA: A SURVEY
cseij
 
GATE, HLT and Machine Learning, Sheffield, July 2003
GATE, HLT and Machine Learning, Sheffield, July 2003GATE, HLT and Machine Learning, Sheffield, July 2003
GATE, HLT and Machine Learning, Sheffield, July 2003
butest
 

Ähnlich wie The Very Model of a Modern Metamodeler (20)

The Object Model
The Object Model  The Object Model
The Object Model
 
Lecture knowledge representationreasoning
Lecture knowledge representationreasoningLecture knowledge representationreasoning
Lecture knowledge representationreasoning
 
Data integration with a façade. The case of knowledge graph construction.
Data integration with a façade. The case of knowledge graph construction.Data integration with a façade. The case of knowledge graph construction.
Data integration with a façade. The case of knowledge graph construction.
 
A Metamodel For Web Page Design
A Metamodel For Web Page DesignA Metamodel For Web Page Design
A Metamodel For Web Page Design
 
Embracing Social Software And Semantic Web In Digital Libraries
Embracing Social Software And Semantic Web In Digital LibrariesEmbracing Social Software And Semantic Web In Digital Libraries
Embracing Social Software And Semantic Web In Digital Libraries
 
Narratives that speak AI lingua? AI vocabulary in listed companies' annual re...
Narratives that speak AI lingua? AI vocabulary in listed companies' annual re...Narratives that speak AI lingua? AI vocabulary in listed companies' annual re...
Narratives that speak AI lingua? AI vocabulary in listed companies' annual re...
 
Presentation at MTSR 2012
Presentation at MTSR 2012Presentation at MTSR 2012
Presentation at MTSR 2012
 
USING ONTOLOGIES TO OVERCOMING DRAWBACKS OF DATABASES AND VICE VERSA: A SURVEY
USING ONTOLOGIES TO OVERCOMING DRAWBACKS OF DATABASES AND VICE VERSA: A SURVEYUSING ONTOLOGIES TO OVERCOMING DRAWBACKS OF DATABASES AND VICE VERSA: A SURVEY
USING ONTOLOGIES TO OVERCOMING DRAWBACKS OF DATABASES AND VICE VERSA: A SURVEY
 
Iot ontologies state of art$$$
Iot ontologies state of art$$$Iot ontologies state of art$$$
Iot ontologies state of art$$$
 
A Semantic Multimedia Web (Part 3)
A Semantic Multimedia Web (Part 3)A Semantic Multimedia Web (Part 3)
A Semantic Multimedia Web (Part 3)
 
SeMuDate-SAMT How To Align Media Metadata Schemas, Design And Implementation ...
SeMuDate-SAMT How To Align Media Metadata Schemas, Design And Implementation ...SeMuDate-SAMT How To Align Media Metadata Schemas, Design And Implementation ...
SeMuDate-SAMT How To Align Media Metadata Schemas, Design And Implementation ...
 
Tell me why! ain't nothin' but a mistake describing media item differences w...
Tell me why! ain't nothin' but a mistake  describing media item differences w...Tell me why! ain't nothin' but a mistake  describing media item differences w...
Tell me why! ain't nothin' but a mistake describing media item differences w...
 
0 computers and social sciences pmy 2330 lectures notes 2017
0 computers and social sciences pmy 2330 lectures notes 20170 computers and social sciences pmy 2330 lectures notes 2017
0 computers and social sciences pmy 2330 lectures notes 2017
 
Representing Art in Museums: Back to τεχνή
Representing Art in Museums: Back to τεχνήRepresenting Art in Museums: Back to τεχνή
Representing Art in Museums: Back to τεχνή
 
Heraclitus II: A Framework for Ontology Management and Evolution
Heraclitus II: A Framework for Ontology Management and EvolutionHeraclitus II: A Framework for Ontology Management and Evolution
Heraclitus II: A Framework for Ontology Management and Evolution
 
Leveraging Model-Driven Technologies for JSON Artefacts: The Shipyard Case Study
Leveraging Model-Driven Technologies for JSON Artefacts: The Shipyard Case StudyLeveraging Model-Driven Technologies for JSON Artefacts: The Shipyard Case Study
Leveraging Model-Driven Technologies for JSON Artefacts: The Shipyard Case Study
 
A N E XTENSION OF P ROTÉGÉ FOR AN AUTOMA TIC F UZZY - O NTOLOGY BUILDING U...
A N  E XTENSION OF  P ROTÉGÉ FOR AN AUTOMA TIC  F UZZY - O NTOLOGY BUILDING U...A N  E XTENSION OF  P ROTÉGÉ FOR AN AUTOMA TIC  F UZZY - O NTOLOGY BUILDING U...
A N E XTENSION OF P ROTÉGÉ FOR AN AUTOMA TIC F UZZY - O NTOLOGY BUILDING U...
 
A Metadata Application Profile for KOS Vocabulary Registries (KOS-AP)
A Metadata Application Profile for KOS Vocabulary Registries (KOS-AP)A Metadata Application Profile for KOS Vocabulary Registries (KOS-AP)
A Metadata Application Profile for KOS Vocabulary Registries (KOS-AP)
 
Will Robots Take all the Jobs? Not yet.
Will Robots Take all the Jobs? Not yet.Will Robots Take all the Jobs? Not yet.
Will Robots Take all the Jobs? Not yet.
 
GATE, HLT and Machine Learning, Sheffield, July 2003
GATE, HLT and Machine Learning, Sheffield, July 2003GATE, HLT and Machine Learning, Sheffield, July 2003
GATE, HLT and Machine Learning, Sheffield, July 2003
 

Mehr von Ed Seidewitz

Executable UML Roadmap (as of September 2014)
Executable UML Roadmap (as of September 2014)Executable UML Roadmap (as of September 2014)
Executable UML Roadmap (as of September 2014)
Ed Seidewitz
 
Essence: A Common Ground for Flexible Methods
Essence: A Common Ground for Flexible MethodsEssence: A Common Ground for Flexible Methods
Essence: A Common Ground for Flexible Methods
Ed Seidewitz
 
Succeeding with Agile in the Federal Government: A Coach's Perspective
Succeeding with Agile in the Federal Government: A Coach's PerspectiveSucceeding with Agile in the Federal Government: A Coach's Perspective
Succeeding with Agile in the Federal Government: A Coach's Perspective
Ed Seidewitz
 
Models, Programs and Executable UML
Models, Programs and Executable UMLModels, Programs and Executable UML
Models, Programs and Executable UML
Ed Seidewitz
 
Architecting Your Enterprise
Architecting Your EnterpriseArchitecting Your Enterprise
Architecting Your Enterprise
Ed Seidewitz
 

Mehr von Ed Seidewitz (20)

Leveraging Alf for SysML, Part 2: More Effective Trade Study Modeling
Leveraging Alf for SysML, Part 2: More Effective Trade Study ModelingLeveraging Alf for SysML, Part 2: More Effective Trade Study Modeling
Leveraging Alf for SysML, Part 2: More Effective Trade Study Modeling
 
Leveraging Alf for SysML, Part 1: Better Simulation Modeling
Leveraging Alf for SysML, Part 1: Better Simulation ModelingLeveraging Alf for SysML, Part 1: Better Simulation Modeling
Leveraging Alf for SysML, Part 1: Better Simulation Modeling
 
Precise Semantics Standards at OMG: Executing on the Vision
Precise Semantics Standards at OMG: Executing on the VisionPrecise Semantics Standards at OMG: Executing on the Vision
Precise Semantics Standards at OMG: Executing on the Vision
 
Model Driven Architecture without Automation
Model Driven Architecture without AutomationModel Driven Architecture without Automation
Model Driven Architecture without Automation
 
Using Alf with Cameo Simulation Toolkit - Part 2: Modeling
Using Alf with Cameo Simulation Toolkit - Part 2: ModelingUsing Alf with Cameo Simulation Toolkit - Part 2: Modeling
Using Alf with Cameo Simulation Toolkit - Part 2: Modeling
 
Using Alf with Cameo Simulation Toolkit - Part 1: Basics
Using Alf with Cameo Simulation Toolkit - Part 1: BasicsUsing Alf with Cameo Simulation Toolkit - Part 1: Basics
Using Alf with Cameo Simulation Toolkit - Part 1: Basics
 
Programming in UML: An Introduction to fUML 1.3 and Alf 1.1
Programming in UML: An Introduction to fUML 1.3 and Alf 1.1Programming in UML: An Introduction to fUML 1.3 and Alf 1.1
Programming in UML: An Introduction to fUML 1.3 and Alf 1.1
 
Hands On With the Alf Action Language: Making Executable Modeling Even Easier
Hands On With the Alf Action Language: Making Executable Modeling Even EasierHands On With the Alf Action Language: Making Executable Modeling Even Easier
Hands On With the Alf Action Language: Making Executable Modeling Even Easier
 
Standards-Based Executable UML: Today's Reality and Tomorrow's Promise
Standards-Based Executable UML: Today's Reality and Tomorrow's PromiseStandards-Based Executable UML: Today's Reality and Tomorrow's Promise
Standards-Based Executable UML: Today's Reality and Tomorrow's Promise
 
UML: This Time We Mean It!
UML: This Time We Mean It!UML: This Time We Mean It!
UML: This Time We Mean It!
 
A Unified View of Modeling and Programming
A Unified View of Modeling and ProgrammingA Unified View of Modeling and Programming
A Unified View of Modeling and Programming
 
UML as a Programming Language
UML as a Programming LanguageUML as a Programming Language
UML as a Programming Language
 
Executable UML Roadmap (as of September 2014)
Executable UML Roadmap (as of September 2014)Executable UML Roadmap (as of September 2014)
Executable UML Roadmap (as of September 2014)
 
Essence: A Common Ground for Flexible Methods
Essence: A Common Ground for Flexible MethodsEssence: A Common Ground for Flexible Methods
Essence: A Common Ground for Flexible Methods
 
UML: Once More with Meaning
UML: Once More with MeaningUML: Once More with Meaning
UML: Once More with Meaning
 
Succeeding with Agile in the Federal Government: A Coach's Perspective
Succeeding with Agile in the Federal Government: A Coach's PerspectiveSucceeding with Agile in the Federal Government: A Coach's Perspective
Succeeding with Agile in the Federal Government: A Coach's Perspective
 
UML 2.5: Specification Simplification
UML 2.5: Specification SimplificationUML 2.5: Specification Simplification
UML 2.5: Specification Simplification
 
Models, Programs and Executable UML
Models, Programs and Executable UMLModels, Programs and Executable UML
Models, Programs and Executable UML
 
Programming in UML: An Introduction to fUML and Alf
Programming in UML: An Introduction to fUML and AlfProgramming in UML: An Introduction to fUML and Alf
Programming in UML: An Introduction to fUML and Alf
 
Architecting Your Enterprise
Architecting Your EnterpriseArchitecting Your Enterprise
Architecting Your Enterprise
 

Kürzlich hochgeladen

Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
chiefasafspells
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
masabamasaba
 

Kürzlich hochgeladen (20)

%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
WSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security ProgramWSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security Program
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
 

The Very Model of a Modern Metamodeler

  • 1. The Very Model of a Modern Metamodeler MODELSWARD 2019, Prague, Czech Republic 22 February 2019 Ed Seidewitz Chief Technology Officer Model Driven Solutions
  • 2. Page 2 Going “Meta” 22 February 2018 Pickles by Brian Crane for October 04, 2018
  • 3. Page 3 Metaphysics 22 February 2018 Wrote a series of books collectively called Physics (Φυσικὴ, “On nature”). Followed by unnamed books later collectively called Metaphysics (μετά Φυσικὴ, “After Physics”). Metaphysics is a reflection on the “why of things”. Nature Reflections on nature (“2nd philosophy”) Reflections on reflections on nature (“1st philosophy”) Aristotle 4th century BC “Meta”
  • 4. Page 4 Metalanguage 22 February 2018 David Hilbert 1862 – 1943 In 1920, introduced metamathematics, a project to use mathematical methods to study mathematics. A metalanguage was used to discuss the language of mathematics. Mathematical logicians now commonly use metalanguage to mean the language used to define a formal logic language. World Mathematics (language) Metamathematics (metalanguage)
  • 5. Page 5 Metacircularity (1) 22 February 2018 Kurt Gödel 1906 – 1978 In 1931, published two incompleteness theorems. Used Gödel numbering to reduce number theory proofs to arithmetic operations. Proved the existence of a theorem stating This theorem cannot be proved, which, if false, is inconsistent, and, if true, cannot be proved in number theory! World Mathematics (language) Metamathematics (metalanguage)
  • 6. Page 6 Metacircularity (2) 22 February 2018 https://www.flickr.com/photos/null0/272015955/ (cropped) CC BY-SA 2.0 John McCarthy 1927 – 2011 In 1960, published Recursive Functions of Symbolic Expressions and Their Computation by Machine, on the design of Lisp, a “list processing” language. Encoding Lisp meta-expressions as symbolic expressions (lists), Lisp can be implemented in itself metacircularly. Lisp programmers actually use S-expressions. Lists Lisp program (S-expressions) Lisp definition (M-expressions) Machine code Steve Russell 1937 – present Implemented Lisp eval on the IBM 704. https://commons.wikimedia.org/wiki/File:Len_Shustek,_CHM_2011.jpg (cropped) CC BY-SA 2.0
  • 7. Page 7 Metaclass 22 February 2018 Smalltalk 1980 Developed in the 1970s at Xerox PARC by Alan Kay, Dan Ingalls, Adele Goldberg and others. Object-oriented programming language in which “everything is an object.” The first publicly released version, Smalltalk-80, introduced metaclasses. Objects Class Metaclass instance of instance of Bytecode
  • 8. Page 8 Metaobject 22 February 2018 Metaobject Protocol 1991 A metaobject protocol (MOP) gives “users the ability to incrementally modify [a programming] language’s behavior an implementation.” This is done by allowing extensions to the metaobjects that represent language elements. The Art of the Metaobject Protocol, by Kiczales, des Rivières and Bobrow, describes the MOP for the Common Lisp Object System (CLOS). Objects Class Metaclass instance of instance of Metaobject extension Metaclass extension
  • 9. Page 9 Metamodel 22 February 2018 Meta Object Facility (MOF) 1999 – 2016 MOF is “the basis for metamodel [abstract syntax] definition in [Object Management Group’s] family of [modeling] languages”. Since MOF 2.0, “based on a simplification of [the] class modeling capabilities” of UML. Date: November 2016 OMG Meta Object Facility (MOF) Core Specification Version 2.5.1 OMG Document Number: formal/2016-11-01 Standard document URL: http://www.omg.org/spec/MOF/2.5.1 Associated Normative Machine-Readable Files: http://www.omg.org/spec/MOF/20131001/MOF.xmi Associated Non-normative Machine-Readable Files: http://www.omg.org/spec/MOF/20131001/CMOFConstraints.ocl http://www.omg.org/spec/MOF/20131001/EMOFConstraints.ocl “Real world” system Model (in UML) Metamodel (for UML) “instance of” “instance of” M0 M1 M2 M3 Four metalayer architecture (deemphasized in MOF 2.x) Meta-metamodel (for MOF) “instance of”
  • 10. Page 10 Metasemantic Protocol 22 February 2018 ad/2017-12-02 RFP Template: ab/15-06-01 OMG RFP 9 December 2017 1 Object Management Group 109 Highland Avenue Needham, MA 02494 USA Telephone: +1-781-444-0404 Facsimile: +1-781-444-0320 rfp@omg.org Systems Modeling Language (SysML®) v2 Request For Proposal (RFP) OMG Document: ad/2017-12-02 Letters of Intent due: 24 September, 2018 Submissions due: 4 November, 2019 Systems Modeling Language (SysML) v2 2017 – ? Since 2006, SysML has been the OMG-standard UML profile for systems engineering. In 2017, OMG issue a Request for Proposals (RFP) for SysML version 2. To meet user needs, SysML v2 requires a syntactically and semantically user-extensible metamodel. “Real world” system Model (in SysML) Metamodel (for SysML) “instance of” “instance of” Semantic extension Semantic model library Builds on Kernel Modeling Language (KerML) work by Bock, Cole, Galey and others.
  • 11. Page 11 System Model 22 February 2018 2435.0 A block is a class whose instances are objects. A value type is a class whose instances are values. An object has identity and has properties that can change over time. A value does not have identity separate from its value and is immutable over time. Both classes and features have instances.
  • 12. Page 12 2435.0 Semantic Model Library 22 February 2018 Library model System model System “Block” and “value type” are just syntactic markers for classes that descend from the library classes Object and Value. Features of classes also specialize (“subset”) general library features.
  • 13. Page 13 Quantities and Units Domain Model Library 22 February 2018 Base Quantities and Units The base library model can be extended with library models for specific subject domains. An individual is a model of a class constrained to a single instance. Generic functions on numeric values can also operate on quantity values.
  • 14. Page 14 Quantities Units Usage 22 February 2018 Library model System model System 2435.0 The domain library adds modeling capabilities to the base language.
  • 15. Page 15 Gone “Meta”! General-purpose modeling languages… …with rigourous semantics …allowing for domain-specific specialization …through semantic model libraries and metasemantic protocols 22 February 2018 We need to activate our metacomic protocol!