Costruire uno strumento per correggere gli errori del compilatore automaticamente [chiuso]

0

Quando un programma non viene compilato, i messaggi di errore sono talvolta esoterici. Spesso una semplice ricerca su Google che conduce a un sito come lo scambio di stack risolve il problema. Ora, perché non possiamo automatizzare questo?

Che ne dici di un Siri per la codifica? Per Siri, intendo un assistente personale intelligente. Non parliamo di riconoscimento vocale qui.

Mi chiedo se ci sia qualcuno là fuori (startup / laboratori di ricerca) che costruisce un prodotto interessante come questo. Ridurrà drasticamente il tempo di debug.

    
posta Celestine Preetham 10.07.2013 - 17:07
fonte

2 risposte

3

I compilatori non possono interpretare il tuo intento, ecco perché.

Hai mai ricevuto qualche errore oscuro come

Cannot infer the type of x

solo per scoprire che mancava un punto e virgola o una virgola? Questo perché il compilatore non ha qualcosa di cui ha bisogno (un token critico), ma non sa perché. Se non riesce a capirlo, come si dovrebbe capire che hai davvero bisogno di quel cast?

Naturalmente, possiamo scrivere migliori compilatori. Ma è un lavoro in corso e sospetto che la qualità del design linguistico abbia molto a che fare con esso. La tipizzazione statica e le asserzioni in fase di compilazione sono probabilmente i modi più promettenti per consentire al compilatore di verificare la presenza di errori.

Vedi anche
link

    
risposta data 10.07.2013 - 17:37
fonte
1

È stato fatto, molto tempo fa. Il compilatore PL / C di Cornell per il linguaggio PL / I, ha risolto automaticamente i problemi riscontrati, con l'obiettivo di sempre che produce un programma compilabile e eseguibile, indipendentemente dalla sua somiglianza con l'input originale. Alcuni dei cambiamenti erano semplici e avevano un buon senso. Altri non lo erano. E 'stato uno scherzo comune al momento di rilasciare un mazzo di carte perforate selezionate in modo casuale in PL / C e vedere cosa è successo: -)

    
risposta data 10.07.2013 - 23:30
fonte

Leggi altre domande sui tag