VCSSL 文法ガイド

ここでは、主にプログラミング経験者の方を対象として、VCSSLのプログラムの書き方や文法について、単元ごとに簡潔にまとめて解説します。

はじめに

VCSSL( ブイシーエス・エスエル、Visualization-Calculation-Simulation Script Language )は、データの可視化や、数値計算・シミュレーションなどを得意とするスクリプト言語です。 もともと電卓ソフト上で簡単な計算を自動化するための言語であったため、 小規模な計算コードを手短に書けて、 かつ学習コストを低く抑えられるよう、C言語系のシンプルな文法をもっています。

計算メインの用途以外にも、 それなりの範囲をカバーする各種機能がそろっており、 GUI2DCG / 3DCGなどのグラフィックス処理も扱えるため、 いろいろな用途に使用できます。 例えば、ファイル操作などのバッチ処理を自動化するスクリプトにも使えるでしょうし、 ちょとした画像処理や、グラフィカルな画面をもったツールを作る事なども考えられます。

計算面の仕様としては、数値型では整数や浮動小数点数および複素数をサポートしており、それぞれ64bit精度と任意桁数の精度が使用できます。 演算速度はインタープリタ―実装で100MFLPS(1億回演算/秒、64bit浮動小数点数)程度を発揮し、それなりの規模の計算やデータ解析をカバーできます。 これらとグラフィックス機能を組み合わせれば、計算結果をアニメーションで可視化するようなシミュレーションプログラムを、VCSSLのみで作る事も可能です。 グラフソフトも標準搭載しています。

このガイドでは、VCSSLのプログラムの書き方や文法・仕様などを、単元ごとに簡潔にまとめています。 すでに何らかのプログラミング言語を習得されている方が、 いわゆるリファレンスマニュアルのような形で読まれる事を想定しています。

プログラミングがはじめての方にとっては、このガイドはやや説明不足なので、代わりにVCSSLスタートアップガイドをおすすめします。 逆に、より手っ取り早くVCSSLを使いはじめたい方は、C系言語ユーザー向け 即席VCSSLガイドをおすすめします。

それでは、VCSSLでのプログラミングをはじめましょう!

目次


VCSSLってどんな言語 ? - VCSSLの特徴
VCSSLの基本的な特徴を紹介しています。

VCSSLでは、こんなことができる ! - VCSSLの用途
VCSSLの使用例を紹介しています。

VCSSLをはじめよう ! - 実行環境の用意
VCSSLの環境構築方法を紹介しています。

プログラム
本格的な開発作業に入る前に、プログラミングにおける基本となる知識について扱います。

変数
プログラミングの基本である、変数の概念について扱います。

データ型
VCSSLにおけるデータ型について扱います。

算術演算
変数に対して、四則演算などの算術演算を行う方法を扱います。

比較演算
変数同士の比較を行う方法を扱います。

論理演算
真偽値(論理値)の演算である、論理演算を行う方法を扱います。

スコープ
同じ名前の変数を呼び出す際のルールである、スコープとブロックの概念を扱います。

制御構文
条件分岐や繰り返し処理などを行うための方法である、制御構文について扱います。

配列
複数の値を格納できる変数である、配列について解説します。

ベクトル演算
配列同士の演算である、ベクトル演算を扱います。

関数
処理をまとめる重要な手段である、関数の仕組み扱います。

main 関数
main関数について扱います。

システム関数
VCSSLの基礎的な機能を提供する、システム関数と定数を扱います。

標準ファイル入出力
単純なファイル入出力を扱うためのシステム関数を扱います。

汎用ファイル入出力
単純なファイル入出力を扱うためのシステム関数を扱います。

実行時評価
文字列をプログラムの一部として実行する方法を扱います。

構造体
複数の変数をまとめて扱う、構造体について扱います。

ジェネリクス
変数型をパラメータとして指定する、ジェネリクスについて扱います。

モジュールとライブラリ
モジュールの概要と、ライブラリのインポートについて扱います。

標準ライブラリ
VCSSLの標準ライブラリの中から、よく使うものについて説明します。

その他のライブラリ
標準ライブラリ以外で、よく用いるライブラリについて扱います。

プラグイン
VCSSL処理系の機能を拡張するための方法である、プラグインの接続について扱います。

この階層の目次
お知らせ

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

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

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

新着
Vnano版 | ローレンツ方程式を数値的に解くプログラム

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

数値的に積分を行い、結果の関数をグラフに描くためのデータを出力するコードです。
2020年12月20日
Vnano版 | 積分値を求めるプログラム (数値積分)

矩形法/台形法/シンプソン法を用いて、積分の値を数値的に求めるコードです。
2020年12月20日
3Dグラフを回転アニメーションさせるツール

3Dグラフを、Z軸まわりにゆっくりと回転アニメーションさせるツールです。全角度のグラフを、連番の画像ファイルに保存する事もできます。
2019年10月09日
[公式ガイドサンプル] ユーザーのGUI操作に対して処理を行う

「VCSSL GUI開発ガイド」内のサンプルコードです。ユーザーがGUIを操作した際に行う処理を実装します。
2019年07月28日
開発元Twitterアカウント