designcoding
About Table of Contents Keywords Monthly Archive
Support designcoding!

Syntax, Meaning, and Wasp

August 24, 2026 | Discourses
#aggregation #fractal #frege #grasshopper #growth #logic #shape-grammars

The question of how form emerges in architecture has always been one of the most fundamental debate topics of computational design. When I was a graduate student, we used to examine how abstract language structures made of words and rules turned into spatial and geometric systems. In this post, starting from the reflection of linguistic theories on architecture, we will talk about the logic of discrete aggregation that we study in the first year Design Computing courses. At the same time, it is possible to exercise it quickly using the Grasshopper plug-in Wasp. This is such a comfortable educational setting today, compared to 2000s.

From Language to Architecture: Shape Grammars

In the 1960s, Noam Chomsky‘s generative linguistics theories showed that language could produce an infinite number of meaningful sentences with a limited number of symbols and production rules. This idea quickly had a big impact on the Design Methods Movement of the 1960s and 70s. As we see in Christopher Alexander’s “A Pattern Language” study, cities and buildings, just like words and grammar rules, could be divided into defined parts and relationship networks connecting these parts (although Alexander was not advocating this as a design methodology). However, in these early theories, syntax, form and structure were in the foreground. Semantics and meaning was rather ignored. This is why, the acceptance of a valid design method in the architectural application areas, always remained limited. I know this is a very fast and brief generalization. But back then, the tension between technical know-how, and the matter of meaning was at its peak. Maybe it is still like that right now.

Geometric Rules, L-Systems, and Emergence

One of the first big steps carrying text-based rules into the geometric universe was L-Systems (Lindenmayer Systems) and then, the famous Shape Grammars, developed by G. Stiny and J. Gips in the 1970s. L-Systems and the parallel rewriting rules, allowed us to simulate growth patterns in nature and fractal structures. In this blog, I experimented such systems numerous times. The strongest side of shape grammars is the emergence of sub-shapes during the process that were not explicitly defined in the initial rules by the designer. The system reads new relationships from the result, and continues to develop over these new emergent shapes. At least, this was the answer to several criticisms. I remember the very first post in designcoding 15 years ago.. In the graduate school, I had the chance to take the Shape Grammars course from Prof. Birgül Çolakoğlu. She was a PhD student of Dr. Stiny.

Iteration in Grasshopper: From Anemone to Wasp

We have two options, if we want to try shape grammar rules in Grasshopper. The first one is a little traditional. Using Orient3D and looping add-ons such as Anemone. This would be useful in taking a base module and putting it into sequential loops with orientation planes. I experimented this in QuickShaper 20 years ago. One day, I want to revisit and try this through the famous Froebel blocks exercise. The second and quicker way can be a ready-made add-on such as Wasp. It is very powerful in connection-based aggregation. Developed by Andrea Rossi, Wasp looks at the connectors and collision logic instead of pure geometric transformation. This is why, it gives more architecturally sound results.

In Wasp, the process basically has four steps:

  1. Part Definition (Wasp_Basic Part): The designed base module geometry is imported into the environment.
  2. Connection Points (Wasp_Connection From Direction): From which surfaces or points of the module it can connect to other parts and in which direction it will lock is determined. Names like A, B, C are given to the connections.
  3. Rule Generator (Wasp_Rules Generator): How connections match with each other is defined (e.g., A > A, B > B, A > B, or C > C).
  4. Stochastic Aggregation (Wasp_Stochastic Aggregation): The defined rules are combined with collision tests preventing parts from overlapping and random orientations, turning into a complex mass made of many parts.
Syntax, Meaning, and Wasp aggregation, fractal
Syntax, Meaning, and Wasp Grasshopper definition
Syntax, Meaning, and Wasp animation

In my trial, the add-on components gave an “Old” warning, but they worked fine. To distinguish the components, I used the “Bifocals” add-on, which writes their names on them.

Conclusion

Wasp and similar discrete aggregation tools provide a strong ground for modular architecture, prefabrication, and digital fabrication processes. Simple rules applied to a single part can produce unexpected and rich spatial organizations. Starting from a simple rule and reaching complex architectural structures that match the physical world is one of the most exciting research areas of computational design. There are numerous “pavilion” experiments made in the schools and workshops around the globe. However, the dimension of meaning that we mentioned at the very beginning will continue to remain an open debate.

