[Linuxtrent] Re: Applicazioni in Pascal

  • From: Luca Manini <manini.luca@xxxxxxxxxx>
  • To: linuxtrent@xxxxxxxxxxxxx
  • Date: Mon, 31 Oct 2005 12:49:14 +0100

>>>>> "Emanuele" == Emanuele Olivetti <olivetti@xxxxxx> writes:

    Emanuele> Io inizierei e finirei le superiori con il python. 

    Siamo nati troppo presto! Ma è un errore che fanno molti.

    Emanuele> Ovviamente ti perdi cose tipo la compilazione... 

    La compilazione come passo pratico previo dell'esecuzione è solo
    una palla quindi "meglio perderla che trovarla" (TM).

    Quindi di perdita si tratta solo se si ti interessa imparare a
    scrivere compilatori (per linguaggi esistenti, quindi mai) o se ti
    interessa capire cosa significa "computare" (nel senso di eseguire
    il processo dinamico rappresentato -- di solito staticamente --
    dal programma ovvero, negli stupidi linguaggi in cui il
    programmatore con scrive direttamente l'AST, dal sorgente
    testuale).

    Ma il significato di "computare" lo si può vedere più facilmente
    non USANDO un linguaggio compilato dato (OK, l'opzione -dletters
    del gcc può essere divertente), ma INVENTANDO (o scegliendo) un
    piccolo linguaggio e scrivendone un interprete e/o un compilatore.

    Cosa che si può fare in C [1] (volendo farsi del male per l'ultima
    volta [2]) o, secondo me molto meglio (al meglio per quanto ho
    visto in vita mia) in Lisp [3] (scusate se mi ripeto, ma, come
    ripeto sempre, è l'età).

    Probabilmente lo si può vedere anche in Python [4], ma qui sono
    proprio gnu-rant.

[1] Kernighan and Pike - The Unix Programming Environment
    http://cm.bell-labs.com/cm/cs/upe/

[2] nel senso che se sopravvivi all'esempio della calcolatrice poi non
    sbaglierai mai più la dichiarazione di una lista di puntatori a
    puntatori a funzioni che accettano una struttura e che
    restituiscono una union .....

[2] Abelson and Sussman - Structure and Interpretation of Computer Programs
    http://mitpress.mit.edu/sicp/

[3] http://codespeak.net/pypy/dist/pypy/doc/architecture.html

-- 
    bye, Luca
-- 
Per iscriversi  (o disiscriversi), basta spedire un  messaggio con OGGETTO
"subscribe" (o "unsubscribe") a mailto:linuxtrent-request@xxxxxxxxxxxxx


Other related posts: