#マイナー言語のお試し基準 : ATOMエディタサポート
ATOMエディターでテキストハイライトされているくらいのプログラム言語は,たとえマイナーなものでも割合とお気軽感ある、と個人的に思っている。
C言語にコンパイルされ、C言語に近しい実行効率を発揮できるNim(現在のバージョンは0.15.2)は、まさしく気軽にお試しできるようになりつつあるところ。ということで、windows環境上のATOMエディターでのNimの始め方を備忘録しておく。他のマイナー言語お試しの際にも参考になる...かも。
-
ATOMエディタそのものの使い方については、ATOM Editor をそろそろ始めようかなどを参考に。
-
拡張機能インストール画面からnim拡張機能を入れるとハイライトされるようになる。他の言語と同様なので委細は略。
-
Nimのwindows環境へのインストールについては[Windowsではじめる、あんま怖くないNim① それっぽいhello world。]
(http://qiita.com/kmry2045/items/3e98a9cc75afbb46cbf3)を参考に。 -
ちなみにNimをリンクの方法で入れるとmingwも一緒に入ってくる。Nim使うからには、mingwの活かし方も学んでおくべきだろうね。
#ATOM側にコンソール環境を用意
ATOMでプログラミングする場合、ATOMエディタ内でコンソールを扱えるようにしておくべき。ここのところにwindows環境にははまりどころがあるらしく、webで調べるとはじめに出て来る拡張機能terminal-plusが動かなかった。
以下のブログを参考に、platformio-ide-terminalの方を入れると問題なく動作した。
http://labs.spiffield.net/archives/508
platformio-ide-terminal拡張機能の起動画面
ATOMエディタ内で下の方に追加された「+」ボタンをクリックすると platformio-ide-terminalが立ち上がる。windows環境では,powershellが立ち上がる模様。普通のコンソール画面なので、PATHが通っているものはそのまま扱える。データベースのコンソールでも操作などもATOMエディタ内で完結できるのは便利。
##文字コードにご注意。
windows環境でプログラミング言語を扱う際には、出力される文字コードへの配慮が必要となる。レジストリを書き換えたりは大げさなので、一般的なコンソール環境と同様に、以下のコマンドで都度切り替えるくらいが良いかと。
- 出力をutf-8とする場合
- chcp 65001
- 出力をShiftJisとする場合
- chcp 932
AtomでNimしてみる。
普通にエディタをnimファイルをいじっで、コンソール上でnim c するだけ。PATHがとおっているばあい、nimとしての文法違反もエディット時に指摘してくれる。
こんなコードを書いて、コンパイル後に、
import unicode, strutils
let max =5
for i in countup(1, max):
echo $max,"回中、",$i,"回目の質問です。"
echo "10までの数字の中で、あなたのお好きな数字は?"
var num: int= readLine(stdin).parseInt
case num
of 0:
echo "ゼロですね。"
of 1:
echo "いちですか。"
of 2..10:
echo "こちらですね→ ",$int(num)
else:
echo "もっと大きいのがいいのですかねぇ"
やっていることは普通のC言語と概ね同じなんだけど、文法も実行方法もお手軽感がある。
#Nimの文法を概観したくなった方。
日本語で概観したい場合、以下のメモ書きを参考とさせていただくのが良いのかな。と
https://gist.github.com/miyakogi/b1df00c8bc99927d9d0d