LoginSignup
139
66

More than 5 years have passed since last update.

全ての開発者が学ぶべき1つのNim

Last updated at Posted at 2018-11-07

https://qiita.com/poly_soft/items/e89bc757596cfdfba784
https://qiita.com//outlandkarasu@github/items/a2243eb3adbe906ec30d
のパロディ(パクリ)です。ご了承ください。

@ishidakei 誤字訂正ありがとうございました!

その1 - Nim

トップバッターはこの言語。
Nimは、2008年に公開されたコンパイル言語の一つです。

download.jpeg

この言語は様々な用途で使うことができます。
システム、web、デスクトップアプリケーション、ゲーム、人工知能...それだけにとどまりません。
これらすべて、すでにNimmerによって提案・開発がなされています。

サーバーやカーネルまで開発した人間もいます。

なんせこの言語、Cのライブラリを使えるということもあり、Cに募った莫大な財産を利用することができるのです。( 実際に僕もWinAPIを使ったことがあります。)
もちろん、Nimのためにできたライブラリも山ほどあり、それらはパッケージ管理ソフトnimbleでらくらくインストールできます。
もしあなたが「何かやりたい!」っていう分野があれば、ぜひNimでやってください。

その2 - Nim

続いてNim。

Nimなんて初めて聞いた方もいるかもしれません。
なんせNimはまだv1.0にもなっておらず、少々マイナーな言語です。

この言語はなんと言っても文法のかきやすさ・読みやすさに優れています。

fib.nim
proc fib(n: int): int =
  if n < 2 :
    return n
  else :
    return fib(n - 1) + fib(n - 2)

echo fib(15)
echo 15.fib
echo fib 15

とにかく簡潔で無駄がないのです。
int main(..)~ とか、...lic class ..~とか、よくわからないモノは書かなくていいのです。
いちいち括弧つけてコードを書く時代はもう終わり。

また文法が簡潔なだけでなく、手続き型、命令形、オブジェクト指向などで書くこともでき、メタプログラミングもサポートされ、文法の多様性にも優れています。

もしあなたがPythoninstaなら、Pythonを静的向けにした感じだと思っていただいたほうが把握しやすいかと。

その3 - Nim

次はこの言語。

Nimは2008年にアンドレアス・ランプフによって開発された言語です。

この言語はなんと言っても、処理が非常に高速です
言語のベンチマークをはかるサイトはたくさんありますが、中でもNimはいつも上位にいます
https://github.com/kostya/benchmarks

なんせ、NimのコンパイラはCのコードを吐きます。
Nimコード --(Nimコンパイラ)--> Cコード --(Cコンパイラ)--> 実行ファイル

Cのコードと言っても、Nimコンパイラの吐くものは「最適化されたCのコード」。普通に人間が書いたCのコードよりも速いことだってあるのです。

ちなみに、Nimはバイナリサイズも小さいです。
これはNimの公式ページにもあります。

その4 - Nim

ラストを飾るのはこの言語。
Nimという言語は聞いたことがない方も多いかもしれませんが、簡潔な文法ながら処理の速い、いわずとしれた万能言語です。

そんな万能言語を、あなたはもっと触ってみたいと思いませんか?

あなたがこの言語を触ることによって、Nimがまたさらに普及します。
そうすると、世界中の老若男女が、"今よりもっと"軽量なソフトウェアを"今よりもっと"簡単に制作・改造して世界中に公開でき、またそれを"今よりもっと"容易に利用できる、夢の社会を築く一員となることができます。

そんな社会の変革に、乗り遅れてはいけません。

興味の湧いた方は是非、Nimを初めて見てください。
インストール :
windows : http://nim-memo.hatenablog.com/entry/2016/10/24/173300
macOS : https://qiita.com/nemui-fujiu/items/8b541fb9b1f4654938f7
linux系はあまり情報がありませんが、とにかくターミナルで「nim」と打って見るとなんとかわかるかと。
gccのインストールも忘れずに。

チュートリアル翻訳 : https://qiita.com/KTakahiro1729/items/f4776f3a072c01f9086b

最後に

というわけで、Nimやろうぜ

そういえばなんでこんな投稿が伸びてるんだろ

139
66
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
139
66