Google ColaboratoryでNimが扱えるそうなので,慣れるために適当な関数を作って慣れてみようと思います.今回は,Notebook風に実行します.
Google Colaboratory(以下Google Colab)は、Google社が無料で提供している機械学習の教育や研究用の開発環境です。開発環境はJupyter Notebookに似たインターフェースを持ち、Pythonの主要なライブラリがプリインストールされています。
引用元:Google Colabの使い方
Google Colabのファイル構成
プロジェクトディレクトリはfirst_nimとしています.度々,省略しています.
first_nim
├── Nim4Colab_first_ipython.ipynb
└── (省略)
Google Driveと連携
Google ColabとGoogle Driveを連携させ,作業ディレクトリ(ここではfirst_nim)に移動します.
python
# Google ColabとGoogle Driveを連携
from google.colab import drive
drive.mount('/content/drive')
python
# ディレクトリの移動
%cd /content/drive/My\ Drive/Nimnim/first_nim
!ls
nim4colabのインストール
Google Colab で nimコマンドを使用するためのライブラリであるnim4colabをインストールします.
python
!pip install git+https://github.com/demotomohiro/nim4colab.git
%load_ext nim4colab
Notebook風にnimを実行
Google Colabでnimを使用するためのおまじないとして「%%nimc」を記述すると,nimのコードを実行できるようになります.
python
# Google Colabでnimを使用するためのおまじない
%%nimc
echo "Hello World!"
echo "Nim version is ", NimVersion
前回,記述したnimのコードを改めてNotebook風に実行します.
python
# Google Colabでnimを使用するためのおまじない
%%nimc
proc reverse(s: string): string =
result = "" # 暗黙的なresult変数
echo high(s)
for i in countdown(high(s), 0):
echo i
result.add s[i]
proc not_reverse(s: string): string =
result = "" # 暗黙的なresult変数
echo high(s)
for i in countup(0, high(s)):
echo i
result.add s[i]
var str1 = "Reverse This!"
echo "Reversed: ", reverse(str1)
echo "------------------------------"
echo "Not Reversed: ", not_reverse(str1)
まとめ
学習しやすいようにNotebook風に実行しました.
次はPythonと連携できるようなので,Pythonの連携と速度比較をしてみたいです.