Original URL: http://www.theregister.co.uk/2013/01/25/arabic_programming_language/

Meet قلب, the programming language that uses Arabic script

Visualizing code in a whole new way

By Neil McAllister

Posted in Developer, 25th January 2013 23:26 GMT

Programmers often talk about writing "beautiful code," but computer scientist Ramsey Nasser has taken that idea to new lengths by developing the first programming language that uses Arabic script for its source code.

The language is called قلب – roughly pronounced "alb," after the Arabic word for "heart" – and as Nasser explained to AnimalNewYork, he developed it as much for its aesthetic appeal as for its effectiveness at computation.

"قلب, as far as I know, is the first programming language that is a conceptual art piece," Nasser said, though he was quick to add that it is Turing-complete; that is, it is suitable for performing any kind of computation.

Nasser, who is a fellow at the Eyebeam Art+Technology Center in New York City, has already implemented several algorithms in قلب, including a program that calculates the Fibonacci sequence and one that performs British mathematician John Conway's Game of Life.

The قلب language itself is Scheme-like, meaning it is a functional programming language that has its roots in Lisp, long a favorite of computer scientists.

What makes قلب unique, however, is that it allows Nasser to write programs that are not only functional, but also visually pleasing. By varying the lengths of the lines that connect the Arabic letters that make up the language's commands, Nasser can reshape the appearance of his code without altering its function, producing programs that are both practical and artistic.

But Nasser had another reason for developing قلب, too – namely, that the Euro-centric nature of most programming languages puts people from other regions at a disadvantage when learning computation and software development.

"Computer science was born largely in England and software engineering was really fostered in the United States," Nasser observes.

As a result, all of the most popular programming languages, libraries, and APIs in use today are built with commands based on English words, such as "function," "for," "if," "loop," and so on. That can make learning programming especially difficult for students whose native language doesn't even use the Latin alphabet, for whom the keywords are little more than abstract symbols.

"If we are going to really push for coding literacy, which I do; if we are going to push to teach code around the world, then we have to be aware of what the cultural biases are and what it means for someone who doesn't share that background to be expected to be able to reason in those languages," Nasser says.

قلب is open source software released under a variant of the MIT License. Anyone who is interested in trying it out can download it from Nasser's github page. ®