Attualmente sono principalmente un programmatore D e sto cercando di aggiungere un altro linguaggio alla mia cassetta degli attrezzi, preferibilmente uno che supporti gli hack di metaprogrammazione che semplicemente non possono essere eseguiti in un linguaggio compilato staticamente come D.
Ho letto un po 'di Lisp e mi piacerebbe trovare un linguaggio che consenta alcune delle cose interessanti che fa Lisp, ma senza la strana sintassi, ecc. Di Lisp. Non voglio iniziare una guerra di fiamma linguistica e sono sicuro che sia Ruby che Python hanno i loro compromessi, quindi elencherò ciò che è importante per me personalmente. Per favore dimmi se Ruby, Python o qualche altro linguaggio sarebbe meglio per me.
Importante:
- Buona metaprogrammazione. Capacità di creare classi, metodi, funzioni, ecc. In fase di esecuzione. Preferibilmente, distinzione minima tra codice e dati, stile Lisp.
- Sintassi piacevole, pulita, sana e semantica coerente e intuitiva. Fondamentalmente un linguaggio moderno e ben congegnato, divertente da usare.
- Paradigmi multipli. Nessun paradigma è giusto per ogni progetto, o anche per ogni piccolo sottoproblema all'interno di un progetto.
- Un linguaggio interessante che effettivamente influenza il modo in cui si pensa alla programmazione.
Abbastanza importante:
- Prestazione. Sarebbe bello se le prestazioni fossero decenti, ma quando le prestazioni sono una vera priorità, userò invece D.
- Ben documentato.
Non importante:
- Dimensioni della comunità, disponibilità di biblioteche, ecc. Nessuna di queste è caratteristica della lingua stessa e tutte possono cambiare molto rapidamente.
- Disponibilità di lavoro. Non sono un programmatore professionista a tempo pieno. Sono uno studente laureato e la programmazione è tangenzialmente rilevante per la mia ricerca.
- Qualsiasi funzionalità progettata principalmente con progetti di grandi dimensioni su cui hanno lavorato in mente un milione di scimmie del codice.