Computation for Architecture, hybrid visual and textual language: Research developments and considerations about the implementation of structural imperative and object-oriented paradigms. (September 2022) - Henriques, Goncalo Castro; Xavier, Pedro Maciel; Silva, Victor de Luca; Bispo, Luca Rédua; Fraga, João Victor
In the fourth industrial revolution, programming promises to be a fundamental subject like mathematics, science, languages ​​or the arts. Architects design more than buildings developing innovative methods and they are among the pioneers in visual programming development. However, after more than 10 years of visual programming in architecture, despite the fast-learning curve, visual programming presents considerable limitations to solve complex problems. To overcome limitations, the authors propose to associate the advantages of visual and textual languages in Python. The article addresses an ongoing research study to implement Computational Methods in Architectural Education. The authors began by describing the general goal of this project, and of this article in particular. This article focuses on the implementation of two disciplines 'Computation for Architecture in Python' I and II. The first discipline uses programming based on the construction of functions in the imperative language, implemented in the text editor, in visual programming, using Grasshopper methods. The second discipline, which is under development, intends to teach object-oriented programming. The results of the first discipline are encouraging; despite reported difficulties in programming fundamentals, such as lists, loops and recursion. The development of the second discipline, in object-oriented programming, deals with the concepts of classes and objects, and more abstract principles such abstraction, inheritance, polymorphism or encapsulation. This paradigm allows building robust programs, but requires a more in-depth syntax. The article reports this ongoing research on this new paradigm of object-oriented language, expanding the application of a hybrid visual-textual language in Architecture.