Bagaimana cara untuk membuat suatu bahasa pemrograman?

Dalam membuat sebuah program pasti kita membutuhkan suatu bahasa pemrograman untuk membangunnya.Banyak sekali bahasa pemrograman yang sudah terkenal dan melegenda seperti java,c,dll yang bertujuan memenuhi kebutuhan programmer untuk membangun program dengan lebih efektif dan efisien. Untuk membuat bahasa pemrograman yang ideal bagi kita.

Bagaimana tahapan untuk membuat suatu bahasa pemrograman ?

Saat ini, sudah banyak bahasa pemrograman yang dapat digunakan untuk mengembangkan suatu program atau aplikasi. Tetapi ada saja bahasa pemrograman baru yang muncul hampir setiap tahun. Mengapa kita tidak menggunakan bahasa pemrograman yang sudah ada? Apakah bahasa pemrograman baru dibuat sekedar untuk main-main? Bahasa pemrograman baru terus menerus dibuat untuk memperbaiki kelemahan bahasa pemrograman yang sudah ada. Banyak programmer yang mengeluh karena bahasa pemrograman yang mereka gunakan sulit dan bermasalah. Saya akan menjelaskan bagaimana cara untuk membuat bahasa pemrograman baru.

Hal yang paling pertama dilakukan adalah mempersiapkan diri anda. Menciptakan bahasa pemrograman baru jauh lebih sulit dibandingkan dengan membuat sebuah program atau aplikasi. Proses pengembangan bahasa pemrograman baru dapat memakan waktu bertahun-tahun. Anda harus memiliki motivasi yang kuat untuk mulai mengembangkan bahasa pemrograman baru. Jangan takut untuk gagal. Sekalipun anda gagal, sejauh apapun anda sudah mengembangkan suatu bahasa pemrograman, anda tidak akan kehilangan banyak. Memulai pengembangan bahasa pemrograman baru tidak selalu memerlukan uang yang banyak. Anda akan mendapat banyak pengalaman selama pengembangan ini.

Hal berikutnya yang perlu diperhatikan dalam pembuatan bahasa pemrograman adalah cara penulisan kode. Penulisan kode dalam suatu bahasa pemrograman harus mudah dimengerti dan tidak jauh berbeda dengan bahasa pemrograman yang sudah ada. Jika anda membuat penulisan kode sangat jauh berbeda dengan yang sudah ada, kemungkinan besar adopsi bahasa pemrograman yang anda buat akan lambat. Selain itu, learning curve atau proses pembelajaran bahasa pemrograman yang anda buat akan menjadi lebih sulit. Programmer menyukai bahasa pemrograman yang simpel, familiar, dan mudah dipelajari.

Setiap bahasa pemrograman memiliki pesan error apabila kode tidak ditulis dengan benar. Buatlah pesan error yang jelas, tetapi jangan terlalu singkat maupun terlalu panjang. Ini akan membuat programmer kebingungan. Kita harus mengetahui apa maksud dari programmer membuat kode seperti ini. Dengan itu, kita dapat menemukan error, memberi petunjuk pada programmer, dan jika mungkin memperbaiki kode yang salah.

Bahasa pemrograman yang anda buat tidak akan menjadi program tanpa compiler. Compiler adalah program yang merubah kode menjadi suatu program yang dapat digunakan. Agar adopsi bahasa pemrograman yang kita buat lebih cepat, compiler harus dapat bekerja dengan cepat.

Pastikan juga bahasa pemrograman yang anda buat dapat bekerja secara efisien. Percuma saja bahasa pemrograman yang anda buat terlihat bagus tetapi tidak dapat berjalan secara efisien. Perhatikan performa I/O dan alokasi memory dalam runtime library.

Kurang lebih seperti itulah cara membuat bahasa pemrograman anda sendiri. Langkah terakhir termasuk salah satu langkah yang paling sulit dalam pembautan sebuah bahasa pemrograman baru. Langkah terakhir tersebut adalah mencari audiens yang bersedia menggunakan bahasa pemrograman anda. Buatlah dokumentasi, tutorial, artikel, dan sebagainya yang dapat membantu programmer untuk memulai coding dengan bahasa pemrograman anda. Anda bisa memperkenalkan bahasa pemrograman yang anda buat lewat internet, acara pertemuan programmer, konferensi, dan sebagainya. Mintalah saran dari audiens, saran-saran yang diterima dapat membuat bahasa pemrograman yang kita buat lebih baik.

