マジセミドライブ

ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。

OSS情報

2020.01.01

【OSS情報アーカイブ】Nim

【OSS情報アーカイブ】Nim

※当記事に記載されている情報は、古くなっている場合があります。オフィシャルサイトで最新情報をご確認ください。

「Nim」とは

「Nim」基本情報

■概要

Nim(ニム)とは、システム/アプリケーション開発用プログラミング言語で、「C言語の処理速度とメモリ効率性」を発揮できるコンパイル言語です。

■基本説明

Nimは「静的型付き言語」「C言語の処理速度とメモリ効率性」「メモリ安全性」「高性能ガベージコレクション」「複数ターゲット言語対応」などの特徴を持ちます。シンプル構文により、効率的で表現力豊かなプログラミングを行えます。

多くのメインストリームプログラミング言語に引けを取らない強力な機能を提供します。

■動作環境

「Windows」「macOS」「Linux」などで動作します。

■経緯

・2008年 初版リリース

■ユースケース

Nimはさまざまなプログラミング用途で利用できます。
・カーネル
・Webサーバ
・コマンドラインアプリケーション
・ゲーム など

主な特徴

■クリーン構文

Nim構文はPythonのようにシンプルであるため、可読性が高く、効果的に修正できるコードを記述できます。

■メタプログラミング

Nimは強力なメタプログラミング機能を備えた小さなコア言語を実装しています。

Nimのメタプログラミング機能には、「ジェネリック」「テンプレート」「マクロサポート」などが含まれているため、さまざまなプログラミングパラダイムのサポートを拡張できます。

C言語にコンパイル

NimソースコードをC言語にコンパイルできます。

マシンのネイティブパフォーマンスを発揮でき、Cコンパイラが提供する多くの機能を利用できます。

JavaScriptにコンパイル

NimにはJavaScriptバックエンドが含まれているため、クライアントとサーバを同時にターゲット設定できます。

「C」「C++」「Objective C」へのラッピング

Nimは「C言語」「C++」「Objective C」ライブラリに簡単にバインドできるため、これらの言語の成熟した強力なライブラリを利用できます。

■メモリ安全性

Nimは「オプションチェック」「トレース参照/untraced参照/非nullable型のポインタ演算を実行しない」などの仕組みによりメモリの安全性を確保できます。

■極小バイナリサイズ

Nimは「依存関係なし」かつ「非常に小さいサイズ」のバイナリを生成します。

■コードエディタサポート

多くのコードエディタがNim言語をサポートしています。
・Atom
・Emacs
・Sublime Text
・Vim
・Visual Studio Code など

主な機能

■自動ガベージコレクション

Nimは、サイクル検出を伴う遅延参照カウントに基づく調整可能な自動ガベージコレクション機能を提供します。

■パッケージマネージャー「Nimble」

Nimのパッケージマネージャー「Nimble」は、パッケージをGitリポジトリとMercurialリポジトリを介して配布する分散パッケージ管理を行います。

→GitHub →nim-lang / nimble

■スタックトレース出力機能

例外によりNimアプリケーションがクラッシュすると、終了する前にスタックトレースを出力します。

このスタックトレースには、例外をデバッグするために必要な情報がすべて含まれています。

補足情報

■同様製品

同様な機能を提供する製品として、次のようなものがあります。

オープンソース製品:「Python」「Rust」「Go言語」など。

■オフィシャルサイト

オフィシャルサイト

→Nim(Nim programming language | Nim)

ライセンス情報

Nimのライセンスは「MITライセンス」です。

詳細について、こちらを参照ください。
→GitHub →nim-lang/Nim →copying.txt

ダウンロード

→Nim →Install Nim

 

参考元サイト

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

この記事のタグ一覧

おすすめの記事

【デジタル寺田の3分用語解説】「 経済産業省:コンテンツ制作のための 生成AI 利活用ガイドブック 」とは?📘

デジタル寺田の3分用語解説

2024.11.18

【デジタル寺田の3分用語解説】「 経済産業省:コンテンツ制作のための 生成AI 利活用ガイドブック 」とは?📘

経済産業省による「 生成AI 利活用ガイドブック 」は、企業やクリエイター向けに、安心して「生成AI」を利用するための、「指針」「実例」「注意点」を明示しています。「業務効率化」や「新しいアイデア創出」の支援を目的としています。

【デジタル寺田の3分用語解説】「 2029年問題 」とは?📅

デジタル寺田の3分用語解説

2024.11.18

【デジタル寺田の3分用語解説】「 2029年問題 」とは?📅

「 2029年問題 」とは、高校でのデジタル教育改革により、新入社員と既存社員間でデジタルスキル格差が拡大する懸念を指します。企業は早急に対応が求められています。この格差は、企業競争力や業務効率にも、影響を及ぼす可能性があります。

【デジタル寺田の3分用語解説】「 VMWare 問題 」とは?🖥️

デジタル寺田の3分用語解説

2024.11.18

【デジタル寺田の3分用語解説】「 VMWare 問題 」とは?🖥️

「 VMWare 」の仮想化技術は、「ITインフラの効率化」に大きく貢献する技術ですが、Broadcomによる買収後のライセンス変更が大きな問題として注目されています。柔軟で慎重な契約見直しが今後の鍵となります。