[ 前へ | 目次 | 次へ ]
2020/12/20

コードアーカイブでVnano製プログラムの配信を開始

Vnano

VCSSL製の各種コードを配信している「 VCSSLコードアーカイブ 」において、 2020年12月20日より、Vnano で記述されたプログラムも配信を開始しました。今回はその概要と、初回配信プログラムなどをご紹介します。


VCSSLコードアーカイブとは

VCSSLコードアーカイブは、プログラミング言語VCSSLの公式サイト内において、VCSSL製の各種プログラムを配信しているサブカテゴリー・サイトです:

VCSSLコードアーカイブ (日本語版)
https://www.vcssl.org/ja-jp/code/

VCSSLコードアーカイブでは、簡易ツール的なプログラムをはじめ、GUIやグラフィックス系のプログラム、数値計算プログラム、および各種アルゴリズムのサンプル実装コードなどを、解説記事付きで配信しています。

VCSSLはC言語系のシンプルな文法を採用しているため、サンプルコード系のプログラムや解説記事などは、他のC系言語におけるプログラミング時の参考にもご使用いただけます。

Vnano とは

Vnano (VCSSL nano) は、C言語系のシンプルな文法を持つ簡易スクリプト言語です。 というと VCSSL も同様なのですが、Vnano は VCSSL からさらに、機能や言語仕様を削ってコンパクト化したサブセット(機能限定版)になっています。

その代わりとして、Vnano のスクリプトを処理するエンジン(スクリプトエンジン)は、一般の Java® 製のソフトウェアに手軽に搭載し、 そのソフト上でのスクリプト機能として使えるようになっています。 実際に、関数電卓ソフトの RINPn では、Vnano で関数を定義したり、計算プログラムなどを書いて実行する事ができます。

Vnano 公式サイト (日本語版)
https://www.vcssl.org/ja-jp/vnano/
関数電卓 RINPn 公式サイト (日本語版)
https://www.rinearn.com/ja-jp/rinpn/

また、Vnano のスクリプトエンジンはオープンソースで、下記にてソースコードを一般に公開しています:

Vnano ソースコードリポジトリ (GitHub)
https://github.com/RINEARN/vnano

スクリプトエンジンのライセンスは、オープンソース系のライセンスの中では比較的緩い「 MITライセンス 」であるため、商用・非商用問わず気軽にご利用いただけます。

VCSSLコードアーカイブで Vnano 製のプログラムを配信開始、ベータ版の実行環境を同梱

Vnano のスクリプトエンジンの開発は、2013年頃にコンセプトや全体設計の検討を始め、2015年頃から実装を部分的に(VM側からコンパイラ側へ向けて)開始し、 2017年に一応の形で動作可能となり、 その後2018年にソースコードの公開、2019年にベータ版への移行を経て、現在は正式リリースへの着地を目指す段階になっています。 当初のリリース予定から2年ほど遅れていますが、動作はそれなりに安定し、パフォーマンス面でもVCSSLを平均的に上回る水準になりつつあります。

ただ、正式リリースへ移行するには、まだ(テスト用ではない)各種の実用プログラムによる検証が十分ではありません。 しかしながら、リリース前なので実用プログラムやサンプルコード類などのコンテンツがそもそも乏しく、 従って実行環境だけベータ版で配布しても、実際にそれを使って何かのプログラムを動かしてもらえる機会もやはり乏しいため、 それだけでフィードバックが集まる事は(よほどのアーリーアダプター層の方々から以外は)あまり見込めません。

そこで今回のお知らせの通り、実用プログラムやサンプルコード類などの公式コンテンツの充実や、Vnano 自体の周知なども兼ねて、 VCSSLコードアーカイブにおいてVnano製プログラムの配信を開始しました。

配信プログラムには実行環境が同梱されており、Microsoft® Windows® や Linux 等の各種環境において、ダウンロードしてすぐに実行できます。 先述の通り、Vnano のスクリプトエンジンは現在ベータ版で、各プログラムの配布/解説ページにもその旨が明記されていますが、 各プログラムの処理は正しく実行できる事を確認の上で同梱されています。

