Migliora il tuo craft, un progetto alla volta.
Vuoi diventare un bravo programmatore? Programma progetti significativi!
Filtri 1
Esplora i progetti
CHIP-8 Emulator
Implementa il tuo primo emulatore CHIP-8, una macchina virtuale sviluppata da Joseph Weisbecker negli anni 70 per facilitare la scrittura di videogiochi sui primi microcomputers, come il COSMAC VIP. Un ottimo progetto per chi vuole imparare cosa significa scrivere un emulatore.
Trusting Trust
Nel 1984 Ken Thompson rese popolare un'idea interessante: la costruzione di una backdoor auto-replicante da inserire in un compilatore C. L'obiettivo di questo progetto è mostrare come implementare in pratica questa idea lavorando con il compilatore tinyCC e un semplice programma di login.
Progetti in costruzione
Simple Shell
Ogni programmatore esperto dovrebbe aver implementato almeno una volta una shell. La shell è il programma che interagisce con il sistema operativo per eseguire tutti i comandi di nostro interesse: processi, pipe, e il ciclo read-eval-print (REPL).
Simple Editor
Ogni programmatore esperto dovrebbe aver implementato almeno una volta un text editor. L'editor è il programma che utilizziamo ogni giorno per scrivere ed editare il testo. Senza editor non possiamo scrivere codice.
Simple Interpreter
Ogni programmatore esperto dovrebbe aver implementato almeno una volta un interprete. L'inteprete è quel programma che trasforma il testo in computazione. Esattamente come fa Python. Scrivere un interprete significa vedere come si implementa un linguaggio di programmazione interpretato.
Simple Compiler
Ogni programmatore esperto dovrebbe aver implementato almeno una volta un compilatore. Il compilatore è quel programma che trasforma il testo in un altro programma, che può poi essere eseguito. Esattamente come fa gcc. Scrivere un compilatore significa vedere come si implementa un linguaggio di programmazione compilato.