Über Operator 0.1.7
Sie mögen Javascript, funktionale Programmierung und Android? Probiere Operator aus!
Ein einfaches Javascript-Transpiler-Programm zum Codieren in einer funktionalen Sprache, die wie eine andere berühmte funktionale Programmiersprache aussieht (beginnend mit einem H.)
Jede Übersetzung kann über ein einziges Javascript-Skript in Ihre Webseite integriert werden, sofern Sie auch jqMath (http://mathscribe.com/author/jqmath.html) - mit jQuery - und numerischem Javascript (http: // www .numericjs.com).
Wie H., Operator
* ist funktionsfähig
* ist wenig ausführlich
* versteht die Infixnotation der Binäroperation
Im Gegensatz zu H., Operator
* ist im Wesentlichen nicht faul, aber es können unendliche Strukturen (Listen, Bäume ...) implementiert werden
* ist untypisiert
* versteht keine Abschnitte mit binären Operatoren (Sie müssen (\ x-> x + 1), wenn Sie wollen (+1)), aber versteht Abschnitte anders
* hat keine Unterscheidung zwischen Groß- und Kleinschreibung
* nimmt für binäre Operationen keine Priorität an
* betrachtet '(einfaches Zitat) nicht als gültiges syntaktisches Symbol
* befindet sich in einem sehr frühen Stadium
In Bezug auf die Reinheit arbeitet Operator die meiste Zeit mit unveränderlichen Variablen und Strukturen, aber gelegentlich (nach dem Schlüsselwort interact) können einige Zustände geändert werden (Inhalt eines HTML-Dokuments, siehe Demos).
PRIMITIVE BUILT INS:
Nur +, -, *, /,%, ==, <,>, Teilzeichenfolge, Länge werden wörtlich von Javascript mit der gleichen Bedeutung wie in Javascript gehalten (+ ist beispielsweise polymorph). Sie werden jetzt als Funktionen von 2 Argumenten betrachtet (außer unäre Länge und ternäre Teilzeichenfolge).
Die get-Methode ist die! Funktion
ZB: var val = obj ['schwarz'] + xs [0]; wird zu val = (obj! "black") + (xs! 0)
Ein Javascript-Array wird als Liste im Operator bezeichnet
ZB: var xs = [1,2]; wird zu xs = List () 1 2 ()
Ein Javascript-Objekt wird als Map in Operator bezeichnet
ZB: var obj = {'rot': 0, 'schwarz': 1}; wird obj = Map () "rot" 0 "schwarz" 1 ()
Diese sollen unveränderlich sein und als Funktionen gilt Folgendes:
betteln = Liste () 1 2 3
next = bitte 4 5
xs = nächste 6 ()
, das letzte () gibt das Ende der Struktur an (das erste erstellt eine neue Instanz). Es wäre dann rücksichtslos, ys = next 7 () für die (unvorhersehbare) Reihenfolge zu definieren, in der xs und ys verarbeitet werden, um das Ergebnis von xs! 5 zu beeinflussen (was entsprechend 6 oder 7 ergeben könnte). Definieren Sie stattdessen eine neue unveränderliche Liste: ys = List () 1 2 3 4 5 7 ()
Verschiedene nützliche Funktionen zur Dokumentmanipulation sind ebenfalls verfügbar:
: =, :: =, newline, value, math, input, button, interact (siehe Demos)
Einige nützliche allgemeine Funktionen sind auch verfügbar:
hex2char, dec2hex, hex2dec
Auf die anderen Javascript-Komponenten kann über das Javascript-Schlüsselwort zugegriffen werden (siehe unten).
Und das ist alles für die primitiven Einbauten!
AUSLÄNDISCHE EINBAUTEN:
Ausländisches JAVASCRIPT:
Der Operator kennt nur einen sehr kleinen Satz primitiver Schlüsselwörter und Operatoren, aber auf alle Javascript-Funktionen kann mit dem Javascript-Schlüsselwort zugegriffen werden. Z.B:
sqrt x = Javascript (("Math.sqrt (" + x) + ")")
oder besser,
sqrt = Javascript "var fun = function (x) {return Math.sqrt (x);}; fun"
oder einfach
sqrt = Javascript "Math.sqrt"
Ausländisches JQMATH:
Wenn das Ergebnis einer Berechnung das jqMath-Format (http://mathscribe.com/author/jqmath.html) erfüllt, wird es als mathematische Formel angezeigt. Zum Beispiel
main = "$ 355/113 $"
Auf dem Bildschirm und auf Ihrer Webseite wird ein netter Bruchteil angezeigt, wenn Sie das Skript (gesendet über das Menü "Javascript senden") und das jqMath-Skript installieren.
Ausländisches NUMERISCHES JAVASCRIPT:
Alle numerischen Funktionen (http://www.numericjs.com) können verwendet werden. Zum Beispiel
m = List () row1 row2 ()
row1 = List () 2 5 ()
row2 = List () 6 3 ()
Determinante = Javascript "numeric.det"
main = Determinante m
wird -24 zurückgeben. Beachten Sie, dass es keine Abkürzung (wie oben in sqrt) für die Definitionen der numerischen Funktionen von 2 oder mehr Variablen gibt. Zum Beispiel mit den ersten vier Zeilen über und
main = Determinante (Produkt m m)
du solltest definieren
product = javascript "var fun = function (x) {return function (y) {return numeric.dot (x, y);};}; fun"
um 576 zu bekommen.
What's new in the latest 0.1.7
Operator 0.1.7 APK -Informationen
Alte Versionen von Operator 0.1.7
Superschnelles und sicheres Herunterladen über die APKPure-App
Ein Klick zur Installation von XAPK/APK-Dateien auf Android!







