Merhaba. Linux için BaCon adında BASIC türevi programlama dilini C koduna çevirip mevcut C derleyicileri ile derleme yapabilen bir programlama aracı bulunuyor. Bu programlama aracı ile grafik kullanıcı arayüzü yazmak çok kolay. Mesela INCLUDE “hug.bac” INIT
window = WINDOW(“Merhaba dünya”, 600, 400) DISPLAY
Diyelim ki bu pencereye bir metin kutusu yerleştirilecek. O zaman da şu kod yazılıyor:
EDIT_BOX = EDIT(580, 300) ATTACH(window, EDIT_BOX, 10, 80 )
Pencere oluşturmak ve pencereye metin kutusu, etiket, düğme vs. eklemek bu kadar kolay.
Acaba bu programlama aracının Pardus’ta bir standart olarak kurulu gelmesi mümkün müdür?
Eğer pardus reposunda paketi bulunursa yüklenebilir, evet. Bulunmuyorsa da biraz araştırma ile halledilebilir. Ancak hazır yüklenmiş hâlde gelirse daha çok tanınabilir ve yaygınlaşabilir. Birçok kimse linuxta program yazmanın zor olduğunu söylüyor. Bunun bir sebebi linux kurup biraz kurcaladıktan sonra tekrar windows’a geri dönmeleri. Yazılım işleri ile uğraşan pek çok kimse bile linuxta daha uzun zaman geçirip araştırma yapmayı düşünmeyebiliyor.
BaCon’un birkaç önemli özelliği var:
1-Konsol uygulamaları veya grafik kullanıcı arayüzü olan uygulamalar yazmak oldukça kolaydır.
2-BaConGUI kullanarak çeşitli C derleyicileri ile programı derlemek oldukça kolaydır.
3-BaCon ile konsol komutlarını çalıştırıp komutların neticesini almak mümkün olduğu için son kullanıcıya yönelik linux uygulamaları kolayca geliştirilebilir. (Evet aynı şeyi perl veya python ile de yapabilirsiniz ama BaCon’da hem BASIC dilinin kolaylığı hem de makine koduna derlenebilme özelliği mevcuttur.) BaCon ile program yazarken duruma göre python kodlarını bile konsolda çalıştırıp neticesini alarak BaCon kodlarıyla devam edebilirsiniz.
Araştırdığımız zaman BASIC kodunu C’ye çeviren birçok yazılımla karşılaşabiliyoruz ancak bunların birçoğu ya terkedilmiş projeler (yıllardır güncellenmemiş) veya yeterli başvuru kaynağı bulunmuyor. BaCon ise aktif olarak devam eden bir proje ve İngilizce başvuru kaynakları yeterli sayılabilecek seviyededir.