From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.science.mathematics.categories/4912 Path: news.gmane.org!not-for-mail From: Zinovy Diskin Newsgroups: gmane.science.mathematics.categories Subject: Re: patenting colimits? Date: Sat, 30 May 2009 08:07:22 -0400 Message-ID: Reply-To: Zinovy Diskin NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1243873585 20399 80.91.229.12 (1 Jun 2009 16:26:25 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 1 Jun 2009 16:26:25 +0000 (UTC) To: Dusko Pavlovic , Original-X-From: categories@mta.ca Mon Jun 01 18:26:23 2009 Return-path: Envelope-to: gsmc-categories@m.gmane.org Original-Received: from mailserv.mta.ca ([138.73.1.1]) by lo.gmane.org with esmtp (Exim 4.50) id 1MBAL5-0005SH-3H for gsmc-categories@m.gmane.org; Mon, 01 Jun 2009 18:26:19 +0200 Original-Received: from Majordom by mailserv.mta.ca with local (Exim 4.61) (envelope-from ) id 1MB9j3-0004GD-9q for categories-list@mta.ca; Mon, 01 Jun 2009 12:47:01 -0300 Original-Sender: categories@mta.ca Precedence: bulk Xref: news.gmane.org gmane.science.mathematics.categories:4912 Archived-At: On Fri, May 29, 2009 at 3:57 PM, Dusko Pavlovic wrote: > i designed two tools which people who built them built on top of eclipse, > and i must admint that i managed to completely miss those categorical ideas. > eclipse is very handy, but some simple class hierarchies often become > unrecognizable in its straitjacket. i am probably not the only one who would > be curious to learn more about category theory behind eclipse :) > well, I've overstated it a little bit because of the context. What I actually meant was Eclipse Modeling Framework (EMF) -- one of the several top-level projects constituting Eclipse. The core idea of EMF is that a majority of complex structures called models can be presented as lax functors m: EC --> mRel, where EC is the category freely generated by some graph EM called the Ecore metamodel, and mRel is bicategory of finite sets and finite multirelations (spans) between them. However, not every such functor is a valid model because the metamodel EM is actually a sketch, EC is the theory generated by EM and m should be a functor preserving the structure (using Makkai's rather than classical sketches is much more technically convenient here). Models are used for code generation, and code is just another model. For example, a Java program is a morphism p: JC-->mRel with JC being the theory generated by the Java metamodel sketch JM. So, code generation would be a case of the change of base situation if we had a theory morphism e2j: JC-->EC (generated by a Kleilsi arrow JM-->EC). The real situation is much more complicated because e2j is a span EC <-- o --> JC rather than a functor. This is a rough picture. Metamodels and models appearing in practice are big, and therefore are designed and stored in fragments called packages. Gathering them together (virtually via the so called package merge) is an operation based on taking colimits of the diagram specifying package relationships. Code generation/change of base in the presence of packages gives rise to sheaves. And so on. Of course I did not mean that Eclipse developers explicitly used categorical ideas. Relations between software systems like Eclipse and cat. theory are like relations between physical phenomena and their mathematical models. Z. >> Another >> example is the use of open source software for commercial products by >> such giants as IBM. > > i hope that you are right that it is a good thing that IBM supports the open > source. i also hope that it is a good thing that Exxon, Chevron and BP > support the alternative sources of energy, and that Philip Morris supports > the teen culture. > > -- dusko > although a part of Eclipse but an important one. Here is what the EMF Book [1] says (pages 4-5): << The development work in Eclipse is divided into several top-level projects, including the Eclipse Project, the Modeling Project, the Tool Project, and the Technology project. .... The Eclipse Modeling Project is the focal point for the evolution and promotion of model-based development technologies at Eclipse. At its core is EMF, which provides the basic framework for modeling. Other modeling sub-projects build on top of the EMF core, providing such capabilities as model transformation, database integration, and graphical editor generation... [For admin and other information see: http://www.mta.ca/~cat-dist/ ]