プログラムの内容を大幅に書き換えて実行した場合には、未知のバグを踏む可能性も生じますが(※ その旨も配布ページで明記されています)、 その際はお手数ながら、RINEARNのお問い合わせページVnanoの開発リポジトリ (GitHub) 等からお知らせいただけますと幸いです。

初回配信プログラム

以下では、実際に今回配信を開始したVnanoプログラムをご紹介します。

積分値を求めるプログラム

積分の計算を数値的に行い、求まった積分値を表示するプログラムです。 標準では精度重視でシンプソン法という方法を用いていますが、1行だけ書き換えると、 シンプルでわかりやすい矩形法や台形法のコードにもできます。 上記の配信ページでは、各アルゴリズムの考え方や、それをどのようにコードとして実装しているか等についても解説しています。

積分値のグラフ描画用データを出力するプログラム

積分の計算を数値的に行い、その過程の値の変化 = 下端Aの設定値を基点とする不定積分の関数の形を、 グラフに描くためのデータを出力するプログラムです。 実際に、リニアングラフや gnuplot などのグラフソフトを用いて、出力データからグラフを描く手順についても解説しています。

ローレンツ方程式を数値的に解くプログラム(2021/02/12追加)

ローレンツ方程式を4次ルンゲ=クッタ法によって解き、グラフ描画用のデータを出力するプログラムです。 実際に出力データからグラフを描く手順や、ローレンツ方程式の概要、および計算処理に用いているアルゴリズムなどについても解説しています。

今回のお知らせは以上です。

RINEARN では現在、Vnano 自体だけでなく、Vnano 対応の関数電卓ソフト RINPn についても、より正式リリースに近い形(現在はベータ版)への移行を目指しています。 今回のVnanoプログラムの配信開始は、上記に先行して RINPn 用のコンテンツを整備するステップも兼ねています。 実際に今回配信を開始した各プログラムは、全て RINPn 上でもご利用いただけます。 RINPn および Vnano に関する続報は、また追ってこのコーナーでお知らせいたします。


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

Vnanoがオープンベータ版に移行、VCSSLの実行環境で標準で実行可能に
2021年04月07日 - ソフト内組み込み用スクリプトエンジン&言語「 Vnano 」がオープンベータ版に移行し、併せて、VCSSLの実行環境でもVnanoコードの実行が可能になりました。詳細をお知らせします。

リニアングラフの最新版をリリース、2D版でも描画エンジンの直接操作が可能に
2021年04月03日 - リニアングラフ2D/3Dの最新版をリリースしました。それぞれのアップデート内容をお知らせします。今回から、2D版でもJava言語APIによる描画エンジンの直接操作が可能になりました。

RINPn のオープンベータ版をリリース! 詳細な公式ガイドも同梱&公開
2021年03月08日 - 2019年より開発進行中のプログラム関数電卓「 RINPn(りんぷん)」が、正式リリースに向けた最終準備段階として、オープンベータ版へと移行しました。その詳細をお知らせします。

コードアーカイブ新着
[公式ガイドサンプル] 引き算の結果を画面に表示する

「VCSSLスタートアップガイド」内のサンプルコードです。引き算を行って、結果を画面に表示します。
2021年07月08日
[公式ガイドサンプル] 式を複数行にわたって書く

「VCSSLスタートアップガイド」内のサンプルコードです。足し算を行う式を、複数行にわたって記述します。
2021年07月07日
[公式ガイドサンプル] 足し算の結果を画面に表示する

「VCSSLスタートアップガイド」内のサンプルコードです。足し算の結果を求めて、画面に表示します。
2021年07月06日
Vnano版 | ローレンツ方程式を数値的に解くプログラム

ローレンツ方程式を4次ルンゲ=クッタ法によって解き、グラフ描画用のデータを出力するプログラムです。
2021年02月12日
Vnano版 | 積分値のグラフ描画用データを出力するプログラム

数値的に積分を行い、結果の関数をグラフに描くためのデータを出力するコードです。
2020年12月20日
新着・お知らせ配信用Twitter