リニアンプロセッサー nano の先行開発版やソースコードリポジトリを公開
今年1月のお知らせでご紹介した通り、RINEARNでは現在、 「 シンプル & コンパクト 」な方向性を目指した、オープンソースの小型プログラム関数電卓ソフト 「 リニアンプロセッサー nano(ナノ) 」の開発が進行中です。 詳しい開発コンセプト等については、以下の記事をご参照ください:
今回は、上記の記事の続報的なお知らせ記事です。
上記の時点から3か月弱が経過し、まだ正式リリースまでは遠いものの、先日、実際に試用できる先行開発版の公開を行いました。 また、それよりも少し前の時点で、既にソースコードリポジトリも GitHub 上で公開しています。 そこで以下では、早速それらの使い方などを簡単にご紹介しましょう!
- 注意 - まだ実用に耐える品質はありません
- 先行開発版はダウンロードしてすぐに使用可能
- 普通の使い方をするだけの場合は、「ビルド済み」のパッケージを
- ビルド済みの「 先行開発版 」を入手
- ダウンロードしたZIPファイルを展開
- ReadMe (説明書)を一通り読む
- 起動する - Microsoft® Windows® をご使用の場合
- 起動する - Linux® やその他のOSをご使用の場合
- 起動画面と簡単な使い方
- 変数や関数の定義
- ソースコードの入手とビルド
- リニアンプロセッサー nano は、ソースコードの改造や流用が可能
- ソースコードリポジトリ
- 推奨環境
- ソースコードの入手
- ビルドする
- 起動する
- 今後の流れ
注意 - まだ実用に耐える品質はありません
リニアンプロセッサー nano は、まだ試作の段階を終えて本実装に移りつつある程度の開発段階で、実用レベルの品質はありません。 特に、計算式の実行などに使用している Vnano のスクリプトエンジン自体もまだ並行して開発中であり、テスト等が固まっていない段階です。
従って、現段階のリニアンプロセッサー nano を、計算結果の信頼性が重要な用途に使用する事は推奨されません。 現状では、あくまでも未完成版での使い勝手のお試し程度の感覚でご使用ください。
先行開発版はダウンロードしてすぐに使用可能
普通の使い方をするだけの場合は、「ビルド済み」のパッケージを
リニアンプロセッサー nano は、ソフトウェアの「もと」になる「ソースコード」を公開している、いわゆるオープンソースのソフトウェアです。 といっても、普通にユーザーとして使うぶんには、入手〜起動までの感覚などは、リニアングラフ等の他のRINEARN製のソフトとほとんど変わりません。
という事で、早速入手して起動してみましょう。普通の使い方をする場合(ほとんどのユーザー向け)は、ソースコードではなく、 入手してすぐ使える「ビルド済み」の状態で配布されているパッケージを使うのが便利です。 これは例えるなら、すぐ食べられるように焼いた状態で提供されているお肉のようなものです。要は普通によく配布されているソフトと同じです。
ビルド済みの「 先行開発版 」を入手
さて、リニアンプロセッサー nano はまだ開発途中のソフトで、正式リリース版は出ていないので、先行開発版を入手しましょう。 これはビルド済みの状態で配布されていて、以下のページから入手できます:
上記ページの「 RINEARN Processor nano - リニアンプロセッサー nano 」の項目から、 適当に一番上にある = 一番新しいバージョンのリンクをクリックしてダウンロードします(例: Ver. ADV-20190414-X0-JA)。
日本語版と英語版がありますが、ソフトウェア的なバージョンは全く同じなので、単純に使用したい言語でお選びください。
ダウンロードしたZIPファイルを展開
続いて、ダウンロードしたZIPファイルを右クリックし、「すべて展開」や「ここに展開」などを選んで展開します。 展開が完了すると、ZIPファイルと同名のフォルダができ、その中にZIPファイルの中身が全て展開されています。 以後、そのフォルダ内のファイルを使用します。
その際、最近の Windows® をご使用の場合は、警告メッセージが表示されて展開が中止されてしまう場合が多いと思います。 これは、ネット上から入手した出所不明のプログラム類を安易に実行しないためのセキュリティ機能が反応するためです。
その場合、展開するためには、まずZIPファイルを右クリックしてメニューから「プロパティ」を開き、 開いたプロパティの画面の下にあるセキュリティ項目の「許可する」にチェックを入れて、「OK」で閉じてください。
その後、再びZIPファイルを展開すると、今度は正常に全て展開できるはずです。
ReadMe (説明書)を一通り読む
展開したフォルダ内にある「 ReadMe_使用方法_必ずお読みください.txt 」(英語版では単純に ReadMe.txt)が説明書です。 使用方法や各機能の説明、計算処理の簡単な仕様、および免責事項やライセンスに関する事などが書かれているため、まずは一通りざっとお読みください。 なお、リニアンプロセッサー nano は MITライセンスで提供されています。
起動する - Microsoft® Windows® をご使用の場合
さて、それではリニアンプロセッサー nano を起動してみましょう。Windowsをご使用の場合は、 ZIPファイルを展開したフォルダ内にある 「 RinearnProcessorNano.bat (種類はバッチファイル) 」 をダブルクリック実行してください。
初回起動時はメモリー割当て量を尋ねられたり、 必要な場合は Java® の実行環境(JRE)をRINEARNからダウンロードして使用するかどうか尋ねられりするため、 ガイドに従って進めます。それが完了すると、リニアンプロセッサー nano が起動します。
このように、初回起動時だけ少し面倒ですが、2回目以降はすぐに起動します。
起動する - Linux® やその他のOSをご使用の場合
Linuxやその他のOSをご使用の場合は、コマンドライン上でZIPファイルを展開したフォルダ内まで cd して、 「 RinearnProcessorNano.jar (JARファイル) 」 を java コマンドで実行します:
java -jar RinearnProcessorNano.jar
すると、リニアンプロセッサー nano が起動します。
起動画面と簡単な使い方
リニアンプロセッサー nano を起動すると、以下のような小さなウィンドウが表れます。これが電卓の操作画面になります。
普通の電卓と比べると、キーパネルなども無く、かなり簡素ですね。でも、そのぶんコンパクトなサイズに収まっています。 このあたりのデザイン的な狙いなどについては、1月のコンセプト発表記事をご参照ください。 なお、画面の透明度や色、サイズなどは、設定スクリプトファイル「 Setting.vnano 」の記述内容でカスタマイズできます。丸め処理や桁数なども調整可能です。
それでは、実際に計算してみましょう。上の画像のように、「 ▼INPUT 」の下にある欄に「 ( 1 + 2 ) / 3 - 4 + 5 」と入力して、そのまま Enter キーを押してみてください。 すると、計算された値が「 ▼OUTPUT 」の下にある欄に表示されます。
このようにリニアンプロセッサー nano は、計算式を丸ごと入力できるタイプの電卓ソフトです。 なお、かけ算には「 * 」、割り算には「 / 」の記号を使用します。かけ算や割り算は、足し算や引き算よりも先に計算されます。 足し算などを先に行いたい箇所では、上の例のように括弧 ( ) で囲みます。これは算数や数学の式と同じですね。
変数や関数の定義
ところで、リニアンプロセッサー nano は、電卓の種類としては「プログラム関数電卓」に属するものです。 具体的には、プログラムを書く事で、ユーザー独自の変数や関数を自由に定義し、それを先ほどの電卓画面での計算式の中で使う事ができます。 また、手続き的な一連の計算をプログラム処理で行いたい場合も、それを関数として書いて普通に呼び出せば実行できます。
プログラムは、ZIPファイルを展開した直下にある、ライブラリとして使うためのスクリプトファイル「 Library.vnano 」内に記述します。 このファイルを普通にテキストエディタ(メモ帳でも可)で開くと、以下のような内容が記述されています:
- ライブラリ スクリプトファイル「 Library.vnano 」-このように、C言語っぽい記法で変数や関数が定義されています。 これは「 Vnano (VCSSL nano) 」というRINEARN製のスクリプト言語で、文法などは以下をご参照ください:
Vnano の文法はまさしく「 電卓ソフトとかで動くC言語っぽい簡易言語 」といった具合で、 いわゆるC系の言語のユーザーは、上記ドキュメントを流し読みしたくらいで読み書きできると思います。 C系の言語やプログラミング自体が未経験という場合は、上記のドキュメントはとっつきにくいため、 先にVCSSLのスタートアップガイドなどを読むのがおすすめです。 Vnano は、言語仕様的にはVCSSLのサブセット(部分機能版)だからです。
さて、上のようにライブラリ( Library.vnano )内で定義された変数や関数は、電卓画面の計算式の中で使用できます。 実際に試してみましょう。以下の計算式を入力して Enter キーを押します:
結果は:
この通り、定義した変数の値(a=2.0, b=-1.0, c=3.0)を使用して計算できています。
関数も使ってみましょう:
結果は:
この通り、定義した関数を使用して計算できています。
このようにリニアンプロセッサー nano では、ライブラリファイルにプログラムを書く事で、 ユーザー各々の用途に応じて変数や関数を拡張していく事ができます。 このあたりは、nano ではない方のリニアンプロセッサー と共通している所です。 nano と nano ではない方は、互いにデザインや規模などが全く違いますが、 このあたりをいわばコンセプトの芯として共通させていて、 ここを軸足にライトユース版とヘビーユース版のような作り分けを意識して開発しています。
ソースコードの入手とビルド
リニアンプロセッサー nano は、ソースコードの改造や流用が可能
さて、リニアンプロセッサー nano はオープンソースのソフトウェアなので、 改造して使用したり、MITライセンスの条件下で別のソフトの開発に流用したりする事も可能です。 特に、現時点では Vnano のスクリプトエンジンを実用目的で使用する唯一のアプリケーションなので、 Vnano の実用サンプルコードとしても有用かもしれません。
また、ライブラリ( Library.vnano )内に Vnano の機能の範囲内で実現するのは不可能な、 つまりJava言語でソフトウェア側に直接実装しないと実現できないような、いわゆる「組み込み関数」のようなものを独自に追加したい場合などにも、 現状ではソースコードを改造するのが唯一の手段となります(将来的には、プラグインを読み込めるようにもする予定ですが、優先度的に恐らくまだだいぶ先です)。
ただ、本記事の冒頭でも述べましたが、リニアンプロセッサー nano は、まだ試作の段階を終えて本実装に移りつつある程度の開発段階です。 従って今後、ソースコードは土台から大きく変化していく事がほぼ確実だと思います。 そのため、正直なところ、現時点であまり大々的にソースコードをカスタマイズするのはおすすめできません(半面、まだ規模が小さいため流用はしやすいかもしれません)。 あらかじめご了承ください。
ソースコードリポジトリ
リニアンプロセッサー nano のソースコードは、GitHub 上の以下の公開リポジトリから入手できます:
なお、一緒に Vnano のスクリプトエンジンのソースコードも必要になりますが、そちらは以下の公開リポジトリから入手できます:
以下では、実際にソースコードからリニアンプロセッサー nano をビルドする流れを簡単に追ってみましょう。
推奨環境
ビルドに必要なものや、必須ではないもののあった方が便利なものなどです:
- Java® Development Kit (必須 / 例: OpenJDK 12)
- Git (無くても一応ビルドは可能)
- Apache Ant (無くても一応ビルドは可能)
ソースコードの入手
まずはリニアンプロセッサー nano のソースコードを入手します。 一緒に Vnano のソースコードも入手しておきましょう。Git が使える場合はリポジトリを clone します:
git clone https://github.com/RINEARN/rinearn-processor-nano.git
git clone https://github.com/RINEARN/vnano.git
これで、作業場所に「 rinearn-processor-nano 」と「 vnano 」という名前のフォルダができ、 その中にビルドに必要なファイル等が入っています。ソースコードはさらに「 src 」フォルダ内にあります。
なお、Git が使用不可能な環境では、先に上げたGitHub上のリポジトリのページをブラウザで開いて、 画面右の数段下の位置にある「 Clone or download 」ボタン(緑色)から、ZIPファイルとしてダウンロードする事もできます。 その場合はZIPファイルを展開した上で(展開方法によっては同名フォルダが二重階層になるので、一重階層にしておきます)、 フォルダ名をそれぞれ「 rinearn-processor-nano 」と「 vnano 」にして、一緒に作業場所に置いてください。
ビルドする
ソースコードからJARファイルをビルドします。
Apache Antが使える場合は:
ant -f vnano/build.xml
Antが使用できない環境ではビルドスクリプトを実行します。
Windowsをご使用の場合は:
vnano\build.bat
Linux をご使用の場合は
sudo chmod +x ./vnano/build.sh
./rinearn-processor-nano/build.sh
./vnano/build.sh
ビルドが完了すると、「 rinearn-processor-nano 」フォルダ内には「 RinearnProcessorNano.jar 」が、「 vnano 」フォルダ内には「 Vnano.jar 」が生成されているはずです。
最後に、「 Vnano.jar 」を「 rinearn-processor-nano 」フォルダ直下にコピーしてください。これでビルドは完了です。
起動する
ビルドしたリニアンプロセッサー nano を起動するには、先ほど生成された「 RinearnProcessorNano.jar 」を java コマンドで実行します:
java -jar RinearnProcessorNano.jar
すると、リニアンプロセッサー nano の電卓画面が立ち上がります。 同じフォルダ内に置かれている「 Vnano.jar 」をちゃんと認識できていれば、計算式を入力して計算できるはずです。
無事に動作したでしょうか。
「 rinearn-processor-nano 」フォルダ内にある「 src 」フォルダの中を辿っていくと、 リニアンプロセッサー nano のソースコードがあるので、 適当に改変した後に先ほどのビルド手順をくり返してみると、変更が反映されると思います。 その際、Vnanoのソースコードを改変していなければ、Vnanoの側の再ビルドは不要です。
今後の流れ
今回の主な内容は以上です。
今後の流れとしては、引き続き Vnano のスクリプトエンジンと並行して公開ソースコードリポジトリ上で開発を進めながら、 実装の節目節目の段階で、ビルド済みの先行開発版を更新していく予定です。 そう遠くない内に、RINEARNウェブサイトのソフトウェア カテゴリ内に公式ページも用意する予定です。
正式リリース版の公開は現時点では年内を目標としていますが、肝心の計算処理を担う Vnano のスクリプトエンジンの安定具合による所が大きいため、見通しはやや曖昧です。 Vnano が正式リリース版にならない限りはリニアンプロセッサー nano も正式リリース版にできないため、 予想よりも結構長期に渡って先行開発版としての公開が続く事もあるかもしれません。
詳しい進捗などは、またこのコーナーで順次お知らせいたします!
※: OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。文中の社名、商品名等は各社の商標または登録商標である場合があります。
※: Windows は、米国 Microsoft Corporation の米国およびその他の国における登録商標です。
※: Linux は、Linus Torvalds 氏の米国およびその他の国における商標または登録商標です。
リニアングラフ3DのVCSSL用APIにカメラ制御関数を追加、回転アニメーションツールも同梱
2019年10月09日 -
RINEARNでは10月9日にソフトウェアの最新版をリリースしました。VCSSLのAPI関数の追加や、リニアングラフ3Dのアニメーションツールの追加など行っています。その概要をお知らせします。
小型関数電卓 RINPn(旧称リニアンプロセッサー nano)の公式ページを開設
2019年10月02日 -
現在オープンソースで開発中の、「シンプル&コンパクト」を目指した小型プログラマブル関数電卓ソフト「 RINPn 」の公式ページが、RINEARNサイト内にオープンしました。その概要をお知らせします。
Vnanoの公式サイトがオープン、チュートリアルやAPI仕様書等も掲載
2019年08月07日 -
オープンソースのアプリケーション組み込み用スクリプトエンジン「 Vnano 」の公式サイトを開設しました。チュートリアルや、スクリプトエンジンのAPI仕様書などが参照できます。その概要をお知らせします。
リニアングラフ3D/2Dが連番ファイルのアニメーションに標準で対応
2019年07月17日 -
リニアングラフ3D/2Dでは、7月17日公開の最新版より、連番ファイルを連続的に読み込みながらアニメーション描画するプログラムを同梱し、メニューから標準で使用可能になりました。その概要をお知らせします。
Vnanoのスクリプトエンジンアーキテクチャ解説2: コンパイラ
2019年07月03日 -
オープンソースで開発中のスクリプトエンジン「 Vnano 」のアーキテクチャを解説する連載の第2回です。今回は、スクリプトを中間コードへと変換する、コンパイラ部分の内部をクローズアップして解説します。
Vnanoのスクリプトエンジンアーキテクチャ解説1: 全体像
2019年05月28日 -
RINEARNでは現在、 アプリケーション組み込み用スクリプトエンジン「 Vnano 」を、オープンソースで開発中です。今回は、このスクリプトエンジンのアーキテクチャ面を掘り下げて解説します。複数回の連載予定です。
リニアンプロセッサー nano の先行開発版やソースコードリポジトリを公開
2019年04月16日 -
オープンソースで開発中の小型プログラム関数電卓ソフト、「 リニアンプロセッサー nano 」の先行開発版やソースコードリポジトリを公開しました。概要と使用方法、ビルド方法などについて解説します。
各ソフトウェアの最新版を一括でリリース、OpenJDKのJava実行環境(JRE)に対応
2019年03月06日 -
RINEARNでは3月6日に、主要なソフトウェアの最新版を一括でリリースしました。今回のアップデートには、以前お知らせした、OpenJDKで生成したJREへの対応が含まれています。その概要等をお知らせします。
次回のVCSSL 3.4.10において、関数1個の挙動に非互換な修正が適用されます
2019年02月12日 -
VCSSLの次回の正式リリース版3.4.10において、これまでドキュメントと実際の挙動が異なっていた描画系の関数1個に、非互換な修正が適用されます。その詳細と、使用コードでの対応方法について解説します。
RINEARNのソフトウェア向けにOpenJDKで生成したJava実行環境(JRE)の提供を開始
2019年02月06日 -
Javaのリリースモデル変更への対応として、OpenJDKのjlinkツールを用いて、RINEARNのソフトウェア実行用に生成したJava実行環境(JRE)の提供を開始しました。その詳細と、今後の方針について解説します。
シンプル&コンパクトなプログラム関数電卓! 「 リニアンプロセッサー nano 」の概要
2019年01月26日 -
RINEARNでは現在、プログラム関数電卓ソフト「 リニアンプロセッサー 」の派生版として、シンプル&コンパクトな方向性を目指した「 リニアンプロセッサー nano 」を開発中です。その概要をご紹介します。