Guido van Rossum è che scrive sulla storia di Python . Mi ha colpito il fatto che dietro Python e altri linguaggi di programmazione su cui van Rossum ha lavorato era l'intenzione di avere un linguaggio personalizzato per il problema in questione. Certo, lavorava per un istituto di ricerca con una vasta esperienza nella progettazione e nella compilazione di linguaggi di programmazione.
Dopo aver letto la maggior parte del blog, sono tornato al compito in questione, che aggiunge alcune nuove funzionalità a un programma che ho iniziato a scrivere più di dieci anni fa. Essendo stato lontano dal codice per un lungo periodo, ho dovuto studiarlo per sapere come affrontare al meglio il nuovo compito, ed ecco! La maggior parte di ciò che fa il nucleo del codice è di aggirare la rigidità di Delphi Pascal per creare un ambiente in cui estensibilità, ereditarietà degli attributi e annullamento illimitato sia facile da fare! Ho creato il mio linguaggio di programmazione simile a Python senza sapere che lo stavo facendo. Con il senno di poi (tutto è più chiaro con il senno di poi), sarebbe stato meglio incorporare Python nel nucleo, oppure andare avanti e implementare un linguaggio personalizzato.
Ma quello era allora. Oggi, le lingue tradizionali hanno un'enorme quantità di supporto da tutti i tipi di librerie e strumenti di alta qualità, qualcosa di molto difficile da avere con la tua lingua.
La storia raccontata, il mio suggerimento è di usare Python per questi motivi pragmatici:
- La lingua è piacevole e comoda da programmare. La curva di apprendimento è delicata e non interferisce con i linguaggi aziendali / burocratici / di comitato (scusate Java e C ++).
- Se non riesci a trovare ciò che ti serve nelle librerie standard o di terze parti, probabilmente non lo vuoi.
- Python semplifica il ricorso a un altro linguaggio di programmazione quando decidi che è ciò di cui hai bisogno.
- Python è una base straordinaria per creare un linguaggio specifico del dominio (cioè la tua lingua) senza rinunciare a strumenti e librerie moderne (dai un'occhiata a ciò che Pyparsing ha dimostrato essere possibile in Python) .