Use APKPure App
Get Operator old version APK for Android
Vous aimez le Javascript, la programmation fonctionnelle et Android? Essayez opérateur!
Un simple programme de transpiler Javascript pour coder dans un langage fonctionnel ressemblant à un autre célèbre langage de programmation fonctionnel (commençant par un H.)
Chaque traduction peut être intégrée à votre page Web via un seul script javascript, à condition que vous ayez également installé jqMath (http://mathscribe.com/author/jqmath.html) - avec jQuery - et javascript numérique (http: // www .numericjs.com).
Comme H., opérateur
* est fonctionnel
* est peu verbeux
* comprend la notation infixe de l'opération binaire
Contrairement à H., opérateur
* n'est pas paresseux par essence mais des structures infinies (listes, arbres ...) peuvent être implémentées
* n'est pas typé
* ne comprend pas les sections avec des opérateurs binaires (vous devez (\ x-> x + 1) si vous voulez (+1)), mais comprend les sections autrement
* n'a pas de distinction majuscule / minuscule
* n'assume aucune priorité pour les opérations binaires
* ne considère pas '(citation simple) comme un symbole syntaxique valide
* est à un stade très précoce
En ce qui concerne la pureté, Operator travaille la plupart du temps avec des variables et des structures immuables mais occasionnellement (après le mot-clé interact), certains états peuvent être modifiés (contenu d’un document HTML, par exemple, voir Démos).
PRIMITIVE BUILT INS:
Seuls +, -, *, /,%, ==, <,>, chaîne, longueur sont conservés littéralement à partir de javascript avec le même sens que javascript (+ est polymorphe par exemple). Ils sont maintenant considérés comme des fonctions de 2 arguments (sauf la longueur unaire et la sous-chaîne ternaire).
La méthode get est devenue la! une fonction
Par exemple: var val = obj ['black'] + xs [0]; devient val = (obj! "black") + (xs! 0)
Un tableau javascript s'appelle une liste dans l'opérateur
Par exemple: var xs = [1,2]; devient xs = List () 1 2 ()
Un objet javascript s'appelle une carte dans l'opérateur
Exemple: var obj = {'red': 0, 'black': 1}; devient obj = Map () "rouge" 0 "noir" 1 ()
Celles-ci sont conçues pour être immuables et, en tant que fonctions, les suivantes sont valides:
beg = List () 1 2 3
suivant = mendier 4 5
xs = 6 suivant ()
, le dernier () donnant la fin de la structure (le premier crée une nouvelle instance). Il serait alors imprudent de définir ys = next 7 () car l'ordre (imprévisible) dans lequel xs et ys sont traités influencerait le résultat de xs! 5 (ce qui pourrait donner 6 ou 7 en conséquence). Définissez plutôt une nouvelle liste immuable: ys = List () 1 2 3 4 5 7 ()
Plusieurs fonctions utiles de manipulation de documents sont également disponibles:
: =, :: =, nouvelle ligne, valeur, maths, entrée, bouton, interaction (voir Démos)
Plusieurs fonctions générales utiles sont également disponibles:
hex2char, dec2hex, hex2dec
Les autres composants javascript sont accessibles à l'aide du mot clé javascript (voir ci-dessous).
Et c'est tout pour les primitifs intégrés!
ÉTRANGER BUILT-INS:
JAVASCRIPT étranger:
L'opérateur ne connaît qu'un très petit ensemble de mots-clés et d'opérateurs primitifs, mais toutes les fonctions javascript sont accessibles avec le mot-clé javascript. Par exemple:
sqrt x = javascript (("Math.sqrt (" + x) + ")")
ou mieux,
sqrt = javascript "var fun = function (x) {return Math.sqrt (x);}; fun"
ou simplement
sqrt = javascript "Math.sqrt"
JQMATH étranger:
Si le résultat d'un calcul satisfait le format jqMath (http://mathscribe.com/author/jqmath.html), il sera affiché sous forme de formule mathématique. Par exemple
main = "355 $ / 113 $"
affichera une belle fraction à l'écran, et sur votre page Web si vous installez le script (envoyé par le menu "Envoyer javascript") et le script jqMath.
JAVASCRIPT NUMÉRIQUE étranger:
Toutes les fonctions numériques (http://www.numericjs.com) peuvent être utilisées. Par exemple
m = List () row1 row2 ()
row1 = List () 2 5 ()
row2 = List () 6 3 ()
déterminant = javascript "numeric.det"
principal = déterminant m
retournera -24. Notez qu'il n'y a pas de raccourci (comme dans sqrt ci-dessus) pour les définitions des fonctions numériques de 2 variables ou plus. Par exemple, avec les quatre premières lignes ci-dessus et
principal = déterminant (produit m m)
vous devriez définir
product = javascript "var fun = function (x) {return function (y) {return numeric.dot (x, y);};}; fun"
afin d'obtenir 576.
Last updated on Oct 25, 2019
Nothing new, really
Telechargé par
Hamam Beeh
Nécessite Android
Android 4.0+
Catégories
Signaler
Operator 0.1.7
0.1.7 by Jö
Oct 25, 2019