マジセミドライブ

ウェビナー関連のニュースや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

 

参考元サイト

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

この記事のタグ一覧

おすすめの記事

【OSS情報】LLMトレーニング用ライブラリ「 GPT-NeoX 」📚

OSS情報

2024.07.18

【OSS情報】LLMトレーニング用ライブラリ「 GPT-NeoX 」📚

「 GPT-NeoX 」は、GPU上で大規模言語モデル(LLM)を効率的にトレーニングするためのライブラリです。NVIDIAのモデルを基に独自の最適化が加えられ、オートレグレッシブ言語モデルのトレーニング手法を集約しています。

経営活動に活用できる 原価管理 を実現するには? 〜製造業の現実的な課題に向き合い、現場視点から改善する原価管理手法の必達プロセスをご紹介〜

ウェビナーまとめ

2024.05.15

経営活動に活用できる 原価管理 を実現するには? 〜製造業の現実的な課題に向き合い、現場視点から改善する原価管理手法の必達プロセスをご紹介〜

2024年3月12日に三菱電機ITソリューションズ株式会社とアットストリームパートナーズ合同会社の共催で、組立加工製造業向けのセミナー「なぜか高くなる原価を管理する 不確実性の時代を乗り切るためのコスト戦略とは」が開催されました。本セミナーでは、製造業における原価管理の現状と改善手法について深く掘り下げ、経営活動への具体的な活用方法を提示しました。今回は、その講演の要点をお伝えします。

【OSS情報】WebベースAPI開発スイート「 Hoppscotch 」🌐

OSS情報

2024.07.04

【OSS情報】WebベースAPI開発スイート「 Hoppscotch 」🌐

「 Hoppscotch 」は、オープンソースのAPI開発エコシステムで、使いやすさとアクセシビリティを重視した軽量なWebベースのスイートです。無料版と有料版があり、PostmanやInsomniaの代替として利用可能です。