Sumber: -http://www.drdobbs.com/architecture-and-design/so-you-want-to-write-your-own-language/240165488

image

Bahasa Pemrograman sangatlah beragam ,banyak orang berlomba-lomba untuk menciptakan bahasa pemrograman sesuai apa yang di inginkan. Beberapa bahasa pemrograman yang sudah terkenal dan sering digunakan , yaitu : Java, C,C++,Ruby,Php,Phyton,Javascript,dll. Penggunaan bahasa pemrograman sendiri di sesuaikan dengan kebutuhan seorang programmer untuk membuat suatu program yang di inginkan. Contohnya, Java sering digunakan untuk membuat aplikasi berbasis android, Php digunakan untuk membuat sebuah web yang dinamis ,dan masih banyak lagi. Beberapa orang yang telah akrab dengan suatu bahasa pemrograman mungkin memiliki beberapa pendapat dalam pemakaiannya, seperti suatu sintaks yang tidak efisien atau beberapa istilah dalam pemrograman yang menurutnya kurang pas. Untuk itu beberapa orang juga telah memberikan solusi bagi beberapa permasalahan penggunaan suatu bahasa pemrograman dengan membuat bahasa pemrograman yang cocok digunakan sesuai keinginan dan kebutuhan . Oleh karena itu, beberapa langkah-langkah berikut ini akan memberikan gambaran bagaimana cara membuat suatu bahasa pemrograman, yaitu :

1. Membuat daftar kelemahan sebuah bahasa pemrograman

Seseorang yang telah paham dengan terminologi bahasa pemrograman memiliki pendapat tentang kekurangan suatu bahasa tersebut contohnya terlalu banyak istilah yang kurang tepat atau mungkin sintaks yang kurang tepat.

2. Merancang Syntax.

Dalam merancang syntax diperlukan beberapa hal berikut anatara lain :
a) benar-benar menguasai bahasa pemrograman misalnya C++
b) menentukan jenis jalannya bahasa pemrograman apakah langsung di compile,Interpreting , atau hanya di parser
c) menguasai struktur sintaks bahasa pemrograman sendiri

Mengembangkan Syntax yang baru dengan pedoman syntax yang lama dengan menghilangkan statement dan dapat mengubah command (perintah) atau dapat mentranslasikan (menterjemahkan) bahasa pemrograman yang berbahasa Inggris, ke dalam Bahasa Indonesia (atau bahasa lainnya) untuk memudahkan pemahaman dan pengajaran konsep.

3. Memilih bahasa

Dalam membuat bahasa pemrograman sendiri membutuhkan sebuah bahasa pemrograman karena bahasa perograman sendiri adalah program. Sebagian orang ada yang suka untuk menggunakan C++ karena kinerjanya dan set fiturnya yang besar.

4. Membuat parser dan translator

Merupakan bagian yang tersulit Karena parser memilah source code, memeriksa keabsahan script, dan ini sangat rumit. Kemudian mengolah sintaks assignment, yang bertolak belakang dengan translator yang hanya menerima input dari parser dan menulis ke file output.

5. Merancang Parser dan Translator

Setelah merancang sintaks selanjutnya merancang parser dan translator.
Merancang parser dan translator dalam satu executable atau secara terpisah (executable parser dan translator masing-masing) dapat digunakan, Namun bisa mempertimbangkan pilihan kedua. Setelah parser dan translator jadi dapat digabungkan.

6. Membuat Dokumentasi

Untuk membatu orang lain paham bagaimana bahasa Anda bekerja, perlu adanya dokumentasi. Dengan adanya dokumentasi ,akan mempermudah user untuk menggunakan bahasa pemrograman yang telah Anda ciptakan. User dapat belajar sendiri dengan hanya melihat dokumentasi yang Anda buat.

7. Mengadakan Support

Terkadang seorang User pemula tidak mengerti tentang istilah-istilah asing yang ada dalam dokumentasi Anda. Untuk itu, Cara memberikan jawaban tentang pertanyaan-pertanyaan dari user totally beginner dengan membuat forum,blog, ataupun mailist.

8. Terus mengembangkan

Sebagai seorang yang membuat suatu bahasa pemrograman harusnya selalu membuat inovasi baru lainnya dengan meningkatkan efisiensi dan kemampuan bahasa tersebut. Membentuk sebuah tim juga dapat menjadi suatu solusi untuk semakin mengembangkan bahasa pemrograman. Menguji bahasa perograman yang telah dibuat juga perlu untuk mengetahui kualitas dari bahasa tersebut agar termotivasi untuk semakin mengembangkan bahasa tersebut.

