Читать книгу Rethinking Prototyping - Группа авторов - Страница 110
8 Conclusions
ОглавлениеAt the Design Modelling Symposium Berlin in 2011 [7], we presented (1) the concept of DesignScript as a “domain specific, end-user, multi-paradigm programing language” (2) that one of the programming paradigm would be new type of associative language acting as a human readable text based notation for data flow programing (3) the idea of a learning environment for design computation. This paper reports further progress in these directions. It is, however, very important to understand that it is not being suggested that associative programing is universally more advantageous than imperative programming. There are, however, two specific advantages where associative programming can contribute as part of a comprehensive computational system:
First for the novice programmer: The associative language offers a direct notational equivalent of a data flow graph node diagram and (via the node to code conversion] a way for the novice programmer to make the transition from data flow programming to text based programming as part of a design computation learning curve.
Second for the experienced programmer: There is the advantage of being able to choose between two different types of programme execution, either associative or imperative. Each is equally valuable and each may be appropriate in different contexts.
In fact, the example scripts (in Figs. 7-9) exactly illustrate a key idea that different programming paradigms match different ways of design thinking. On the one hand designing is characterised by the relationships between different aspects of the design, which can be expressed through a graph-based associative language, and on the other hand designing often involves a process of iterative refinement which can be represented by conventional imperative programming. Any serious design activity is quite likely harness both ways of thinking. Therefore if such a design activity is to be assisted by computational means then the two styles of programming and program execution are also required to be combined.
DesignScript is the integration of some original and some familiar computational ideas and forms of interaction, with the aim of providing a comprehensive learning environment for design computation.
Acknowledgements
DesignScript Development Team, Autodesk Singapore Research & Development Centre
Buro Happold for the SmartForm and Robot plug-in’s for DesignScript
Andrew Marsh for the Performative Design plug-in for DesignScript