LUA Effizienz



  • Eine gute Software braucht eine nach außen geführtes Scriptsprachmittel um interne Prozesse dynamisch gestalten zu können.

    LUA Liefert einen kompilierbaren opensource lexicalparser und laufzeitinterpreter. Durch die komplette 'C' implementierung ist LUA der schnellste Klartextinterpreter der Welt.

    Wie LUA in der Industriellen Bildverarbeitung verwendet werden kann
    wird in diesem Video dargestellt.

    **http://youtu.be/La58KHhYmvA
    **
    Zum erforschen der Möglichkeiten kann die kostenlose Software
    PatSwitch herangezogen werden, um z.B. mit der eigenen WebCam
    Bildauswertung zu realisieren



  • Und? Soll das jetzt Werbung für LUA werden oder hast du auch eine Frage?



  • Ja ich möchte auf die vorteilhaften Merkmale von Lua Hinweisen.
    Schließlich können gerade C/C++ Entwickler diese vollkommen ausreizen.

    Gruß
    Karsten



  • Lua hat noch bedeutend mehr Vorteile als nur die reine Performance. Man kann viele Dinge extrem schnell und einfach umsetzen. Dazu kommt noch, dass Lua nicht viel Speicherplatz benötigt und sehr klein ist.

    Nachteil seh ich aber bei der Literatur oder anderen Ressourcen, die relativ knapp ausfallen.

    Ansonsten ist Lua schon ewig im Bereich von Spielen zu finden und nichts neues.



  • Ich mag Lua (LUA ist falsch geschrieben!) als Konfigurationssprache sehr gerne. Es ist auch sehr einfach von der Syntax für den einfachen Büroangestellten zu lernen, der mal ein Makro schreiben will.

    Aber für technische Scripts, um wirklich eine C++-Software zu erweitern und flexibilisieren, halte ich Lua für weniger geeignet. Hier finde ich eher AngelScript geeigneter, da es auch mit C++-Objekten (und umgekehrt) umgehen kann. Bei Lua ist das leider nicht in der Scriptsprache vorgesehen, so das es nur umständlich realisiert werden kann.



  • Achromat schrieb:

    LUA

    Richtig schreiben bitte...

    Liefert einen kompilierbaren

    Wäre ja eine Schande, wenn der Interpreter nicht kompilierbar wäre.

    opensource

    Richtig schreiben bitte...

    lexicalparser

    Enthält das nicht jeder Interpreter?

    und laufzeitinterpreter.

    Jo, Laufzeitinterpreter. Das killt Performance.

    Durch die komplette 'C' implementierung ist LUA der schnellste Klartextinterpreter der Welt.

    C ist noch lange keine Garantie für Geschwindigkeit.

    Was Scriptsprachen angeht ist JavaScript z.B. um Grössenordnungen schneller als Lua.



  • Ich finde Lua haesslich. Sorry.



  • debuzzer schrieb:

    Was Scriptsprachen angeht ist JavaScript z.B. um Grössenordnungen schneller als Lua.

    wäre mir neu das javascript schneller ist als lua ... 😃 (wie kommst du drauf ? Quelle? beispiele?)
    letzztendlich kommt jeweils auf den code an und die dementsprechnde umsetztung...
    vll sogar noch die systemumgebung selbst...

    rein theoretisch gesehen ist lua schneller... 😃
    aber kommt immer auf den code und andere sachen an 😃 ... so allgemein gültig ist das meiner meinung nach schwierig zu sagen...

    oder woran machst du fest das javascript um "größenordungen"(welche größenordnung denn eigendlich? 🙄 ) schneller ist...?
    ich lasse mich auch gerne eines besseren belehren ... 😃



  • Aussagen das eine Programmiersprache schneller ist als eine andere sind Quatsch.

    Und rein theoretisch gesehen haben Programmiersprachen gar keine Geschwindigkeit.

    Man könnte höchsten sagen Javascript-Implementierung X ist Y-mal schneller als Lua-Implementierung Z. Wobei man sich immer noch streiten könnte ob evtl. die Testprogramme unfair sind, denn die sind nunmal nicht gleich, da sie in verschiedenen Sprachen geschrieben sind.



  • gary1195 schrieb:

    Aussagen das eine Programmiersprache schneller ist als eine andere sind Quatsch.

    Ist aber manchmal so. 😃

    gary1195 schrieb:

    Und rein theoretisch gesehen haben Programmiersprachen gar keine Geschwindigkeit.

    Man könnte höchsten sagen Javascript-Implementierung X ist Y-mal schneller als Lua-Implementierung Z. Wobei man sich immer noch streiten könnte ob evtl. die Testprogramme unfair sind, denn die sind nunmal nicht gleich, da sie in verschiedenen Sprachen geschrieben sind.

    Vom Wegdefinieren lösen sich Probleme auch nicht.



  • @volkard
    Wenn man entsprechende Implementierungen und Benchmarks nutzt, dann ist C auch langsamer als Javascript.

    Die Definition der Sprache macht keine Aussagen über Geschwindigkeit.
    Das man von verschieden Spracheigenschaften aus Versuchen kann die maximal mögliche Geschwindigkeit zu schätzen ist klar. Jedoch zählt in der Praxis die reale Geschwindigkeit der benutzten Implementierungen (andere Faktoren ausgelassen).

    Wenn dann sollte man sagen bei diesem Benchmark ist diese Javascript-Implementierung soviel schneller als diese Lua-Implementierung.

    Allgemeine Aussagen wie "Javascript ist um Größenordnungen schneller als Lua" sind auch nicht Hilfreich, denn wenn ich dann auf Javascript setze und die falsche Implementierung wähle, dann stehe ich ziemlich blöd da.



  • Klar kann man Lua-Code auch übersetzen, indem man einem Informatiker dafür 10000€ gibt, daß er rausfindet, was das Programm machen soll und passenden Maschinencode erzeugt, also kann Lua nicht per se lahm sein. Theoretisch.

    Deinem Text entnehme ich durchaus, daß Du weißt, welche Sprachen in der Praxis lahm sind.



  • Schade, dass es keine schöne, statisch typisierte Skriptsprache zum Einbetten in C++ gibt. So etwas steht auf meiner To-Do-Liste, aber woher die Zeit nehmen?


Anmelden zum Antworten