Quando le persone parlano di linguaggio naturale nell’informatica, si riferiscono a un linguaggio di programmazione che contiene costrutti e sintassi che rispecchiano il normale linguaggio umano. Lo scopo principale di qualsiasi linguaggio naturale è consentire a un programmatore di utilizzare regole e termini linguistici con cui ha già familiarità per comunicare istruzioni utilizzabili a un computer. A causa del requisito dell’esplicitazione dell’utente finale e dell’utilizzo di un linguaggio già noto e parlato, i linguaggi naturali come la programmazione in logica (Prolog) o il Lisp tendono ad essere intrinsecamente più complessi di altri linguaggi di programmazione, a seconda delle astrazioni di ordine superiore o simboliche di ciò che il computer può comprendere e su cui agire. In altre parole, più è facile per l’utente finale creare un programma per computer senza dover conoscere un linguaggio procedurale strutturato, o un linguaggio diverso da quello che già parla, più complesso deve essere il motore del programma in linguaggio naturale. per sostenere la libertà di espressione.
I linguaggi naturali contengono parser e database. I database determinano quale azione deve eseguire il computer in base all’istruzione e il parser determina in quale ordine deve essere eseguita la sintassi. Ad esempio, se l’utente digita “Aggiungi due più due”, il parser deve fare una distinzione tra sostantivo e verbo, capire cosa dovrebbe compiere l’azione del verbo, cercare nel database una risposta appropriata e quindi produrre un output che soddisfi il istruzione. Se l’utente digita “Aggiungi due a due”, il parser deve essere in grado di comprendere che “e” e “a” indicano che dovrebbe verificarsi la stessa azione e quindi produrre lo stesso risultato.
I fautori della programmazione in linguaggio naturale sostengono che, poiché i linguaggi naturali tendono ad essere di natura non procedurale, i programmatori alle prime armi possono produrre programmi significativi e ottenere risultati significativi in tempi più brevi di quanto non facciano quando sono necessari per creare algoritmi procedurali che portano agli stessi risultati. Con la programmazione in linguaggio naturale, gli studenti imparano a esprimere una notazione logica dei fatti. I programmi Prolog sono costituiti da un database, dalle relazioni tra gli elementi del database e da tutte le condizioni al contorno che determinano quali risposte sono accettabili.
Le ricerche e le pubblicazioni di Noam Chomsky riguardanti la teoria e l’uso linguistico includono esplorazioni diagrammatiche della struttura sintattica di una lingua. I parser Prolog e Lisp si comportano più o meno allo stesso modo, ordinando logicamente l’istruzione nei suoi componenti e valutando l’azione da intraprendere come risultato dell’analisi. La maggior parte delle lingue naturali è scritta per l’input e l’output in inglese, sebbene siano in corso molti sforzi per supportare la localizzazione per altre lingue.