HeadlinesBriefing favicon HeadlinesBriefing.com

Desain Bahasa POP-2

Hacker News •
×

Implementasi baru dari bahasa pemrograman POP-2 menargetkan Mesin Virtual Uxn, dengan sintaks ALGOL dan model evaluasi concatenative yang dalam. Berbeda dengan bahasa tradisional, POP-2 menggunakan stack operand eksplisit di mana penugasan seperti `123 -> foo` nilai sebelum dikonsumsi. Compiler sangat kompakt, kurang dari 800 baris dan muat dalam 2.5kb memori.

Struktur bahasa mirip dengan Pascal dengan pernyataan yang dipimpin kata kunci diakhiri dengan titik koma. Fungsi mengembalikan nilai multiple dengan meninggalkan mereka di stack untuk operasi selanjutnya. Aliran kontrol mencakup blok `if/then/elseif/else/close` yang menumpuk nilai di stack, dan perulangan menggunakan pernyataan `goto` eksplisit. Variabel dideklarasikan dalam blok `vars` dengan panjang byte yang dapat dikonfigurasi.

Operasi I/O menargetkan Sistem Varvara menggunakan nomor port (misalnya, `0x48 => 23` mencetak "H" ke port konsol 0x17/0x18). Array mendukung aritmetika pointer melalui prefix `#` dan kurung kurawal untuk merujuk memori. Fungsi lengkap pencetakan string menunjukkan pendekatan berbasis stack untuk iterasi dan output. Implementasi ditulis dalam Uxntal dan dihost di intercatlang.incoming.