Beste Programmiersprache um DLLs zu erstellen

  • Es wird sehr oft vieles in einen Topf und dann durcheinander gehauen.

    Gehen wir vielleicht einfach mal die Begriffe einzeln durch:

    • Skriptsprache: Programmiersprache welche sich dafür eignet schnell kleinere Programme zu erstellen. Diese Sprachen legen viel wert auf Einfachheit. Beispielsweise einen Variant-Datentyp welcher vermeidet das man explizit den Typ vorgeben muss oder der Verzicht auf einen Deklarationszwang usw.
    • Hochsprache (engl.: High Level Language): Eine Programmiersprache welche sich in ihrer Syntax an die menschliche Sprache anlehnt (Vergleich: Maschinensprache)


    Wie wir nun wissen sind die meisten Skriptsprachen Hochsprachen. Zumindestens ist mir keine Skriptsprache auf Maschinenebene bekannt.
    Prinzipiell ist weiterhin die Sprache erst einmal komplett unabhängig von der Art der Codeübersetzung.
    Ob der Code per Interpreter, ByteCode-Interpreter, JIT-Compiler oder Compiler übersetzt wird hat nix damit zu tun ob es eine Skriptsprache ist oder nicht.
    Für Sprachen wie z.B. Pythen stehen ByteCode-Interpreter, JIT-Compiler und indirekt auch Compiler zur Verfügung - die Art der Sprache ist ergo unabhängig von der Übersetzung.
    Du kannst auch für C++ einen Interpreter schreiben - deswegen ist es auch weiterhin keine Skriptsprache.
    Nun ist es natürlich so dass die meisten Skriptsprachen interpretiert werden - das ist aber kein Zwang.

  • Danke.
    Nochmal zu dem Thema: AutoIt ist eine Sprache der 4GL - 4th Generation Language, und rückt damit auf dem Hochsprachen Podest nochmal nach oben ;)
    C, C++ und diverse andere sind 3GL - 3rd Generation Languages, und sind der Rangfolge demnach niedriger als AutoIt

    Es gibt sehr viele Leute, die glauben. Aber aus Aberglauben.
    - Blaise Pascal

  • Gut gut, ich hatte wohl eine falsche Definition von Hochsprache im Kopf:

    Zitat von SB


    [Heute, 12:27] An Xorianator: Ich hatte eine Hochsprache bis jetzt so definiert: Lesbarkeit (also Sprachenähnlicher Syntax), "richtiger" Compiler und Plattformunabhängigkeit. Da lag ich wohl doch ein bisschen daneben...

    Ich hoffe, ihr versteht meine Irrleitung. ;)
    In dem Sinne: SOrry für die Verwirrung. :(

    lg chess

  • so habe jetzt versucht eine dll in freebasic zu erstellen aber irgendwie bekomme ich keinen rückgabewert. was mache ich falsch?

    Code
    function Addieren alias "Addieren"(byval Zahl1 as integer,byval Zahl2 as integer) as integer export
            return Zahl1 + Zahl2
    end function
    [autoit]

    $dll = DllOpen("example.dll")

    [/autoit][autoit][/autoit][autoit]

    $return = DllCall($dll,"int","Addieren","int",10,"int",10)
    MsgBox(0,"",$return)

    [/autoit][autoit][/autoit][autoit]

    DllClose($dll)

    [/autoit]
  • Code
    Extern "Windows-MS"
    
    
    Function _Add(iX As Integer, iY As Integer)As Integer Export
    	Return iX + iY	
    End Function
    
    
    End Extern
    [autoit]

    $hDll = DllOpen("Add.dll")
    $aResult = DllCall($hDll, "int", "_Add", "int", 1234, "int", 1234)
    ConsoleWrite("Ergebnis = " & $aResult[0] & @CRLF)

    [/autoit]

    Ohne Extern "Windows-MS" müsste man den DllCall so machen: _ADD@8
    Oder in deinem Fall ADDIEREN@8

    E