Japanese English

Exevalator

Exevalator(エグゼバレータ、Expression-Evaluator の略)は、プログラムやアプリ内に組み込んで、式の値の計算に使うための、コンパクトで高速なインタープリタです。 複数言語対応で、Java™言語、C#、C++、Rust、Visual Basic®製のプログラムに組み込んで使用できます。

- Exevalator とは? -

式の値を計算するライブラリ

Exevalator は、アプリやソフトを開発する際に部品として用いる、「ライブラリ」というものの一種です。

具体的には、"1 + 2""x + f(y)" など、「文字列として表されている式の値を計算する」という機能を提供するライブラリです。

このあたりの詳しい説明は、以下のお知らせ記事をご参照ください:

多言語対応&著作権フリーの式計算ライブラリ「 Exevalator 」をリリース
2022/04/16 - Java/C#/C++/Rust製のソフトウェア開発で利用できる、著作権フリーの式計算ライブラリ「 Exevalator(エグゼバレータ)」を公開しました。その詳細を、用途や使い方も含めて掘り下げてお知らせします。

変数や関数も定義できる

式の中で使える変数や関数も、いくつでも自由な名前で定義できます。カッコなども自由に使えます。

((x + 1.2) * 3.4) / 5.6 + f( g(x + y) / (z - 1.23) )

なので、関数電卓のような、それなりに複雑な式を計算する処理もこなせます。

数億回演算/秒の処理速度

Exevalator は、毎回違う式を計算する場合でも、1秒あたり数万〜数十万式ほどの速さで計算できます。

さらに、変数値を変えながら、同じ式を反復計算するような場合には、1秒あたり数千万式ほどの高速計算が可能です。 より正確に、式が含む加減算などの演算単位で表すと、最大で数億回演算/秒(数百MFLOPS)程度の速度を発揮します。

多言語対応

Exevalator は、複数の言語で利用できます。現在は Java™、C++、C#、Rust、および Visual Basic® で利用可能です。

コンパクトで移植が比較的容易なので、他のメジャーな言語にも、今後対応するかもしれません。

導入はソースコード 1枚

Exevalator は、ソースコード 1枚に収まるように実装されています(C++版のみヘッダ込みで2枚)。

なので、開発アプリ/ソフトのソースコードフォルダ内に、上記の1枚を放り込むだけで、すぐに使えます。

著作権フリー、改造/流用も自由

Exevalator のライセンスは、実質的な著作権フリーである「CC0」と「Unlicense」から自由に選べます。 アプリやソフトを公開・販売する際に、「Exevalator を使った」等と明記する必要はありません。

また、ソースコードの改造/流用も自由に行えます。その際、以下の記事が参考になるかもしれません:

Exevalator の内部アーキテクチャ解説
2022/05/04 - オープンソースの式計算ライブラリ「 Exevalator(エグゼバレータ)」の内部構造を、全体像から各コンポーネントの役割まで、一つ一つ掘り下げながら解説します。

さあ、あなたも

Exevalator は、どなたでも無料でご利用いただけます。

» 使用方法

  • OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。文中の社名、商品名等は各社の商標または登録商標である場合があります。
  • C#とVisual Basicは、米国 Microsoft Corporation の米国およびその他の国における登録商標です。
  • Rustは、Mozilla Foundation の米国及びその他の国における登録商標です。
  • その他、文中に使用されている商標は、その商標を保持する各社の各国における商標または登録商標です。

Japanese English
この階層の目次
新しいお知らせ

アシスタントAI作成の舞台裏(その1、基礎知識編)
2024-10-07 - アシスタントAI作成方法解説の前編です。今回はまず、アシスタントAIを作る前に抑えておきたい、基礎知識を延々と解説しています。そもそもLLM型AIとはどんな存在か? RAGとは何か? 等々です。

ソフトの利用をサポートしてくれるアシスタントAIを提供開始!
2024-09-20 - RINEARN製ソフトの使い方の質問応答や、一部作業のお手伝いをしてくれる、アシスタントAIを提供開始しました。ChatGPTアカウントさえあれば、誰でも無料で使用できます。使い方を解説します。

Exevalator 2.1 をリリース、新たに Visual Basic に対応
2024-07-28 - オープンソースの式計算ライブラリ「Exevalator(エグゼバレータ)」の2.1をリリースしました。今回から、新たに Visual Basic(VB.NET)でも使用できるようになりました。詳細を解説します。

関数電卓 RINPn(りんぷん)、Esc キーで計算式の一発クリアが可能に
2024-07-20 - 関数電 RINPn の Ver.1.0.2 をリリースしました。今回から、キーボードの「 Esc 」キーを押すと、入力中の計算式を一発でクリアできるようになりました。詳細を解説します。

Exevalator 2.0 をリリース、互換性に注意が必要なバグ修正が 1 件
2024-07-14 - オープンソースの式計算ライブラリ「Exevalator (エグゼバレータ)」の2.0をリリースしました。今回の更新では、互換性に注意を要する 1 件のバグ修正があります。詳細を解説します。

各ソフトウェアをアップデート、リニアングラフのコマンド拡張やVCSSLの英語対応など
2024-02-05 - 各ソフトの一斉アップデートの内容をお知らせします。今回は、リニアングラフのコマンド機能を大幅拡張したのがメインです。また、VCSSLのメッセージ類の英語対応も行いました。

Vnano の Ver.1.1 で実装した反復計算高速化の内側
2024-01-17 - 前回のお知らせ記事の続編です。スクリプトエンジン Vnano の Ver.1.1 において実施した高速化を、エンジン内部の実装面から掘り下げて解説します。

スクリプトエンジン Vnano の Ver.1.1 を公開、同じ内容の反復実行が劇的に高速化
2023-12-22 - スクリプトエンジン Vnano の最新版を公開しました。同じ計算式やスクリプトを反復実行する速さが、大幅に向上しました。次期版リニアングラフ3D内での活用例を交えつつ、詳しく解説します。