Rabu, 30 November 2011
Bahasa Aturcara Komputer Melayu
Pengaturcaraan komputer telah dimulakan dalam dunia perhubungan dan penulisan Inggeris sejak lama dahulu. Oleh itu semua bahasa penggaturcaraan komputer yang popular hari ini direka menggunakan bahasa Inggeris seperti Lisp, C, Java, PHP dan beratus lagi bahasa-bahasa pengaturcaraan yang lain walaupun majoriti pengaturcaranya bukan penutur asal bahasa Inggeris. Bahasa Inggeris telah menyatukan dunia komputer dan menjadi bahasa komunikasi dalam dunia komputer. Namun ini akan berubah apabila semua bangsa di dunia telah menguasai bidang komputer.
Semua pakar pengaturcaraan komputer boleh berbahasa Inggeris malah mereka telah mempelajari bahasa Inggeris sebelum mereka mula mempelajari pengaturcaraan. Bagi yang bahasa ibundanya Inggeris mereka masih juga perlu mempelajari maksud perkataan-perkataan di dalam pengaturcaraan yang sememangnya mempunyai maksud Inggeris yang berbeza namun tidak perlu mengambil masa yang panjang berbanding dengan mereka yang bahasa ibundanya bukan Inggeris. Mereka yang bahasa ibundanya bukan Inggeris selalunya akan mula mempelajari pengaturcaraan pada usia yang lebih lewat setelah menguasai serba sedikit bahasa Inggeris. Ini adalah amat merugikan.
Keperluan pengaturcaraan komputer akan bertambah dari zaman ke zaman. Penyelesaian komputer sebenarnya tiada berkesudahan. Bila suatu masalah komputer diselesaikan akan muncullah lagi masalah-masalah baru. Masalah komputer akan sentiasa bertambah. Ini adalah fakta yang sentiasa ditunjukkan semenjak bahasa pengaturcaraan komputer dicipta lebih dari 50 tahun dahulu. Malah bahasa pengaturcaraan itu sentiasa perlu dipertingkatkan seperti yang dipamerkan oleh C++11 yang merujuk kepada bahasa pengaturcaraan C++ spesifikasi tahun 2011. Bahasa pengaturcaraan itu diubah kerana masalah-masalah yang sentiasa mendatang. C/C++ adalah bahasa pengaturcaraan tulang belakang semua sistem operasi komputer popular hari ini seperti Microsoft Windows dan GNU/Linux. Hampir semua bahasa-bahasa pengaturcaraan yang lain dibangunkan menggunakan C/C++.
Di masa hadapan keperluan pakar pengaturcara komputer akan terus bertambah. Namun kos untuk mengaturcara komputer akan terus menurun. Pakar komputer di masa hadapan tidaklah lagi bergaji tinggi. Di masa hadapan kerja-kerja pengaturcaraan akan dilakukan oleh pakar-pakar suka rela. Lihat di sekeliling kita dan bertanyakan siapakah yang boleh mengaturcara komputer? Bolehkah kita mengadakan pakar-pakar aturcara yang ramai dan percuma? Kita boleh menambah jumlah pengaturcara bila bahasa aturcara boleh dipelajari dan dikuasai dari usia kanak-kanak sebaik sahaja mereka tahu membaca, menulis dan mengira.
Bahasa Aturcara Melayu
Dunia penulisan bahasa Melayu kini menggunakan huruf Rumi yang serasi dengan komputer. Untuk menjadikan komputer supaya berbahasa Melayu bukanlah sesuatu yang sukar kerana penulisan bahasa Melayu yang serasi komputer itu. Cuma yang menjadi rintangan ialah penggunaan perkataan-perkataan komputer yang sesuai. Penerimaan perkataan-perkataan komputer Melayu akan mengambil masa dan tidak semestinya terlalu lama. Bahasa Melayu itu sendiri telah meminjam banyak perkataan-perkataan dari Bahasa Inggeris dan Arab. Malah bahasa Melayu adalah merupakan suatu bahasa yang muda usia jika dibandingkan dengan bahasa-bahasa dunia yang lain. Maka itu bahasa Melayu masih boleh dibentuk. Satu daripada bentuk bahasa Melayu nanti ialah bahasa aturcara komputer.
Kita tidak perlu membangunkan suatu bahasa aturcara Melayu itu dengan kaedah sukar yang telah dilalui oleh bahasa-bahasa pengaturcaraan yang awal. Ada pelbagai bahasa aturcara dari sumber terbuka yang boleh kita gunakan sebagai pemula. Sumber terbuka adalah arah tuju masa hadapan. Sumber terbuka adalah dari masyarakat kepada masyarakat. Apabila kita memikirkan suatu bahasa aturcara Melayu kita sebenarnya memikirkan tentang masyarakat di sekitarnya. Kita mahukan bahasa aturcara Melayu itu digunakan oleh seberapa ramai orang. Malah sesiapa sahaja boleh menggunakannya tanpa sebarang halangan. Kita juga boleh mengajak masyarakat membina bahasa aturcara Melayu bersama-sama. Ia tidak terhad kepada satu negara. Masyarakat dari Malaysia, Indonesia, Brunai, Singapura, Thailand, Kemboja, Vietnam, seluruh Nusantara dan seluruh dunia Melayu boleh bersama-sama membangunkan bahasa aturcara Melayu.
Kita tidak perlu bermula dengan suatu dialek yang baru. Kita bermula dari sumber terbuka yang kecil seperti Lua dan Tiny C Compiler. Kemudian kita cuba yang lebih besar seperti Python dan Ruby. Dan kemudian gcc dan g++. Kita bermula dengan mendapatkan kod sumber dan menukarkan semua ungkapan Inggeris kepada Melayu. Kemudian kita terjemahkan seberapa banyak dokumentasi bahasa aturcara itu. Sebenarnya kerja banyak yang perlu dibuat ialah kerja terjemahan. Dokumentasi adalah pemangkin kepada penggunaan sesuatu bahasa aturcara itu.
Dengan cara menterjemahkan bahasa aturcara, pakar pengaturcara sesuatu bahasa aturcara Melayu itu nanti boleh mengembangkan kemahirannya kepada bahasa asal pengaturcaraan tersebut setelah menguasai bahasa Inggeris untuk projek-projek yang bercirikan bahasa Inggeris. Pakar pengaturcara bahasa aturcara Melayu tidak akan rugi atau ketinggalan. Malah pengaturcara bahasa aturcara Melayu akan mempunyai peluang yang lebih besar untuk meneroka projek-projek berbahasa Melayu dan Inggeris.
Alatan Menterjemah Bahasa Aturcara
Ianya mungkin tidak pernah diperlukan untuk menterjemah suatu bahasa aturcara dari Inggeris kepada bahasa pertuturan lain seperti kepada bahasa Melayu. Maka itu mungkin tiada alatan khusus untuk membantu kerja-kerja terjemahan itu. Maka itu kita perlu membangunkan semua alatan yang diperlukan untuk menterjemah suatu bahasa aturcara kepada suatu bahasa aturcara Melayu.
Ia bermula dengan suatu alatan untuk mengekstrak semua ungkapan bahasa Inggeris didalam kod sumber suatu bahasa aturcara itu kepada suatu senarai yang mudah dirujuk. Kemudian dilakukan terjemahan kepada senarai ungkapan tersebut. Sesudah itu suatu alatan lain pula akan mengambil senarai terjemahan itu dan menukar semua ungkapan Inggeris kepada ungkapan Melayu didalam kod sumber bahasa aturcara tersebut. Kod sumber dengan ungkapan yang telah diterjemah akan dikompil dan menjadi suatu bahasa aturcara Melayu yang baru. Suatu nama baru kepada bahasa aturcaran itu perlu diberikan untuk mengelakkan kekeliruan dengan bahasa aturcara yang asal. Ektensi fail untuk kod bahasa baru itu juga mesti ditukar seperti dari *.c kepada *.m.
Ada dua kategori ungkapan yang perlu diteliti iaitu katakunci dan mesej. Katakunci akan menentukan corak bahasa aturcara Melayu itu nanti. Dan mesej pula akan diberikan kepada pengguna apabila kod dari sesuatu bahasa itu dikompil. Mesej mempunyai konteks yang tertentu. Oleh itu semasa menterjemahkan mesej, perlulah diperhalusi konteks mesej tersebut supaya nanti maksudnya yang sebenar dapat disampaikan kepada pengguna dengan betul. Namun demikian proses terjemahan mungkin akan melalui beberapa versi. Maklum balas dari pengguna akan memperbaiki terjemahan tersebut.
Pembangunan Masa Hadapan
Dunia pengaturcaraan Melayu hanya memerlukan beberapa kompilar bahasa pengaturcaraan yang awal. Kompilar awal itu boleh dimulakan dari kod sumber terbuka. Kemudian pembangunan untuk masa hadapan bolehlah dilakukan mengikut lunas budaya Melayu. Orang Melayu mempunyai budaya komunikasi yang sopan dan santun. Istilah dan ragam pengaturcaraan Melayu perlulah mentaati lunas budaya Melayu agar hasilnya nanti menjadi sesuatu yang didambakan. Apa salahnya sedang komputer adalah teknologi informasi dan komunikasi.
Lihat Juga
Katakunci C
Langgan:
Catat Ulasan (Atom)
Pada pandangan saya, kita perlu kecilkan skop untuk lebih realistik dalam mencapai cita2 sebuah bahasa pengaturcaraan dalam Bahasa Melayu. Dalam tulisan sebelum ini, en. chelah mencadangkan utk bermula dgn C. Bagi saya ini agak sukar utk dicapai dan juga tidak begitu produktif memandangkan sekian banyak aplikasi yang kita gunakan sekarang telah dibangunkan menggunakan bahasa tersebut.
BalasPadamMengapa kita tidak mulakan dengan bahasa baru yang lebih mudah dan ringkas dengan kumpulan sasarannya ialah kanak-kanak di sekolah rendah (5 - 12 tahun). Objektif utamanya adalah untuk mendedahkan kanak2 ini kepada konsep asas logik pada peringkat awal lagi. Penguasaan logik bagi saya lebih penting utk kanak2 ini berbanding penguasaan bahasa seperti Bahasa Inggeris. Harapan utamanya adalah setelah mempelajari bahasa baru ini, mereka lebih bersedia utk mempelajari bahasa sebenar seperti C, Python, Java dsbnya apabila memasuki sekolah menengah dan telah faham konsep asas pengaturcaraan seperti 'data structure', 'control flow', algoritma dll.
Bahasa baru ini juga boleh menjadi asas untuk kita bangunkan persekitaran pengaturcaraan yang lebih lengkap seperti scratch yang dibangunkan oleh MIT - http://scratch.mit.edu/
Dengan keterbatasan waktu dan tenaga yang kita ada sekarang, adalah lebih praktikal utk kita mulakan dengan skop yang lebih kecil dan matlamat yang bersifat jangka pendek. Namun tidak mustahil ia boleh menjadi pemangkin utk generasi akan datang menghasilkan bahasa sebenar seperti C dan lain-lain.
Saya bersetuju dengan suatu bahasa pengaturcaraan yang disasarkan kepada kanak-kanak di sekolah rendah seperti scratch. Apa kata kita menterjemahkan scratch kepada bahasa Melayu?
BalasPadamSebelum ini saya pernah membuat satu bahasa pengaturcaraan baru berdasarkan Lisp yang saya panggil InLisp. Ia telah mengambil masa 3 tahun untuk saya lengkapkannya dengan pelbagai librari. Selepas itu saya juga telah mencuba beberapa kali untuk membangunkan bahasa baru dan diantaranya ialah Dript. Saya masih berminat dan bersedia untuk menempuh cabaran masa untuk membangunkan satu bahasa baru.
Tapi pada pendapat saya, menterjemahkan satu kompilar itu lebih mudah dan cepat untuk dilakukan berbanding membuat satu bahasa baru. Saya memilih C semata-mata kerana saya mempunyai pengalaman dengan bahasa itu. Saya bersedia untuk meneroka bahasa-bahasa lain. Pada pendapat saya menterjemahkan kompilar itu akan mengajar kita sesuatu yang boleh kita gunakan nanti untuk membuat suatu bahasa baru.
Walaubagaimanapun, pada masa yang sama kita boleh menterjemah dan masih boleh membuat satu bahasa baru. Kita boleh gunakan Coco/r untuk membuat bahasa baru. Kelebihan Coco/r ialah kita boleh memilih apa saja lesen untuk bahasa baru itu nanti. Tapi kita perlukan spesifikasi rekabentuk bahasa baru itu dahulu.
Kami di Malaybasic telah menyiapkan satu pengaturcaraan berasaskan Bahasa Malaysia.
BalasPadamMalaybasic adalah penkompil yang menyediakan bahasa pengaturcaraan 2D untuk PC dan HTML5. Dengan menggunakan pengaturcaraan mirip BASIC, Malaybasic mampu mewujudkan pelbagai jenis program 2D terutama game, dengan minimum masa pembangunan dan dengan bahasa mudah.
Bahasa Malaybasic adalah menyerupai BASIC (Beginner's All-purpose Symbolic Instruction Code) tetapi diselaraskan berasaskan Bahasa Malaysia. Selain menampilkan konstruk klasik BASIC seperti 'IF' dan 'THEN', ia juga mempunyai pengaruh moden seperti 'function' dan 'objek'. Selain itu, Malaybasic mempunyai banyak arahan fungsi dalaman bagi membantu dalam merealisasikan pembikinan 2D game.
Malaybasic enjin 2D adalah berdasarkan operasi html5 canvas. Ini mempunyai manfaat untuk keserasian dengan hampir semua 'platform'. Enjin 2D html5 itu sendiri adalah sangat berkeupayaan kerana telahpun digunakan oleh jutaan pengguna website di seluruh dunia. Selain itu, berbanding dengan kaedah lain pengkompilan berasaskan html5 mempunyai potensi memperluaskan app ke platform lain seperti Android, Window8 dan sebagainya.
Malaybasic datang dengan Editor sendiri, Integrated Development (IDE). IDE membolehkan arurcara diedit, ujian, menyemak dan menyusun di satu tempat sahaja. Malaybasic menyediakan dokumentasi yang agak lengkap. Semua arahan mempunyai laman bantuan mereka sendiri, penjelasan mengenai arahan tersebut dan contoh-contoh menggunakannya.
Untuk beekongsi masalah dalam pengaturcaraan, Malaybasic menyediakan forum rasmi di laman web www.malaybasic.com