makeproglang
Sudah banyak jenis bahasa pemrograman yang ada saat ini,seperti Java, C, C#, C++, Ruby, PHP dan lain lain.Tetapi tentu setiap bahasa pemrograman memiliki kelebihan dan kekurangan tersendiri.Sehingga banyak perusahaan teknologi besar yang membuat bahasa pemrogramannya sendiri demi mencapai tujuan mereka.Semua bahasa pemrograman adalah semacam mekanisme yang memungkinkan manusia memasukkan instruksinya ke komputer program Tersimpan. Karena komputer mengeksekusi opcode biner yang memetakan ke instruksi prosesor dan manusia tidak dapat secara mekanis mengendalikan CPU secara langsung ,orang bisa mengatakankan bahwa semua yang memungkinkan manusia memasukkan instruksi ke suatu program komputer yang akan dijalankan di komputer adalah semacam “bahasa pemrograman”.

Bukan suatu yang mudah untuk membuat bahasa program sendiri,anda harus benar benar terlatih dibidang computer science, beginilah langkah – langkah dalam membuat bahasa program sendiri:

  1. Telah sangat paham dengan terminologi. Penulis kompilator sering menggunakan istilah yang tidak biasa. Baca kompiler sebelum melanjutkan. Pastikan untuk mengetahui segala hal yang perlu Anda ketahui.

  2. Tentukan tujuan anda menulis bahasa program ini,apakah untuk tujuan yang spesifik atau tujuan umum.

  3. Pikirkan konsep dasar dari bahasa program yang ingin anda buat.

  4. Pikirkan beberapa tugas spesifik yang ingin dilakukan seseorang dengan bahasa pemrograman Anda. Misalnya, ‘mereka mungkin ingin mengarahkan robot untuk mengikuti garis’ atau ‘mereka mungkin ingin membuat program desktop yang relatif portabel di dalamnya’ atau ‘mereka mungkin ingin membuat aplikasi web dengannya’.

  5. Lakukan percobaan dengan gagasan sintaks (teks bahasa) untuk contoh di atas.

  6. Tuliskan tata bahasa untuk sintaknya

  7. Tentukan apakah bahasa akan diinterpretasikan atau dikompilasi. Artinya, jika diinterpretasikan , pengguna Anda biasanya akan mengedit program Anda di editor, dan menjalankannya langsung pada penginterpretasian; Sementara jika di kompilasi, pengguna Anda akan mengedit program Anda, mengkompilasinya, menyimpan executable yang dihasilkan di suatu tempat dan menjalankannya.

  8. Tulis front end scanner dan parser atau cari alat yang membantu Anda dalam hal ini.Juga, pikirkan bagaimana compiler Anda akan memperingatkan pengguna Anda tentang program yang salah dan kesalahan sintaksis.

  9. Gunakan informasi parser untuk menulis kode objek atau representasi perantara. Minta parser membuat AST, lalu buat kode objek Anda dari AST dengan menggunakan three address code, lalu buat tabel simbol untuk menentukan fungsi Anda, variabel global, dll.Juga, tergantung pada bahasa Anda, Anda mungkin juga ingin membuat tabel pointer virtual atau tabel informasi untuk kelas Anda (untuk mendukung refleksi atau RTTI).

  10. Tuliskan the executor atau code generator yang akan menyatukan semuanya bersama-sama.

  11. Cobalah membuat beberapa program dengan bahasa program ini.

  12. Pertimbangkan bagaimana pengguna akan men-debug program mereka sendiri.

  13. Jika bahasa Anda menggunakan library standar, Anda pasti ingin menuliskannya sendiri. Seiring dengan fitur runtime lainnya jika Anda membutuhkannya.Secara khusus, jika Anda menulis kompiler, Anda memerlukan kode yang akan dijalankan sistem operasi agar bisa menjalankan kode pengguna (misalnya, mengalokasikan semua variabel global).

  14. Publikasikan bahasa Anda, beserta spesifikasi untuk itu dan beberapa contoh dari apa yang dapat Anda lakukan di dalamnya.Jangan lupa mendokumentasikan bagaimana Anda bisa berintegrasi dengan library, bahasa dan cara menggunakan runtime features dan atau library standar yang ada.

Sumber:


https://www.quora.com/How-does-one-create-a-programming-language