Cara Membuat Bahasa Pengaturcaraan: 15 Langkah (dengan Gambar)

Isi kandungan:

Cara Membuat Bahasa Pengaturcaraan: 15 Langkah (dengan Gambar)
Cara Membuat Bahasa Pengaturcaraan: 15 Langkah (dengan Gambar)

Video: Cara Membuat Bahasa Pengaturcaraan: 15 Langkah (dengan Gambar)

Video: Cara Membuat Bahasa Pengaturcaraan: 15 Langkah (dengan Gambar)
Video: Tutorial Membersihkan Kipas CPU Komputer 2024, April
Anonim

Ramai orang mengalami kesukaran atau kecewa dengan bahasa pengaturcaraan yang mereka gunakan setiap hari. Ada yang menginginkan sesuatu ditangani dengan lebih abstrak, sementara yang lain tidak suka melaksanakan ciri yang mereka kehendaki adalah 'standard'. Sama ada anda seorang profesional IT atau hanya penggemar hobi, berkali-kali anda mungkin ingin membuat bahasa pengaturcaraan baru.

Langkah-langkah

Buat Bahasa Pengaturcaraan Langkah 1
Buat Bahasa Pengaturcaraan Langkah 1

Langkah 1. Membiasakan diri dengan teknologi

Anda tidak boleh membuat bahasa pengaturcaraan jika anda tidak tahu menggunakan komputer.

Buat Bahasa Pengaturcaraan Langkah 2
Buat Bahasa Pengaturcaraan Langkah 2

Langkah 2. Biasakan dengan istilah

Penulis penyusun sering menggunakan istilah yang tidak dikenali. Baca kompilator sebelum meneruskan. Pastikan anda mengetahui semua perkara yang perlu anda ketahui.

Buat Bahasa Pengaturcaraan Langkah 3
Buat Bahasa Pengaturcaraan Langkah 3

Langkah 3. Tentukan masalah apa yang diselesaikan oleh bahasa anda

Adakah ini menangani masalah khusus domain, atau apakah itu bahasa tujuan umum?

Buat Bahasa Pengaturcaraan Langkah 4
Buat Bahasa Pengaturcaraan Langkah 4

Langkah 4. Fikirkan tentang semantik bahasa anda dan konsepnya

  • Adakah anda akan membenarkan akses penunjuk langsung atau tidak?
  • Apakah jenis data bahasa anda?
  • Adakah bahasa statik atau dinamik?
  • Apakah model memori anda? Adakah anda akan menggunakan pengumpul sampah atau pengurusan memori manual? (Sekiranya anda menggunakan pengumpul sampah, bersiaplah untuk menulisnya atau menyesuaikan yang ada dengan bahasa anda.)
  • Bagaimana cara menangani serentak? Adakah anda akan menggunakan model threading / locking yang sederhana atau sesuatu yang lebih kompleks seperti Linda atau model pelakon? (Sejak sekarang komputer mempunyai banyak teras.)
  • Adakah terdapat fungsi primitif yang terdapat dalam bahasa atau semuanya akan datang dari perpustakaan?
  • Apakah paradigma atau paradigma bahasa anda? Berfungsi? Berorientasikan objek? Prototaip (seperti JavaScript)? Berorientasikan aspek? Berorientasikan templat? Atau sesuatu yang sama sekali baru?
  • Bagaimana bahasa anda akan berinteraksi dengan perpustakaan dan bahasa yang ada (terutamanya C)? Perkara ini penting jika anda membina bahasa khusus domain.
  • Akhirnya, beberapa jawapan untuk soalan-soalan ini akan dijawab oleh langkah kedua dan akan membantu anda menjawab langkah seterusnya.
Buat Bahasa Pengaturcaraan Langkah 5
Buat Bahasa Pengaturcaraan Langkah 5

Langkah 5. Fikirkan beberapa tugas khusus yang ingin dilakukan seseorang dengan bahasa anda

Sebagai contoh, 'mereka mungkin ingin mengarahkan robot mengikuti garis' atau 'mereka mungkin ingin membuat program desktop yang agak mudah alih di dalamnya' atau 'mereka mungkin ingin membuat aplikasi web dengannya'.

Buat Bahasa Pengaturcaraan Langkah 6
Buat Bahasa Pengaturcaraan Langkah 6

Langkah 6. Eksperimen dengan idea sintaks (teks bahasa) untuk contoh di atas

Berhati-hatilah untuk memastikan bahasa anda berada dalam kategori bahasa tanpa konteks atau sesuatu di dalamnya. Penjana penghurai anda dan anda akan menghargainya di kemudian hari

Buat Bahasa Pengaturcaraan Langkah 7
Buat Bahasa Pengaturcaraan Langkah 7

Langkah 7. Tuliskan tatabahasa formal untuk sintaksis

Buat Bahasa Pengaturcaraan Langkah 8
Buat Bahasa Pengaturcaraan Langkah 8

Langkah 8. Tentukan sama ada bahasa itu akan ditafsirkan atau disusun

