Autor, koji kod piše ručno vikendom, postavio je izazov izrade interpretera Pythona u 512 do 1024 bajta C-koda bez makronaredbi i knjižnica. Iako ne može u potpunosti replicirati CPython, program se usredotočuje na podskup jezika koji izgleda kao Python: rabi def, dvotočke, uvlačenje i if-naredbe bez zagrada. Interpreter pohranjuje stanje u globalnim varijablama i rabi fiksni niz od 999 mjesta za izvorni kod, a varijable i funkcije se smještaju u isti niz. Izrazima upravlja parser rekurzivnog spusta koji ih izravno izvršava, bez ikakve obrade pogrešaka i uz pretpostavku da je kod ispravan. Blokovi se izvršavaju sve dok se uvlačenje ne smanji, a zatim se izvođenje vraća, uz uporabu C-stoga za rekurziju.
Python interpreter u 1024 bajta C-koda
Izvori
Originalni sadržaj iz javnih izvora. Pune članke ne objavljujemo — kliknite za izvornu publikaciju.
- Hacker News Front (2026-09-06 23:14) Pročitaj original ↗
AI će pretražiti dodatne izvore i sintetizirati detaljniji sažetak (8-12 rečenica) iz više izvora. Rezultat se ne sprema javno i ne indeksira.