Formal grammars working only with formal rules and leaving meaning out reminds me of Gottlob Frege‘s famous distinction of Sinn (Sense) and Bedeutung (Reference) in the beginning years of philosophy of language. Formal grammar and shape grammars treat symbols and geometric elements only as abstract elements (syntactic elements) processed according to rules. In other words, the system works completely with internal syntax; what it corresponds in the external world (reference) or what it expresses in a spatial/cultural context (sense) is outside the scope of the rule set. I think, this is not an accident; it is a requirement for the theory to exist. Because, Frege’s project was already looking for the existence and the limits of the application area of an objective logic independent of humans. My readings started to show that Frege, compared to more interesting figures like Russell and especially Wittgenstein, might be someone more quiet, but actually laying deeper foundations.

Syntax, Meaning, and Wasp frege, grasshopper
Rhinoceros file (3DM)Download
Grasshopper definition (GH)Download

Cite this post

Yazar, T. (2026, August 24). Syntax, Meaning, and Wasp. designcoding. Retrieved August 24, 2026, from https://www.designcoding.net/syntax-meaning-and-wasp/

Related Posts

Why is the Hilbert Curve Beautiful?

April 8, 2025

The Hilbert Curve is one of the results of David Hilbert’s vision of mathematics as a network of symbolic systems. Defined in 1891, this curve is a fractal that fills a two-dimensional plane with a one-dimensional line in the limit. It exhibits self-similarity. It emerged from representing higher-dimensional spaces through continuous, lower-dimensional entities. A curve that grows within a bounded area remains continuous but non-differentiable. Yet it possesses infinite length. Perhaps no one will ever truly see or fully grasp…

Differential Growth

June 16, 2025

Differential growth is a process where different parts of a structure grow at different rates, leading to complex forms. After watching this, I decided to try it in Grasshopper. Here, differential growth mimics this behavior by applying rules such as Repulsion to avoid crowding or overlapping, Cohesion to keep parts connected or within a range, and Insertion to add new elements when a part stretches too far. The algorithm I present here simulates a differential growth process starting from a…

Ice-Ray Lattices Revisited

April 9, 2015

Further studying iteration in Grasshopper, this time, inspired by George Stiny’s “Chinese Ice-Ray Lattice” subdivisions with Aneome, instead of the Hoopsnake add-on I tried in the previous work. As you know, loops add various ways of usage to Grasshopper. In future versions, loops may cease to be just an add-on and become native components of Grasshopper. Until then, loop plugins like Anemone take on this task. In the example here, we create an application by throwing random lines to divide…

Chinese Ice-ray Lattices Revisited

March 25, 2013

One of the cult texts in Shape Grammars theory is Stiny‘s Chinese Ice-ray Lattices Grammars. Although it is full of technical terms, it represents an analysis of a working algorithm. We can directly transfer that from the behavior of an artist. One can imagine a Chinese artisan, summoned to a building site. He brings tools and implements and a collection of finely finished sticks. Then, he begins his design by selecting a stick of the appropriate length and carefully attaching…

PatGen: Islamic Pattern Generator

February 27, 2013

It was the 2008, eCAADe Presentation at Antwerp together with Birgül Çolakoğlu and Serkan Uysal. This paper presents a student work developed in the Introduction to Computational Design graduate course titled “Designing the Design” at Yildiz Technical University. The course focuses on the use of algorithms as design tools, rather than coding experiments. The course runs parallel to the shape grammar course. There, we study the basic concepts of computation through visual design exercises. So, the shape grammar course teaches…

  • Chapters

    • Algorithms
    • Discourses
    • Fabrications
    • Studios
  • Explore

    • All Keywords
    • Table of Contents
    • Monthly Archive
    • #rhino-python
    • #polyhedra
    • #rhinoceros
    • #tutorial
    • #parametric-surface
    • #robot
    • #boolean
    • #kuka-prc
    • #tessellation
    • #design-object
    • #image-sampler
    • #terrain
    • #sandblasting
    • #stone
    • #dome
    • #parametric-curve
    • #animation
    • #art
    • #gosper-curve
    • #contouring
  • Search

  • Support designcoding!

  • Enjoying designcoding? Support me on Patreon to keep it growing. Thank you!

  • copyright 2026 designcoding.net | about | privacy policy | end user license agreement