Le langage de programmation Misty est un langage d'acteur dynamique, polyvalent et transitoire. Il possède une syntaxe douce destinée aux étudiants, ainsi que des fonctionnalités avancées telles que la sécurité des capacités et les lambdas à portée lexicale.
La grammaire du langage est exprimée sous la forme McKeeman.
Espace
Le langage est assez strict dans son utilisation des espaces et de l'indentation. Dans la plupart des langages de programmation, l'espacement et le formatage du code sont sous-spécifiés, ce qui conduit à de nombreuses conventions de style incompatibles, certaines favorisant la formation de bogues, et toutes favorisant des arguments qui font perdre du temps, des incompatibilités, et des sentiments blessés. Misty n'autorise qu'une seule convention qui est strictement appliquée. Les programmeurs peuvent ainsi concentrer leur attention sur des questions plus importantes.
L'indentation se fait par incréments de 4 espaces. La forme McKeeman est étendue par trois règles spéciales pour rendre cela possible :
Code : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 11 | indentation The spaces required by the current nesting. increase_indentation Append four spaces to the indentation. decrease_indentation Remove four spaces from the indentation. |
Code : | Sélectionner tout |
1 2 3 4 5 6 7 | indent increase_indentation linebreak outdent decrease_indentation linebreak |
Code : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 11 | linebreak optional_comment linefeed more_linebreaks more_linebreaks linebreak indentation linefeed '000A' |
Misty est strict sur les espaces blancs afin d'éliminer le besoin, le débat et le contournement des normes de codage. Misty commence avec la jolie convention de formatage JSON. Par exemple, JSON permet ce texte JSON compact.
Code : | Sélectionner tout |
{"one":1,"array":[1,2,3],"text":"hello"}
Code : | Sélectionner tout |
1 2 3 4 5 | { "one": 1, "array": [ 1, 2, 3 ], "text": "hello" } |
Code : | Sélectionner tout |
1 2 3 4 5 6 7 | my_button.on( "click" ƒ (event) { call event.done() call take_action() } ) |
Code : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | def atan: ƒ (slope) ( math.sine( slope / (math.sqrt( slope * slope ) + 1) ) ) set progress: ( result + (radicand / result) ) / 2 |
Un commentaire commence par un #octothrope et se termine par la fin de la ligne. Les commentaires sont utilisés pour fournir un contexte et une motivation afin d'aider les humains à comprendre la programmation. Le système Misty ignore strictement tous les commentaires.
Code : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | optional_comment "" spaces '#' comment_characters spaces "" space spaces space ' ' comment_characters "" comment_character comment_characters comment_character '0020' . '10FFFF' |
Les noms sont utilisés pour identifier les fonctions, les paramètres, les champs, les variables, les modules et les acteurs. Un nom commence par une lettre. Un nom peut contenir n'importe quel nombre de lettres et de chiffres. Un nom peut contenir _underbar et $dollar comme séparateurs. Les noms peuvent se terminer par un point d'interrogation, utilisé pour indiquer les fonctions prédicatives et les valeurs de vérité.
Code : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | name letter subsequent subsequent "" '?' letter_or_digit subsequent '_' letter_or_digit subsequent '$' letter_or_digit subsequent letter 'A' . 'Z' 'a' . 'z' digit '0' . '9' letter_or_digit letter digit |
Source : Misty
Et vous ?
Qu'en pensez-vous ?
Voir aussi :
Popularité des langages sur GitHub : Python, Go et JavaScript en progression, tandis que Java et C++ sont en légère baisse mais restent dans le Top 5, d'après GitHut 2.0
Gooey transforme presque n'importe quel programme console Python en une application GUI complète, et vous permet de vous concentrer sur la construction de programmes robustes et configurables
Les langages de programmation les mieux payés en 2023 : une analyse de 10 millions d'offres d'emploi effectuée par DevJobsScanner