Programmazione

Un altro mio hobby è la programmazione e, più in generale, trafficare con i computer. Questo passatempo è iniziato molto presto, quando avevo otto/nove anni, grazie a mio fratello maggiore che comprò quello che all'epoca era uno dei migliori PC in circolazione, un IBM PS/2. Da quel momento in avanti non ho più smesso di interagire con apparecchi calcolatori di vario tipo.

Ovviamente ho iniziato semplicemente copiando da un libro dei programmi scritti in BASIC e facendoli girare. Successivamente ho imparato piano piano a scrivere programmi nuovi (anche grazie all'aiuto di mio fratello), e negli anni successivi sono passato dal BASIC a linguaggi più interessanti come (Turbo) Pascal, Modula-2, C e C++. Sfortunatamente pochi dei miei programmi di questo periodo sono sopravvissuti (e la maggior parte erano comunque non finiti).

A partire dal 1999, quando ho iniziato gli studi universitari, la quantità di tempo che ho potuto dedicare alla programmazione è andato diminuendo sempre più fino a sparire del tutto pochi anni più tardi.

Il mio interesse nella programmazione si è riacceso attorno al 2009, principalmente perché mi è capitato di imbattermi nel meraviglioso libro Structure and Interpretation of Computer Programs di Abelson, Sussman e Sussman (che tra l'altro potete leggere online, e legalmente, seguendo il link precedente). La scoperta del paradigma di programmazione funzionale è stata una vera e propria epifania, al punto tale che oggi cerco sempre di programmare in questo stile quando possibile.

Da quel momento in avanti il mio linguaggio di programmazione preferito è sempre stato Scheme, la versione riveduta e corretta del glorioso linguaggio Lisp. Occasionalmente mi sono anche cimentato con Javascript, nella sua versione «depurata» dalle pecche più evidenti descritta in un celebre libro di Douglas Crockford. Più recentemente ho scoperto l'esistenza del linguaggio di programmazione Haskell, e mi piacerebbe proprio trovare il tempo di impararlo per bene.

Link utili

Sembra proprio che ogni pagina web personale debba necessariamente avere una sezione piena di link (in)utili, quindi eccoci qui...