Bi++ is a conceptual experiment in the form of an esoteric programming language that explores the consequences of a world structured through binaries for people with bi+ orientations, understood here as attraction to more than one gender.
As Meg-John Barker and Alex Iantaffi write in Life Isn’t Binary, “Despite being one of the largest groups in the LGBTQIA+ […] rainbow, bisexual people are often invisible in dominant cultural contexts.” This invisibility is not incidental but systemic, a phenomenon known as bi+sexual erasure: the assumption, rooted in monosexism, that attraction must be directed towards only one gender.
Bi++ takes this condition as both its conceptual starting point and its computational challenge. It first examines: what happens when a system built on binary logic attempts to deal with notions that are fundamentally non-binary and plural in nature? Then it goes on to determine: how could a system function and strengthen itself by incorporating plurality as a core principle?
At the level of programming language design, these questions can be modeled in various ways. The most important change of Bi++ in comparison to traditional languages is that it does away with the data type that reflects the core principle of binary thinking, the Boolean. Boolean expressions are used in computer code to boil a set of conditions down to one binary answer: true or false. They are based on formal logic constraints where an expression is either completely true or completely false, with no other possibilities, internally represented by either 1 or 0. Even though these principles work well when applied to mathematical problems, they often fall short when trying to describe the real world in all its diversity and plurality. As we rely more and more on digital systems, all of which rely in their turn completely on binary systems, the mismatch between the modeled versions of the world of those systems will clash more and more heavily with the fluidity of reality.
That is why, instead of taking binary formal logic as its core principle, Bi++ relies on fuzzy logic, where the value of a logical expression can result in any number between 0 and 1 representing the amount of truth a logical expression boils down to. Concretely, the boolean in B++ is replaced by a “plulean” (a combination of plurality and boolean) that, in full compliance with the principles of fuzzy logic, can hold any number between 0 and 1. However, while the plulean expands binary logic into a spectrum more apt to represent fluidity, it still implicitly models attraction along a single axis, a line between 0 and 1. This carries within it still the assumption that attraction can be reduced to a scalar value, rather than understood as a multi-dimensional space.
In practice, bi+ attraction is rarely linear. It may vary across different genders (including non-binary and fluid identities), emotional vs physical attraction, temporal shifts, relational contexts, and aesthetic, intellectual, or affective dimensions. Reducing this complexity to a single floating-point value risks reproducing a subtler form of erasure: not binary collapse, but dimensional flattening.
To address this, Bi++ introduces a second-order structure: the fuzzy array, a composite datatype that holds multiple pluleans across dimensions. In this way, it is possible to represent the fluid multi-dimensional space that is attraction by combining a number of these pluleans into a more complex structure that models attraction. This structure emphasizes that attraction is not something that can be reduced to a single scalar, but is something that exists across multiple axes simultaneously, without requiring normalization or resolution.
By taking fuzzy logic as it’s core principle, B++ tries to provide a more concise representation of bi+ attraction. Implementing this would lead to computational systems that do not seek to resolve complexity, but to sustain it, and to use it to strengthen the level of truth in the claims they make. In doing so, it suggests that plurality is not a problem to be solved, but a real-world phenomenon to be taken into account at all levels of integration.
More than suggesting that technical systems can provide solutions to the complex and multifaceted problems of representation and discussion of sexual orientation, this project is an explicit artistic experiment that tries to undermine the idea of a deterministic, solutionist approach to anything that is more complex than what a computer system can ever aptly model (that includes modern AI systems).
-

Bi++ : A Different Code Poem
I’ven been working more on my Bi++ esoteric programming language and wrote these code poems to demonstrate the power of a non-binary computational system.
