Commencez avec Windows, pas si effrayant Nim ① C'est comme bonjour le monde.

introduction

De nos jours, je dois lire beaucoup de code écrit en Python et C et je veux m'habituer à une grammaire de type Python. Comme c'est un gros problème, j'ai décidé de me lancer dans le langage Nim, qui a une syntaxe de type Python similaire à C.

Pour ceux qui disent ce qu'est Nim, je recommande ce qui suit, qui est écrit par une personne python. http://h-miyako.hatenablog.com/entry/2015/01/13/201846

Essayez Nim sous Windows.

Comme avec Nim, qui a une syntaxe très concise parmi les langages de compilation et les langages mineurs, vous pouvez voir des articles sur le Web où les geeks essaient en silence. La publication de "Nim in Action" approche (bien qu'elle soit en anglais), et même si la version 1.0 approche, je me demande s'il y a une atmosphère de refus autre que l'apt, j'ai donc écrit un dossier d'introduction solide basé sur windows. Dès que j'ai décidé de l'essayer. Je suis arrivé à bonjour le monde en un peu plus de 10 minutes.

Soyez prudent avec l'installateur.

Si vous allez sur la page de téléchargement de Nim, vous trouverez une introduction aux binaires pour Windows en haut. http://nim-lang.org/download.html

Oups, lorsque je le télécharge et l'exécute, l'écran de configuration habituel s'affiche. nimuinst.PNG

Cependant, il y a quelques bizarreries dans ce programme d'installation, et je finis par perdre du temps. La solution de contournement est décrite ci-dessous.

(1) Vérifiez toutes les options d'installation pour le moment.

Nim est un langage compilé en langage C (etc.). À moins que vous n'ayez déjà installé un compilateur capable d'interpréter correctement le code C que Nim crache, vous devez installer le compilateur C en même temps afin d'exécuter le code Nim. Si vous souhaitez essayer Nim pour le moment, vérifiez toutes les options d'installation.

nimcheck.PNG ... Aporia est un éditeur pour nim. C'est une bonne idée de l'ajouter lorsque vous commencez.

(2) Spécifiez vous-même la destination de l'installation.

Hé, là où je voulais creuser. Au moins dans la version japonaise de Windows, il semble qu'il ne sera pas installé correctement avec le chemin spécifié d'origine. Installons sans ajouter "" à la fin de la destination d'installation (dans l'environnement japonais).

Exemple de réglage. nim222.PNG

Compilez et exécutez. Plutôt bien.

Maintenant, exécutons-le. Écrivez et compilez du code avec une extension .nim. En guise de mise en garde, il est nécessaire de spécifier la langue de la destination de compilation. Autrement dit, lors de la compilation de XXX.nim via le langage C, écrivez "nim c XXX.nim".

Comme ça. hellonim.PNG

Le code ressemble à ceci.


import strutils

type Person = object
  name: string
  age: int

proc greet(p: Person) =
  echo "Hi, I'm ", p.name, "," , p.age, " years old."
  echo "mon nom est$1、$J'ai 2 ans." % [p.name, (p.age).intToStr]
  
let p = Person(name:"Taro", age:18)
p.greet() # or greet(p)

Une description telle qu'un langage typé minimum est convertie en un binaire .exe avec une vitesse d'exécution comparable à C. Ce serait bien si c'était toString au lieu de intToStr, mais à part les impressions des petits citoyens, la syntaxe concise de type python est toujours assez bonne.

Suite (sérialisation irrégulière).

La figure suivante du chapitre 1 de "Nim en action" est facile à comprendre pour expliquer pourquoi C devrait également être inclus. nim-py.PNG

Il semble que le support de l'éditeur de Nim progresse régulièrement, et il semble que le code du studio visuel soit le meilleur. Je suis sûr que je serai moins effrayé par la version 1.0, le langage nim qui intéressera les passionnés, comme le support de macros à grande échelle, alors je vais continuer à l'essayer.

Après cela, j'aimerais que certains de mes grands frères fous de Python essaient de construire un écosystème comme python -c-nim.

Recommended Posts

Commencez avec Windows, pas si effrayant Nim ① C'est comme bonjour le monde.
bonjour le monde avec ctypes
Bonjour le monde avec Docker
Bonjour le monde sur flacon
Dessinez bonjour le monde avec mod_wsgi
Bonjour le monde avec Flask + Hamlish
Jusqu'à bonjour le monde avec zappa
Python commençant par Hello world!
Bonjour tout le monde! Avec la communication CAN virtuelle
[Note] Sortie Hello world avec python
Hello World! Par QPython avec Braincrash