[ 前へ | 目次 | 次へ ]

VCSSLってどんな言語 ? - VCSSLの特徴

はじめに、VCSSL の基本的な事項や、特徴などについて解説します。

VCSSL とは

VCSSL は、2011 年公開の、比較的新しいC 言語系のプログラミング言語です。

名称は Visualization-Calculation-Simulation Script Language (可視化-数値計算-シミュレーションのためのスクリプト言語)の略で、 特殊な環境に依存せず、どこでも使用できる数値計算プログラムや科学技術系シミュレーションを、 手軽に開発する事を主目的として生まれた言語です。

加えて現在では、より汎用的な一般用途においても、例えば簡易GUI アプリや3D 可視化ツールなど、 比較的小規模なものを手軽に開発できる言語を目指しています。 (開発最初、VCSSLの「V」は Virtualized の略でしたが、後に上のようなコンセプトが加わったため、現在は Visualization の略となっています )。

文法がC 系言語の中でも単純なため、 プログラミング入門用にも適しており、C 系他言語へのステップアップも考えられます。

歴史(開発経緯)

電卓ソフト用言語としてのVCSSL 1.0

VCSSL の最初のバージョンであるVCSSL 1.0 は、2011 年1 月に電卓ソフト上で動作する言語として誕生しました。 その当初の目的は、電卓ソフト上において、ユーザー定義関数や、ちょっとした短い数値計算プログラムなどを記述する事でした。

そのため、数値計算分野でユーザーの多いC言語系の文法を採用しつつ、 電卓上で手軽に扱えるように極力シンプル化した言語となりました。

電卓ソフト「 リニアンプロセッサー 」用の言語として誕生
VCSSLは元々、電卓ソフト「 リニアンプロセッサー 」上で、ユーザー定義関数や数値計算プログラムなどを記述するための言語として誕生しました。

GUI やグラフィックスをサポートし、単体のプログラミング言語として独立したVCSSL 2.0以降

続く2011 年8 月公開のVCSSL 2.0 は、GUI や2D/3D グラフィックスなどの諸機能を大幅に拡充し、 数値計算だけでなく、ある程度汎用的な用途にも対応する事を目指したバージョンでした。 それに伴い、電卓ソフト付属の言語という立場から、単体で使用する言語へと独立しました。

VCSSL の拡張が最も著しいペースで進んだのは2.x 世代で、 この時点で現在のVCSSL に繋がる基本的な部分はほぼ固まり、 以降は現行版の3.x 世代に至るまで細かな改良が続いています。

VCSSLの特徴

C言語(C系言語)ユーザーが手軽に扱えるシンプルな文法 - プログラミング入門にも

VCSSL は電卓ソフト用の言語として誕生した経緯から、C 系のスタンダードな文法を採用しつつ簡略化し、手軽に扱えるシンプルな文法を目指しています。 すでにC 系の言語を扱える方なら、VCSSLの文法はすぐに習得できるでしょう。

また、VCSSL はプログラミング入門にもおすすめです。 文法がシンプルで入門しやすい事に加えて、他のC 系言語へのステップアップの足がかりにもなるからです。

▼VCSSLのサンプルコード

ちょっとした数値計算やシミュレーションを記述するのに適した特性

電卓ソフト用言語であった事に由来して、VCSSL はちょっとした数値計算やシミュレーションに適した特性を持っています。

ここでの「ちょっとした」とは計算負荷を指しており、具体的にはC 言語で書いても1 秒以内で終わる程度の計算をターゲットにしています。

具体的な特長としては、文法が静的型付けである事や、CSV/TSV 形式のファイルを手軽に扱えるファイル入出力機能の存在、2D/3D グラフをプロットするライブラリがサポートされている事などが挙げられます。

また、計算速度も毎秒1 億回(100MFLOPS)を超え、それなりの水準に達しています。

ちょっとした数値計算やシミュレーションが得意
元々が電卓ソフト用の言語なので、数値計算やシミュレーションのプログラムをシンプルに記述できます。2D/3Dグラフをプロットするライブラリもサポート。

GUIや2D/3Dグラフィックス、サウンドなどの各種汎用機能もサポート - 簡易GUIアプリ開発も

VCSSL はGUI や2D/3D グラフィックスなどの汎用機能を標準ライブラリでサポートしているため、手軽な文法はそのまま、ある程度汎用的な用途もこなす事ができます。

といっても、VCSSL は比較的小規模なプログラムを想定した言語であるため、高機能なアプリケーションの開発などは得意ではありません。そういった用途では、最初から大規模開発を前提とした汎用言語にはかないません。

