Ich liebe einfach JavaScript. Es ist so elegant (stellen Sie sich das leise Geräusch eines verliebten Fanboys vor, der im Hintergrund seufzt).
Also habe ich kürzlich mit Lua über das löve2d Framework gespielt (nett!) - und ich finde Lua auch großartig. So wie ich es sehe, sind diese beiden Sprachen sehr ähnlich.
Es gibt offensichtliche Unterschiede wie
- Syntax
- Problemdomäne
- Bibliotheken
- Typen (ein bisschen)
aber welche sind die subtileren? Gibt es etwas, das ein JavaScript-Codierer für selbstverständlich hält und das in Lua nur geringfügig anders funktioniert? Gibt es Fallstricke, die für den erfahrenen Programmierer einer Sprache, die die andere versucht, möglicherweise nicht offensichtlich sind?
Beispiel: In Lua sind Arrays und Hashes nicht getrennt (es gibt nur Tabellen). In JavaScript handelt es sich um numerische Arrays und Hash-Objekte. Nun, dies ist einer der offensichtlicheren Unterschiede.
Aber gibt es Unterschiede in Bezug auf variablen Umfang, Unveränderlichkeit oder ähnliches?