Projek Bootloader Pascal Cetusan Debat Bahasa Pengaturcaraan Nostalgik

Pasukan Komuniti BigGo
Projek Bootloader Pascal Cetusan Debat Bahasa Pengaturcaraan Nostalgik

Dalam dunia pembangunan sistem pengendalian, di mana C dan C++ telah lama menguasai pengaturcaraan aras rendah, satu projek eksperimen bernama Jacqueline telah mencetuskan minat baru terhadap pilihan bahasa yang tidak dijangka: Pascal. Bootloader ini, yang ditulis dalam dialek Free Pascal untuk seni bina i386, telah mencetuskan perbincangan dalam kalangan pembangun tentang sejarah bahasa pengaturcaraan, keupayaan, dan fleksibiliti mengejutkan bahasa-bahasa yang sering dianggap ketinggalan zaman untuk pengaturcaraan sistem.

Kebangkitan Semula Pascal dalam Pengaturcaraan Sistem

Bootloader Jacqueline mewakili satu eksperimen teknikal yang menarik yang mencabar kebijaksanaan konvensional tentang bahasa pengaturcaraan mana yang sesuai untuk kerja sistem aras rendah. Walaupun projek itu sendiri sederhana—digambarkan oleh penciptanya sebagai lengkap sebaik ia dapat memaparkan Hello World—ia menunjukkan keupayaan Pascal yang tidak dijangka dalam pengaturcaraan bare-metal. Dialek Free Pascal menyediakan ciri-ciri penting untuk pengaturcaraan sistem, termasuk penunjuk, pengendali alamat memori, dan antara muka pemasangan sebaris. Gabungan ini membolehkan pembangun bekerja terus dengan perkakasan sambil mengekalkan sintaks berstruktur Pascal.

Sudah lama sejak saya melakukan ini (2019). Ia hanyalah prototaip untuk melihat sama ada boot loader PC standard boleh menyerahkan kawalan kepada sesuatu yang bukan C (atau Rust).

Kewujudan projek ini telah mendorong renungan tentang kepentingan sejarah Pascal dalam pembangunan sistem pengendalian. Beberapa pengulas menyatakan bahawa sistem utama termasuk versi awal Mac OS, Apple Lisa OS, dan Berkeley P-System pada asalnya dilaksanakan dalam Pascal, mencabar tanggapan bahawa C sentiasa menjadi pilihan lalai untuk pengaturcaraan sistem.

Sistem Pengendalian Bersejarah yang Ditulis dalam Pascal

  • Apple Lisa OS
  • Versi awal Mac OS
  • Berkeley P-System (UCSD p-System)
  • Pelbagai sistem pengendalian era 1980-an

Debat Bahasa Hebat Dikunjungi Semula

Perbincangan mengenai Jacqueline dengan pantas berkembang menjadi perbualan yang lebih luas tentang keutamaan bahasa pengaturcaraan dan konteks sejarah. Sesetengah pembangun menyatakan rasa terkejut dengan pilihan Pascal, manakala yang lain mempertahankan merit bahasa tersebut. Debat itu menyentuh ketegangan biasa antara kumpulan bahasa pengaturcaraan berbeza yang telah wujud selama beberapa dekad, dari perbincangan klasik Pascal lawan C kepada keutamaan bahasa moden.

Beberapa pengulas merujuk kritikan terkenal Brian Kernighan terhadap Pascal pada tahun 1981, manakala yang lain membalas bahawa banyak kritikannya telah ditangani dalam pelaksanaan Pascal kemudian seperti TurboPascal. Perbualan itu menyerlahkan bagaimana keutamaan bahasa sering mencerminkan pengalaman peribadi dan kekangan khusus era berbeza dalam sejarah pengkomputeran, bukannya keunggulan teknikal mutlak.

Ciri-ciri Free Pascal untuk Pengaturcaraan Sistem

  • Sokongan pointer menggunakan operator ^
  • Operator alamat memori menggunakan @
  • Pemasangan assembly secara inline melalui kata kunci asm
  • Keupayaan untuk menjana fail objek standard (.o)
  • Sokongan untuk format boleh laku PE dan ELF

i386 sebagai Tapak Permainan untuk Pembangunan OS Eksperimen

Pilihan seni bina i386 untuk Jacqueline juga menarik ulasan daripada komuniti pembangun. Beberapa peserta menyatakan bahawa i386 menyediakan platform yang ideal untuk projek sistem pengendalian eksperimen tepat kerana batasannya menghalang peluasan skop dan mengekalkan tumpuan pada nilai pendidikan. Sifat seni bina yang didokumenkan dengan baik dan kepentingan sejarahnya menjadikannya mudah diakses untuk pembelajaran, sementara kekangan teknikalnya menggalakkan pelaksanaan yang bersih dan fokus.

Perspektif ini menggema kenyataan kurang dramatik dalam pengumuman asal Linux oleh Linus Torvalds, mengingatkan pembangun bahawa bermula dengan platform yang terhad dan difahami dengan baik boleh membawa kepada pengalaman pembelajaran yang lebih berjaya dan pembangunan prototaip. Rantaian alat i386 yang matang dan dokumentasi yang luas menjadikannya amat sesuai untuk eksperimen seperti Jacqueline yang meneroka pilihan bahasa yang tidak konvensional.

Projek Jacqueline berfungsi sebagai peringatan bahawa keupayaan bahasa pengaturcaraan sering melangkaui kes penggunaan tipikal mereka, dan bahawa bahasa sejarah masih boleh menawarkan pandangan berharga untuk pembangun moden. Walaupun bootloader itu sendiri mungkin kekal sebagai prototaip yang mudah, perbincangan yang dicetuskannya menyerlahkan minat yang berkekalan dalam reka bentuk bahasa pengaturcaraan, seni bina sistem, dan nilai pendidikan mengunjungi semula asas pengkomputeran dengan perspektif segar.

Rujukan: Jacqueline