しかし、比較的単純な機能で、GUI も少しの入力項目が並ぶだけといった簡易アプリ的なものなら、VCSSL のシンプルさを活かして手軽に組むことができます。アニメーション対応の2D/3D グラフィックスを手軽に扱えるのも長所です。サウンド再生や時間計測、テキスト処理なども扱えます。

3DCGも標準サポート
3DCGも標準ライブラリでサポートされており、図のようなリアルタイム3Dアニメーションで、計算結果やデータを可視化する事もできます。

「 VCSSLエンジン 」 上で動作するスクリプト言語 . 書いてすぐに実行可能

VCSSL は、「VCSSL エンジン」という処理エンジン上で動作する、スクリプト言語の一種です。

(広義の)スクリプト言語とは、人間が記述したプログラム(ソースコード)を、実行前に機械語などに変換しなくても、その場でそのまま実行できる形式のプログラミング言語の事です。

そのため、ちょっとした計算や短い処理などを行いたい場合に便利です。例えば、メモ用のソフトなどでさっと数行書き、「 .vcssl 」の拡張子を付けて保存すれば、それだけでVCSSL プログラムの完成です。

あとは、それをマウスでダブルクリックするだけで、自動的に実行できます。

様々な環境で動作 - USB フラッシュメモリーで実行環境ごと持ち運びも

VCSSL の実行環境は、主要な各種デスクトップ向けオペレーティングシステムに対応しています。

そのため、実行環境さえあれば、VCSSL で記述されたプログラムは、どこでも同様に動作します。

スクリプト言語なので、環境に合わせて書き換えたり、変換したりする必要はありません。全く同一のプログラムが動作します。これは、GUI や2D/3D グラフィックスなどの機能も例外ではありません。

どこでも開発できて、実行環境ごと持ち運べて、どこでも動作
VCSSLのプログラムは、どこでも開発できて、USBメモリーなどで実行環境ごと持ち運べて、そしてどこでも動作します。

実行環境は、自作プログラムに同梱して再配布可能

VCSSL の実行環境は、自作のプログラムに同梱して配布できます。この事は、VCSSL の実行環境に関するライセンス(使用許諾)でも、公式に認められています※。

VCSSL の実行環境は、先に述べたように、各種デスクトップ向けオペレーティングシステムにおいて、インストール不要で動作します。つまり、自作のプログラムに実行環境を同梱して配布すると、どこの誰でも、そのプログラムを入手してすぐに使う事が可能です。



スポンサーリンク



この階層の目次
お知らせ

リニアングラフ3Dをアップデート、次期版(Ver.6)の開発もスタート
2023/09/04 - リニアングラフ3Dのアップデート版をリリースしました。また、次期メジャーバージョンである Ver.6 系の開発も開始しました。それぞれについて解説します。

AIの補助により、英語版ドキュメントを大幅拡充へ - 作業の舞台裏も紹介!
2023/05/28 - RINEARNでは今後、ChatGPT等のAIの補助により、英語版ドキュメントを大幅に拡充していく方針です。既に行った英訳作業の様子なども紹介しつつ、詳しく解説します。

リニアングラフ3Dをアップデート、API関連機能などを拡充
2023/05/18 - リニアングラフ3Dのアップデート版をリリースしました。主に、Java言語やVCSSLでの制御機能などを拡充しました。更新内容をそれぞれ詳しく解説します。

新着
[公式ガイドサンプル] 各種の図形や画像を描画する

「VCSSL 2DCG開発ガイド」内のサンプルコードです。図形や画像などを描画します。
2022/12/16
角度の「度」とラジアンとを相互変換し、図示もするツール

45度などの「度」の値と、ラジアンの値とを相互に変換できるツールです。対応する角度の図示もできます。
2022/11/22
[公式ガイドサンプル] 立体モデルを回転させるアニメーション

「VCSSL 3DCG開発ガイド」内のサンプルコードです。立体モデルを、アニメーションで回転させ続けます
2022/11/18
[公式ガイドサンプル] 立体モデルを回転させる

「VCSSL 3DCG開発ガイド」内のサンプルコードです。立体モデルを、指定した角度だけ回転させます。
2022/11/17
[公式ガイドサンプル] 四則演算の計算順序や、カッコを使った順序指定

「VCSSLスタートアップガイド」内のサンプルコードです。四則演算が計算される順序や、カッコを使って順序を指定する方法を例示します。
2022/10/31