In informatica, cos’è un linguaggio naturale?

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.