السبت، 29 أكتوبر 2011

Kalimat-related open source project ideas


Do you like open source and want to create your own project? Do you like Kalimat? Do you want to contribute something to the future of programming in the Arab world?

Here are some new projects that I would love to see for the Kalimat programming language, and which can be done independently of the main Kalimat package of you want to 'own' your project:

Kalimat for .Net

If you write a .Net implementation for SmallVM (the virtual machine of Kalimat & Kick) then the rest would be easy: Just recreate the compiler that translates from Kalimat to SmallVM, or even use the original compiler.

Why Kalimat for .net? It would make Kalimat both usable as an educational language and a professional one; opening the door for libraries that wrap ASP.net, ADO.net, ...etc into an Arabised API and make it available for Arab programmers; kids and adults alike.

Automatic code documentation

The CoffeeScript language has a tool called Docco, that takes commented source code and generates documentation that puts the code and the explanation side by side like this

I really want a tool that works the same way; it would make it so much easier for educators to write Kalimat tutorials with heavy source code and notes, which is why the language was created in the first place!

Kalimat environment on the web

This would make trying the language much easier without needing to download anything and make Linux users happier (since currently Kalimat for Linux has an Ubuntu-only ready made package and other Linux users have to compile from source).

Again, the secret is in SmallVM: If you write it using JavaScript and implement the run-time library (Graphics, Sprites, ...etc) with HTML5 then the IDE itself would probably not be too hard.

More platforms

In addition to .Net, Kalimat could be ported to other platforms. If done right we could have some sort of a "Kalimat everywhere" ecosystem:
  • SmallVM could be translated to, or interpreted by, ActionScript bytecode (ABC) to enable running Kalimat programs as Flash applications (suggested by Issam Elbaytam in the comments)
  • Could similarly be translated to Java, to use the Java platform or to create Android programs
  • Or perhaps translated to Objective-C, to create iOS applications ;)

هناك تعليقان (2):

Issam Elbaytam يقول...

an interesting idea would be to generate ABC (ActionScript Byte Code) from smallVM which would allow Kalimat output to run in Flash on any browser.

I was involved in .net -> ABC translator and can tell you that it works, there is documentation available on ABC

Mohamed Samy يقول...

@Issam

Excellent idea. I've added a fourth section on Flash and more platforms in the post. Thanks!