Maksudnya dalam dunia yang ditafsirkan pengguna anda biasanya akan mengedit program anda dalam editor, dan menjalankannya secara langsung pada jurubahasa; semasa berada di dunia yang disusun, pengguna anda akan menyunting program anda, menyusunnya, menyimpan hasil yang dapat dilaksanakan di suatu tempat dan menjalankannya.

Buat Bahasa Pengaturcaraan Langkah 9
Buat Bahasa Pengaturcaraan Langkah 9

Langkah 9. Tulis pengimbas dan penghurai bahagian depan atau cari alat yang membantu anda dalam hal ini

Juga, fikirkan bagaimana penyusun / jurubahasa anda akan memberi amaran kepada pengguna anda mengenai kesalahan program dan kesalahan sintaks

Buat Bahasa Pengaturcaraan Langkah 10
Buat Bahasa Pengaturcaraan Langkah 10

Langkah 10. Gunakan maklumat penghurai untuk menulis kod objek atau perwakilan perantaraan

Minta pengurai membuat AST, kemudian buat kod objek anda dari AST menggunakan tiga kod alamat atau SSA kakaknya, kemudian buat jadual simbol untuk menentukan fungsi anda, pemboleh ubah global, dll.

Juga, bergantung pada bahasa anda, anda mungkin juga ingin membuat jadual penunjuk maya atau jadual maklumat untuk kelas anda (untuk menyokong refleksi atau RTTI)

Buat Bahasa Pengaturcaraan Langkah 11
Buat Bahasa Pengaturcaraan Langkah 11

Langkah 11. Tulis pelaksana atau penjana kod yang akan mengikat semuanya bersama-sama

Buat Bahasa Pengaturcaraan Langkah 12
Buat Bahasa Pengaturcaraan Langkah 12

Langkah 12. Tulis banyak program ujian untuk menguji bahasa

Anda ingin membuat program yang menekankan beban tatabahasa formal anda untuk melihat bahawa penyusun anda menerima semua yang ada di dalam definisi anda dan menolak semua yang berada di luarnya

Buat Bahasa Pengaturcaraan Langkah 13
Buat Bahasa Pengaturcaraan Langkah 13

Langkah 13. Pertimbangkan bagaimana pengguna akan menyahpepijat program mereka sendiri

Buat Bahasa Pengaturcaraan Langkah 14
Buat Bahasa Pengaturcaraan Langkah 14

Langkah 14. Sekiranya bahasa anda menggunakan perpustakaan standard, anda pasti mahu menulisnya

Bersama dengan pengutip sampah atau ciri runtime lain jika anda memerlukannya.

Khususnya, jika anda menulis penyusun, anda memerlukan kod yang akan dilaksanakan oleh sistem operasi untuk mula menjalankan kod pengguna (misalnya, memperuntukkan semua pemboleh ubah global)

Buat Bahasa Pengaturcaraan Langkah 15
Buat Bahasa Pengaturcaraan Langkah 15

Langkah 15. Terbitkan bahasa anda, bersama dengan spesifikasi untuknya dan beberapa contoh perkara yang boleh anda lakukan di dalamnya

Jangan lupa untuk mendokumentasikan bagaimana anda boleh berintegrasi dengan perpustakaan, bahasa dan cara menggunakan ciri runtime dan / atau perpustakaan standard

Video - Dengan menggunakan perkhidmatan ini, beberapa maklumat dapat dikongsi dengan YouTube

Petua

  • Mulakan dengan merancang bahasa anda dan jangan menulis kod apa pun, sehingga anda berpuas hati dan telah menjawab semua (atau sebahagian besar) soalan atau masalah yang berkaitan dengan reka bentuk anda kerana lebih mudah untuk menukar reka bentuk lebih awal daripada kemudian.
  • Ketahui platform sasaran anda (sistem operasi dan perpustakaan) untuk penyusun / jurubahasa anda, bagaimanapun, anda akan menggunakannya dan memanipulasinya.

Amaran

  • Fikirkan jika anda benar-benar memerlukan bahasa baru, dan apa yang dimiliki oleh bahasa anda yang baru yang tidak dimiliki oleh bahasa lain (Ini mungkin merupakan gabungan ciri atau satu ciri).
  • Menulis bahasa sukar jika anda tidak tahu apa yang anda lakukan. Ia juga memerlukan banyak latihan.
  • Bersiaplah untuk meluangkan masa dalam reka bentuk bahasa, kerana anda tidak akan berpeluang mengubah bahasa anda setelah anda menulis penyusun dan melewati titik reka bentuk.
  • Jangan cuba menjadikan ciri-ciri anda menjadi gabungan beberapa bahasa, seperti mengatakan bahawa bahasa anda akan menjadi gabungan bahasa X, bahasa Y dan bahasa Z. Sejarah telah menunjukkan kepada kita bahawa bahasa yang diciptakan sedemikian tidak akan pernah berjaya, atau semua orang akan memprogram PL / 1 dan bukannya sesuatu berdasarkan C.

Disyorkan: