Explo-IT Research XCC eXtensible Computation Context Antonio Capani Explo-IT Research www.Explo-IT.com.

Slides:



Advertisements
Similar presentations
Remote Visualisation System (RVS) By: Anil Chandra.
Advertisements

Language Specification using Metamodelling Joachim Fischer Humboldt University Berlin LAB Workshop Geneva
Comparison of Several Meta-modeling Tools 2 Yi Lu Computer Science Department McGill University
Programming Paradigms and languages
Gleaning Resource Descriptions from Dialects of Languages (GRDDL) W3C Team Submission 16 May 2005 Dominique Hazaël-Massieux, Dan Connolly Summarized by.
.NET 3.5 – Mysteries. NetFx Evolution NetFx 1.0 C# 1.0, VB 7.0, VS.NET NetFx 1.1 C# 1.1, VB 7.1, VS 2003 NetFx 2.0 C# 2.0, VB 8.0, VS 2005 NetFx 3.0 C#
Identity Management Based on P3P Authors: Oliver Berthold and Marit Kohntopp P3P = Platform for Privacy Preferences Project.
Presented by: Thabet Kacem Spring Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.
Amit, Keyur, Sabhay and Saleh Model Driven Architecture in the Enterprise.
Implementation of MAS issues M. Birna van Riemsdijk ProMAS TFG 2005.
Institute For Software Integrated Systems Vanderbilt University Applications of Model Integrated Computing to The Synchronous Language Signal Ethan Jackson.
Kari R. Schougaard, PhD Stud. Værktøjer og Teknikker, 2006 UNIVERSITY OF AARHUS Department of Computer Science Unified Modeling Language Visual language.
1 Calculemus Autumn School Approaches On Integration 10/28/02 Sabina Petride.
JSP Architecture  JSP is a simple text file consisting of HTML or XML content along with JSP elements  JSP packages define the interface for the compiled.
Meaningful Modeling: What’s the Semantics of “Semantics”? David Harel, Weizmann Institute of Science Bernhard Rumpe, Technische Universität Braunschweig.
Mathematical Content Conversions David McKain 9 th September 2009.
Framework for Model Creation and Generation of Representations DDI Lifecycle Moving Forward.
Using UML Models for the Performance Analysis of Network Systems Nico de Wet and Pieter Kritzinger Department of Computer Science University of Cape Town.
GMD German National Research Center for Information Technology Innovation through Research Jörg M. Haake Applying Collaborative Open Hypermedia.
MDC Open Information Model West Virginia University CS486 Presentation Feb 18, 2000 Lijian Liu (OIM:
Principles of Programming Chapter 1: Introduction  In this chapter you will learn about:  Overview of Computer Component  Overview of Programming 
February Semantion Privately owned, founded in 2000 First commercial implementation of OASIS ebXML Registry and Repository.
PROGRAMMING LANGUAGES The Study of Programming Languages.
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
Session 1 - Introduction and Data Access Layer
Object and component “wiring” standards This presentation reviews the features of software component wiring and the emerging world of XML-based standards.
C++ Code Analysis: an Open Architecture for the Verification of Coding Rules Paolo Tonella ITC-irst, Centro per la Ricerca Scientifica e Tecnologica
Introduction to MDA (Model Driven Architecture) CYT.
Mobile Topic Maps for e-Learning John McDonald & Darina Dicheva Intelligent Information Systems Group Computer Science Department Winston-Salem State University,
Programming Languages –14 David Watt (Glasgow) Steven Wong (Singapore) Moodle : Computing Science → Level 3 → Programming Languages 3 © 2012 David.
Programming language A programming language is an artificial language designed to communicate instructions to a machine,languageinstructionsmachine particularly.
Building Tools by Model Transformations in Eclipse Oskars Vilitis, Audris Kalnins, Edgars Celms, Elina Kalnina, Agris Sostaks, Janis Barzdins Institute.
Syntax Specification and BNF © Allan C. Milne Abertay University v
Specializing and extending the UML
Košice, 10 February Experience Management based on Text Notes The EMBET System Michal Laclavik.
KMS Products By Justin Saunders. Overview This presentation will discuss the following: –A list of KMS products selected for review –The typical components.
1 SystemVerilog Enhancement Requests Daniel Schostak Principal Engineer February 26 th 2010.
Knowledge Representation of Statistic Domain For CBR Application Supervisor : Dr. Aslina Saad Dr. Mashitoh Hashim PM Dr. Nor Hasbiah Ubaidullah.
Smart Sensor Node Impact  GPS leveraged for geo-referenced identity, and low power communications synchronization. Up to 100x communications power reduction.
Jian Gui WANG New Implementation of Agriculture Models APAN19---Jan New Implementations of Agriculture Models Using Mediate Architecture.
Semantically Processing The Semantic Web Presented by: Kunal Patel Dr. Gopal Gupta UNIVERSITY OF TEXAS AT DALLAS.
Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto.
Slide 1Reproduction prohibited without permission from Computas AS © METIS An Open Architecture Toolkit ADM and ADML support Don Hodge Principle Knowledge.
December 4, ICSSEA’03 The SmartTools Software Factory The MDA approach and Generative programming for Software Development:
Introduction to the Semantic Web and Linked Data
XML Alyssa Roberts. What is XML? Extensible Markup Language Specification to creating custom mark-up languages Simplified version of SGML, originally.
S imple O bject A ccess P rotocol Karthikeyan Chandrasekaran & Nandakumar Padmanabhan.
User Profiling using Semantic Web Group members: Ashwin Somaiah Asha Stephen Charlie Sudharshan Reddy.
1 Typing XQuery WANG Zhen (Selina) Something about the Internship Group Name: PROTHEO, Inria, France Research: Rewriting and strategies, Constraints,
Issues in Ontology-based Information integration By Zhan Cui, Dean Jones and Paul O’Brien.
GEO PLACES EXPLORER PRESENTED BY KHUSHBOO BAGHADIYA SUMANA VENKATESH.
14 October 2002GGF6 / CGS-WG1 Working with CIM Ellen Stokes
Yu, et al.’s “A Model-Driven Development Framework for Enterprise Web Services” In proceedings of the 10 th IEEE Intl Enterprise Distributed Object Computing.
Requirement Engineering with URN: Integrating Goals and Scenarios Jean-François Roy Thesis Defense February 16, 2007.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Formal Semantics of Programming Languages 虞慧群 Topic 2: Operational Semantics.
Introduction to SQL Server 2000 Reporting Services Jeff Dumas Technical Specialist Microsoft Corporation
Data Format Description Language (DFDL) WG Martin Westhead EPCC, University of Edinburgh
Basic 1960s It was designed to emphasize ease of use. Became widespread on microcomputers It is relatively simple. Will make it easier for people with.
Summary Report Project Name: Model-Driven Health Tools (MDHT)
Utility Evaluation of Tools for Collaborative Development
SysML 2.0 Formalism: Requirement Benefits, Use Cases, and Potential Language Architectures Formalism WG December 6, 2016.
Chapter No. : 1 Introduction to Java.
SysML v2 Formalism: Requirements & Benefits
Middleware independent Information Service
Debugging and Random Numbers
Graph-Based Operational Semantics
Chapter 9 Web Services: JAX-RPC, WSDL, XML Schema, and SOAP
Middleware, Services, etc.
Software Architecture & Design
Presentation transcript:

Explo-IT Research XCC eXtensible Computation Context Antonio Capani Explo-IT Research

Explo-IT Research What is XCC? The eXtensible Computation Context consists of –a methodology for developing open and collaborative systems for doing computations –an extensible language (XCL) for development and maintenance of computation languages –a set of tools which act as integration technology (or middleware) between mathematical systems and non- mathematical systems

Explo-IT Research Extensibility of Languages Some High level languages like C, C++, Java, Smaltalk, Pascal, are designed to be concise and possibly near to human language and standard notations In almost all cases the syntax of the language cannot be extended, for example, by adding new primitive types On the contrary, during the development of a mathematical system, may arise the need for extending syntax and semantics Moreover different (mathematical) systems could benefit from a standardization of their languages

Explo-IT Research Syntactic Sugar When trying to extend a language quite often happens that, even if the semantical extension is clear, the designer of the language have difficulties in finding a suitable syntax For example: what could be the syntax for adding “set” to the C language as primitive types? The candidate delimitators of the set should be “{“ and “}” but they are already taken as delimitators of blocks of commands

Explo-IT Research The XCL Intermediate Language XCL stays for eXtensible Computation Language The syntax of XCL is based on the XML (meta)language. High Level languages may mapped to XCL (are seen as user friendly representations of XCL programs) The semantics of XCL is given in a declarative way and is "plugged" to each XCL program during its execution. XCC offers a basic XCL language which contains lots of standard functionalities like: –primitive types (e.g.: int,string,list,record,matrix) –standard operators to build expressions –standard commands (e.g.: assignment,for,while) –definition of new commands and packages

Explo-IT Research Usage of XCL XCL is at a low level but it is human readable (because it is based on XML). So it is possible to extend the XCL syntax and apply semantics to it even before designing a high level language. For example it is useful for mathematical teams because they focus on the mathematical library and on mathematical research rather than the computer science aspects.

Explo-IT Research Example of XCL program <!DOCTYPE xcl PUBLIC "-//EXPLOIT//DTD XCL-Basic//EN" "

Explo-IT Research Example of plugged semantics # commands (from XML tagname to Java classname) assign = com.ExploIT.coco.xcl.XCLCommandAssign write = com.ExploIT.coco.xcl.XCLCommandWrite if = com.ExploIT.coco.xcl.XCLCommandIf for = com.ExploIT.coco.xcl.XCLCommandFor while = com.ExploIT.coco.xcl.XCLCommandWhile # expressions (note the difference between expressions and values) var = com.ExploIT.coco.xcl.XCLExprVar and = com.ExploIT.coco.xcl.XCLExprBool or = com.ExploIT.coco.xcl.XCLExprBool not = com.ExploIT.coco.xcl.XCLExprBool make-list = com.ExploIT.coco.xcl.XCLExprList # values list = com.ExploIT.coco.xcl.XCLValueList true = com.ExploIT.coco.xcl.XCLValueBool false = com.ExploIT.coco.xcl.XCLValueBool

Explo-IT Research XCC Platform An XCC platform offers means for: –execution of XCL programs (XCL Engine) –XCL-devices (devices which write or read XCL data) –Session Management Framework (multiuser, multisession generic tool for XCL queries) –connection to other XCC enabled tools, for the remote execution of XCL programs –connection to non XCC-enabled tools export of computation results in OpenMath or MathML format visualization of results in browsers

Explo-IT Research XCC Platform XCC Platforms XCL Engine Main XCL Devices Session Management Framework Low Level Library XCL Semantics XCC Platform non-XCC

Explo-IT Research Standard Mathematical Protocols The XCL language may be used as a standard way for representing data and programs, but multiple protocols may be used. Currently we are collaborating with the OpenMath Society in order to: –define a formal specification of XCC –integrate the XCC methodology with the OpenMath and MathML

Explo-IT Research Conclusions and Future Directions An application of XCC (called CoCo, Computation Context) is in progress for the new major release of the CoCoA System in collaboration with the CoCoA Team ( leaded by Prof. Lorenzo Robbiano of the University of Genova. It is under study the implementation "active documents", that is documents containing formulas which may be executed within the document itself.