Dovremmo incorporare macchine virtuali piuttosto che lingue

-2

Ok, quindi sto cercando di imparare la programmazione front-end. Cercando di capire come javascript sia un dolore, e vari progetti (GWT, Coffeescript, l'obiettivo di Capuccino / j ...) stanno cercando di sistemarlo con le lingue che compilano JS.

Che cosa faresti se reinventerai il browser?

Penso che vorrei incorporare una VM piuttosto che una lingua (proprio come le applet Java meno complesse e con un'API DOM invece di una tela e un ambiente autosufficiente).

Suppongo che questo sia stato suggerito molte volte, ma non riesco a trovare risorse su questo argomento, e la maggior parte del tutorial di incorporamento incespico sui linguaggi di incorporamento degli indirizzi (guile, lua, python, qualunque cosa).

Pensieri?

    
posta Rom1 12.09.2011 - 10:35
fonte

1 risposta

1

Un linguaggio incorporato IS una macchina virtuale incorporata e viceversa. Ognuno ha un'interfaccia definita per il browser, ognuno ha un'interfaccia utente definita (sintassi o set di istruzioni o chiamala come vuoi).

Se dovessi reinventare il browser e fornire una lingua per le estensioni, fornirei un LISP. Molto probabilmente, guarderei un LISP basato su GNU Emacs LISP (probabilmente GUILE?), Perché quel particolare LISP aveva determinate decisioni di progettazione dell'ambito e del binding risolte in modi che consentivano l'interoperabilità delle estensioni.

Perché LISP? Secondo la mia opinione personale, LISP fa alcune cose con facilità che le altre lingue fanno male o non lo fanno affatto. È perfettamente fattibile compilare linguaggi procedurali (più limitati) a LISP, ma, se colpisci alcuni dei casi d'angolo, può essere molto difficile compilare LISP per, ad esempio, C.

    
risposta data 12.09.2011 - 14:23
fonte

Leggi altre domande sui tag