Home /Research /Programming language support for geometric computations
OTHER

Programming language support for geometric computations

Mark Segal

Year
1989
Citations
5

Abstract

Implementing an algorithm that computes the values of geometric quantities has required their translation into explicit coordinate arrays comprehensible in an appropriate computer language. The simplicity and intuition inherent in the mathematical expression of geometric objects is lost in a profusion of coordinates rendering programs difficult to implement, understand, and debug. <p>This problem is overcome by providing a set of programming language constructs based on geometric objects rather than their coordinate representations. These objects and operations on them are adapted from standard mathematical usage. The actual coordinate computations are hidden and carried out automatically, resulting in a concise program looking much like its mathematical counterpart. <p>These constructs are suitable for programming a range of geometric computations. Examples show their use in the calculations of linear geometry, computer graphics, finite element analysis, relativistic kinematics and robotics. <p>A compiler for the language constructs can check geometric expression syntax and semantics. It can also recognize special operators and operands (diagonal or sparse matrices, for instance) so that unnecessary and possibly inaccurate floating-point operations are automatically avoided. Calls to a runtime package actually carry out the operations on representations of geometric objects. The issues involved in writing such a compiler and its associated runtime package are discussed. <p>A preliminary implementation is presented and the prospects for its generalization assessed

Keywords

Computer scienceCompilerProgramming languageRendering (computer graphics)OperandGeometric programmingCalculatorGeometric primitiveTheoretical computer scienceMathematical notation

Related papers

Browse all OTHER papers