Tutorial

The design language PLaSM is a geometry-oriented extension of a subset of FL.

FL Language

FL (programming at Function Level) is an advanced language for functional programming developed by the Functional Programming Group of IBM Research Division at Almaden (USA) [BWW90,BWWLA89]. The FL language, on the line of the Backus' Turing lecture [Backus78] introduces an algebra over programs, i.e.~a set of algebraic identities between functional expressions, for formally reasoning about programs. This language enjoies some interesting features. In particular, programs are easily combined, so that new programs are obtained in a simple and elegant way; and one may find simpler equivalent programs, both at design and at compilation times. Great advantages are so obtained in style and efficiency of program prototyping.

PLaSM Language

PLaSM, (the Programming LAnguage for Solid Modeling) is a ``design language", developed by the CAD Group at the Universities of Roma ``La Sapienza" and ``Roma Tre" [PS92, PPV95]. The language is strongly inFLuenced by FL. With few sintactical differences, it can be considered a geometric extension of a FL subset. Among the strong points of PLaSM we cite the functional approach, which allows to compute with geometries as well with numbers and functions, and its the dimension-independent implementation of geometric data structures and algorithms. The first feature results in a very natural and powerful approach to parametric geometry. The second one, coupled with the "combinatorial engine" of the FL language, gives an amazing descriptive power when computing with geometry.

PLaSM is Free Software and may be distributed under GNU LGPL