This Arabic Programming Language Shows How Computers Revolve Around the Western World
Every month or so, computer scientist Ramsey Nasser gets a desperate email from the Arabic world, or sometimes China, or Russia, asking for his help.
They want to know more about Qlb — pronounced "qalb" or "alb," meaning "heart." It's a programming language that uses the Arabic language, script and alphabet to create computer applications. As the Internet covers the planet, opening up new roads for creating wealth and prosperity through computer science, people across the globe are learning to code so that they can partake in the digital revolution.
Every time, Nasser has to turn them away, and he gives the same tragic rejection: that Qlb, functional and real as it may be, is just an art piece and a provocation, an experiment meant to show that an Arabic programming language isn't just elusive, it's impossible. (A relevant disclaimer: The Arabic spelling won't render in our CMS.)
"I understand their excitement about the possibilities, because they don't know this can't happen," Nasser told Mic. "If it could exist, it would make people's lives so much easier, but rewriting the last 50 years of software engineering isn't on the table."
Digital imperialism: Nasser grew up in Beirut, where he first studied computers and programming. Computers were, at their earliest, an innovation in the English-language world, so in a subtly imperialistic fashion, Lebanese programmers at the American University of Beirut had to code in English, no matter their proficiency with the language — there wasn't any other way.
After he left grad school at Parsons School of Design in NYC, he joined on as a fellow at Eyebeam, an "artist colony and an R&D lab" where the resident artists create oddball projects exploring technology, the Internet and digital networks. It was here that he began work on Qlb.
"Arabic people have a very intense relationship to text, and a lot of the culture is predicated on language itself."
"You can talk all you want about syntax and tools, but if the basic tools are in a language you don't understand, what effect does that have on you?"
Look to the work of computer scientist Peter Norvig and his work with the languages Python and Lisp, Nasser set out to create a programming language that would allow Arabic speakers to code in their native tongue. Not only would it be fully functional, but it would be beautiful. The same way that calligraphy and the beauty of text are a deep part of the Arabic and Muslim traditions, Qlb could be written in a visual style that was artistic, with woven algorithms and code that's aesthetically expressive.
"Arabic people have a very intense relationship to text, and a lot of the culture is predicated on language itself," Nasser told Mic. "So I wanted to bring as much of the Arab tradition of calligraphy into the computer science tradition of text and source code.
And it works. Unlike programming languages meant for web development like HTML and CSS, Qlb is "Turing complete," which means that it's a fully-fledged language that can potentially create as complex programs as any other language. He released the project in 2013, laying out his notes for the project and debuting it with Eyebeam.
But Qlb can only be used in isolation. Like an atomic element created for a fraction of a second in a laboratory, programs written in Qlb can only exist in the environment where they're created. Once they start trying to interact with the rest of the web, everything falls apart. File names can't be read, the operating system rejects the syntax — Qlb was even part of a documentary on experimental design projects called Clouds that itself was created as a computer program that crashed once mention of Qlb was inserted.
Qlb just can't interact with the rest of the world, because the world of computers is an English-speaking one.
"Some of the nearsighted and, frankly, racist reaction is that English isn't that hard to learn. But it is. Sorry."
English first, ask questions later: Nasser doesn't necessarily blame the Western world for the encoding of the English language and Latinate character set into the machine languages. It's an incumbency that comes from short-sightedness from the scientists who didn't realize that, half a century ago, they'd be writing the tools that would define a global age of computation.
"If you're inventing computing in Bell Labs in New Jersey, you use the simplest thing possible, you squeeze the alphabet in and you get it done," Nasser said. "But a side effect to that is that it's all in English — the standards we've adopted have encoded that alphabet. So while Qlb is, formally speaking, complete, it can never be usable in a meaningful way."
Nasser doesn't believe in a simple, one-stop solution, and doesn't believe he could create one himself without making it a life's work. It's not just Arabic speakers — there is no viable solution for cyrillic, kanji or pinyin. For all of the world's people, speaking languages that contain their cultural heritages and entirely different frameworks of thought, their best bet is to box themselves into English.
"Some of the nearsighted and, frankly, racist reaction is that English isn't that hard to learn," Nasser told Mic. "But it is. Sorry. And if you think English isn't hard to learn, learn [Qlb]."
Get the five stories that will challenge you to rethink the world by signing up for MicCheck Daily.