
コンピューティングにおいて、ビジュアルプログラミング言語(ビジュアルプログラミングシステム、VPL、またはVPS )は、ダイアグラムプログラミング、[1] [2] グラフィカルプログラミング、またはブロックコーディングとも呼ばれ、プログラム要素をテキストで指定するのではなく、グラフィカルに操作することでプログラムを作成できるプログラミング言語です。[3] VPLでは、視覚的な表現、つまり構文要素または二次表記法として使用されるテキストとグラフィックシンボルの空間配置を使用したプログラミングが可能です。たとえば、多くのVPLは「ボックスと矢印」というアイデアに基づいています。ボックスやその他の画面オブジェクトは、関係を表す矢印、線、または円弧で接続されたエンティティとして扱われます。VPLは一般に、ローコード開発プラットフォームの基礎となります。
意味
VPL は、使用される視覚表現の種類と範囲に応じて、アイコンベースの言語、フォームベースの言語、およびダイアグラム言語にさらに分類できます。ビジュアル プログラミング環境は、プログラム構築のための特定の空間文法に従ってユーザーが対話的に操作できるグラフィカル要素またはアイコン要素を提供します。
VPLの一般的な目標は、初心者がプログラミングをより簡単に利用できるようにし、3つの異なるレベルでプログラマーをサポートすることです[4]
- 構文
- VPL は、アイコン/ブロック、フォーム、ダイアグラムを使用して、構文エラーの可能性を減らしたり、完全に排除したりすることで、プログラミング プリミティブの配置を支援し、適切な形式のプログラムを作成します。
- セマンティクス
- VPL は、プログラミング プリミティブの意味を明らかにするためのメカニズムを提供する場合があります。これには、プログラミング言語に組み込まれたドキュメント機能を提供するヘルプ機能が含まれる場合があります。
- 実用主義
- VPL は、特定の状況でプログラムが何を意味するかの研究をサポートします。このレベルのサポートにより、ユーザーは VPL で作成された成果物を特定の状態にして、プログラムがその状態にどのように反応するかを調べることができます。例: AgentSheetsまたはAgentCubesでは、ユーザーはゲームまたはシミュレーションを特定の状態に設定して、プログラムがどのように反応するかを確認できます。Thymio プログラミング言語を使用すると、ユーザーはロボットを特定の状態にして、それがどのように反応するか、つまりどのセンサーがアクティブになるかを確認できます。
2005年現在、ビジュアルプログラミングアプローチとデータフロープログラミング言語を統合して、プログラム状態に即座にアクセスしてオンラインデバッグを行うか、プログラムを自動的に生成してドキュメント化することが開発の課題となっている。データフロー言語では自動並列化も可能で、これは将来のプログラミングにおける最大の課題の1つとなる可能性が高い。[5]
Microsoft Visual Studio統合開発環境 (IDE)の Visual Basic、Visual C#、Visual J# などの言語は、ビジュアルプログラミング言語ではありません。IDEは豊富なユーザー インターフェイスで編集およびデバッグ アクティビティを装飾しますが、アルゴリズムなどの表現はテキストです。同様の考慮事項は、通常フォーム デザイナーをサポートし、制御フローとデータの依存関係を示す (定義はしない) グラフィカル ツールも備えている他のほとんどの高速アプリケーション開発環境にも当てはまります。
ビジュアルプログラミング言語のパーサーはグラフ文法を使用して実装できます。[6] [7]
視覚言語の種類
以下のリストは相互に排他的ではありません。一部のビジュアル プログラミング環境には、複数のパラダイムの要素が組み込まれている場合があります。ビジュアル プログラミング パラダイムの選択は、多くの場合、アプリケーションの特定の要件や、ユーザーまたは開発者の好みによって異なります。
- ブロックベースプログラミング
- Scratch や Blockly などのプラットフォームによって普及し、教育現場や入門プログラミングで使用されています。
- フローチャート
- アルゴリズムやプロセスを表すために、ソフトウェア エンジニアリングやシステム設計で広く使用されています。
- ドラッグアンドドロップインターフェース
- ユーザー インターフェイスを作成するための GUI 設計ツールや開発環境でよく使用されます。
- ノードグラフ
- ビジュアル プログラミング言語、ゲーム開発、データフロー システムで頻繁に使用されます。
- データフロープログラミング
- 並列コンピューティング、信号処理、ビジュアル プログラミング環境で人気があります。
- 象徴的なプログラミング
- プログラミング タスクを簡素化するためにさまざまなコンテキストで使用され、多くの場合、モバイル アプリ開発に関連しています。
- ステートマシン
- ゲーム開発、制御システム、リアクティブ システムのモデリングに広く採用されています。
- シートベースのプログラミング
- スプレッドシート アプリケーションや特定の教育プログラミング環境で見つかります。
- タイムラインベースのプログラミング
- マルチメディアやアニメーション ソフトウェアで、時間の経過に伴うイベントの順序付けによく使用されます。
- 空間プログラミング
- 特定のインタラクティブ環境および 3D モデリング環境に適用されます。
- フォームベースのプログラミング
- データ入力アプリケーションなど、ユーザー入力とグラフィカル インターフェイスが重要な役割を果たすアプリケーションで使用されます。
汎用ビジュアル言語

VPL のほとんどは、初心者プログラマーを対象とする教育またはドメイン固有の使用のために設計されています。しかし、テキスト プログラミング言語 ( C、C++、Javaなど) を使用する代わりに、主流のプログラマーがあらゆるソフトウェアプロジェクトで使用できる汎用ビジュアルプログラミング言語を提供しようとする研究プロジェクトもいくつかあります。
例えば、Envision [8] [9]やPWCT [10]などの研究プロジェクトは、この目標を達成するように設計されています。VPLはテキストプログラミング言語を使用して開発されるのが一般的です。汎用VPLを開発することで、その逆が可能になります。例えば、2016年には、新しいテキストプログラミング言語コンパイラと仮想マシンがビジュアルプログラミングを使用して開発されました。[11]
視覚言語のリスト
以下に、注目すべきビジュアル プログラミング言語のリストを示します。
教育
- AgentCubes は、3D および 2D ゲーム デザインとシミュレーション デザインのための計算思考ツールです。
- AgentSheets は、ゲーム オーサリングおよび計算科学オーサリング ツールです。
- Alice は、3D 環境をプログラミングするために使用されるオブジェクト ベースの言語です。
- Analytica は、意思決定とリスク分析のための定量モデルの構築と分析に使用します。
- App Inventor for Android は、 BlocklyとKawa をベースにしたAndroidアプリケーションを作成するためのツールです。
- Blockly は、ブロックベースのビジュアル プログラミング言語 (VPL) とエディターを作成するためのプログラミング言語JavaScriptのクライアント側ライブラリです。Blockly はScratchで使用されていることで知られています。
- Bubble は、本番環境に対応したWeb アプリケーションを作成するためのツールです。
- Catrobat、アニメーション、アプリ、ゲーム用のブロックベースのビジュアルプログラミング言語
- Etoys は、ディズニーのアラン・ケイの指導のもと、シーモア・パパートとLogoプログラミング言語の影響を受けて、構成主義学習をサポートするために開発された。
- Flowcode は、組み込みマイクロコントローラと Windows 向けのビジュアル プログラミング ツールです。
- Flowgorithm は、複数の言語に変換できる実行可能なフローチャートを作成します。
- Greenfoot は、主に教育目的、GUIおよびゲーム開発用に設計されたJavaまたはStride用のIDEです。
- Hopscotch は、iPadアプリであり、タッチスクリーン指向のモバイル アプリケーションを作成するためのビジュアル プログラミング言語です。
- Kodu は、 Logo用のビジュアル プログラミング ツールです。
- プログラミング言語、IDE、学習環境であるKojo 。
- mBlock は、 Arduinoハードウェア インターフェイス用の Scratch の拡張機能です。Makeblock によって開発されました。
- 子供向けに設計された Fraunhofer IAIS のオンライン プログラミング環境である Open Roberta 。
- 鉛筆で描くことを中心とするビジュアルプログラミング言語「Pencil Code 」
- 実行可能なフローチャートを描画するためのUSAFの製品であるRaptor。
- Scratch は、 MITの製品で、 K-12 および放課後プログラムの児童向けに設計されています。
- ScratchJr は、主に若いユーザー(5~7歳の子供)向けに設計された Scratch の解釈です。
- Snap! は、 BYOBのブラウザベースの再実装であり、一流の手順とリストを備えたScratchの拡張機能です。カリフォルニア大学バークレー校で教育に使用されています。
- Java ベースの教育システム、Stagecast Creator 。
- StarLogo は、MIT メディアラボのMitchel Resnick、Eric Klopferらによって開発されたエージェントベースのシミュレーション言語です。Logoプログラミング言語 ( Lispの方言)の拡張です。
- 子供向けプログラミングシステム、ToonTalk 。
- 実行可能なフローチャートを作成するためのVisual Logic。
- VIPLEビジュアル IoT/ロボティクス プログラミング言語環境
マルチメディア
- AudioMulch、オーディオ信号フローをベースにしたサウンドと音楽の作成環境
- Biduleは、インタラクティブなコンピュータミュージックやマルチメディアを作成するためのモジュラーノードとパッチコード環境です(Windows、MacOS)。[12]
- オープンソースの3DグラフィックパッケージであるBlenderには、シェーダー[13]、合成[ 14]、テクスチャ[15]、非破壊ジオメトリ[16]を構築するためのノードグラフが含まれています。 [17 ]
- Cameleon、グラフィカル関数型言語
- Clickteamの The games factory/Multimedia fusion シリーズは、視覚的にゲームを開発するための環境です。
- Dynamo 、 Autodesk Revit用のジェネレーティブ モデリング インターフェイス
- Filter Forge は、画像処理用のノードベースのフィルタ生成ツールです。
- Houdini (ソフトウェア)、視覚効果、モデリング、アニメーション ソフトウェア
- GenerativeComponents は、 Bentley Systemsが開発したパラメトリック CAD ソフトウェアです。
- Grasshopper 3d 、 Rhinoceros 3D用のジェネレーティブ モデリング インターフェイス
- Isadora は、デジタル ビデオのリアルタイム操作に重点を置いた、Mac OS XおよびMicrosoft Windows用の独自のグラフィック プログラミング環境です。
- Kyma (サウンド デザイン言語) は、ミュージシャン、研究者、サウンド デザイナーが使用するサウンド デザイン用のビジュアル プログラミング言語です。
- Mama (ソフトウェア)、3Dアニメーションやゲームを構築するためのプログラミング言語とIDE
- Max (ソフトウェア)は、インタラクティブなリアルタイムの音楽およびマルチメディア アプリケーションを構築するためのビジュアル プログラミング環境です。
- Nodal は、音楽作曲のためのノードベースの生成プログラミングソフトウェアアプリケーションです。
- Nuke は、 The Foundryによる、Tcl、Python、Blink スクリプトを搭載した視覚効果 合成用のオブジェクトベースのビジュアル プログラミング ソフトウェアです。
- OpenMusic は、音楽作曲( Common Lisp Object System (CLOS) に基づく)アプリケーションおよびモバイル アプリケーション用のビジュアル プログラミング言語です。
- Pure Data (Pd) は、インタラクティブなコンピュータ音楽やマルチメディア作品を作成するために開発されたビジュアル プログラミング言語です。
- Quartz Composer、グラフィックデータの処理とレンダリングのための言語 ( macOS )
- Reaktor 、 Native Instrumentsの DSP および MIDI 処理言語
- Scala マルチメディアオーサリング スイートと AmigaOS および Windows 用の完全なマルチメディア システム
- Softimage、ICE Interactive Creative Environment 搭載。
- SynthEdit は、VPL を使用したシンセサイザー構築ツールです。
- TouchDesigner、リアルタイムマルチメディアコンテンツ用のビジュアルプログラミング言語
- Virtools は、インタラクティブな 3D エクスペリエンスを作成するために使用されるミドルウェアです。
- vvvv は、リアルタイム ビデオ合成と、物理インターフェイス、リアルタイムモーション グラフィックス、オーディオ、ビデオを備えた大規模メディア環境のプログラミングに特に重点を置いた汎用ツールキットです。
- WireFusion、インタラクティブな 3D Web プレゼンテーションを作成するためのビジュアル プログラミング環境
ビデオゲーム
- Babylon.jsには、シェーダー、手続き型テクスチャ、パーティクルシステム、ポストプロセスエフェクトを構築するために使用できるノードマテリアルエディタがあります。[18]
- Blender ゲーム エンジン(グラフィカル ロジック エディター)
- ビルドボックス
- Clickteam Fusion は、Clickteam SARL によって開発されたイベント エディター システムを備えた 2D ゲーム作成ソフトウェアです。元々は Klik n' Play、The Games Factory、Multimedia Fusion 2 として知られていました。
- Construct 2-3 は、Scirra Ltd. が開発した HTML5 ベースの 2D ゲーム エディターです。
- Construct Classicは、Constructの以前のDirectXベースのオープンソースバージョンです。[19] [20]
- CryEngine には、 FlowGraph と呼ばれるノードベースのビジュアル プログラミング言語があります。
- PlayStationで動作するDreamsは、プレイヤーがあらゆる種類のゲームを作成できるようにする広範なビジュアル言語を備えています。
- 任天堂が開発した、Nintendo Switch用の 3D および 2D ゲーム作成ツール、 Game Builder Garage。
- GameMaker Studio には、YoYo Games が開発したドラッグ アンド ドロップ ゲーム作成システムが搭載されています。
- GameSalad は、GameSalad, Inc. が開発したビジュアル ゲーム作成ツールです。
- GDevelop は、Florian Rival (4ian) によって作成されたビジュアル ゲーム作成ツールです。
- Godotゲーム エンジンを使用すると、ノード グラフ ビジュアル プログラミング言語を使用してゲーム スクリプトとグラフィック シェーダーを構築できます。
- Human Resource Machine は、Tomorrow Corporationが開発したビジュアルプログラミングベースのパズルゲームです。
- Kodu は、Microsoft Research が開発した 3D インターフェースを備えたゲームをプログラミングするためのソフトウェアです。
- MakeCode Arcade(Microsoft 社)
- Pixel Game Maker MVは、インターフェースベースの 2D ビデオ ゲーム開発ツールです。
- Rec Room には、 Circuits と呼ばれるノードベースのビジュアル プログラミング言語を使用したゲーム作成システムが含まれています。
- Snowdropにはビジュアル スクリプト システムがあります。
- ビデオゲーム作成ツール、Stencyl 。
- Unity には、 ECS リリース以降、ビジュアル スクリプティング システムが搭載されています。(正式名称は Bolt)
- Unreal Engine 4 には、ブループリントと呼ばれるノードベースのビジュアル プログラミング言語とシェーダーがあります。
最近の多くのビデオゲームでは、ビヘイビア ツリーが使用されています。ビヘイビア ツリーは、原理的には、ノン プレイヤー キャラクターのビヘイビアをモデル化するために設計された一連のシンプルなプログラミング言語です。ビヘイビアはツリーとしてモデル化され、多くの場合、グラフィカル エディターで編集されます。
システム / シミュレーション
- Analytica は、影響図に基づく意思決定モデル用の商用ビジュアル言語です。
- BPEL (ビジネス プロセス実行言語) は、現在、データと Web サービスのオーケストレーション ロジックを作成するために使用されるグラフィカル ユーザー ベースのプログラミング言語です。XML に基づいていますが、コーディングを高速化するためのグラフィカル インターフェイスを備えています。
- DRAKON、グラフィカルアルゴリズム言語
- Flowcodeは組み込みマイクロプロセッサをプログラムするためのグラフィカルプログラミング言語です。
- プログラマブルロジックコントローラで使用される機能ブロック図
- GNU Radio は、ソフトウェア無線と信号処理システムを実装するための信号処理ブロックを提供する開発ツールキットです。
- KNIME(Konstanz Information Miner)は、オープンソースのデータ分析、レポート、統合プラットフォームです。
- LabVIEW は、エンジニアや科学者向けに設計されたグラフィカル言語です。
- ラダーロジックは、プログラマブルロジックコントローラで一般的に使用されるリレーロジックをシミュレートする言語です。
- MeVisLab 、医療画像処理と科学的視覚化のためのクロスプラットフォームアプリケーションフレームワーク
- Microsoft Visual Programming Language は、Microsoft Robotics Studioのコンポーネントであるロボットプログラミング用のデータフロー言語です。
- MindRover、データフロー「配線」言語を組み込んだロボットプログラミングゲーム
- Minibloq 、ロボット工学およびArduino互換ボード向けのビジュアルプログラミング言語
- MST Workshop は、数学的ソリューション、ラピッドプロトタイピング、2次元および3次元グラフィックアプリケーションを作成するためのインタラクティブなビジュアルプログラミング言語です。
- Node-RED : ソフトウェア システム高速開発ツールキット
- NXT-G 、レゴ マインドストーム NXTロボットキット用のビジュアル プログラミング言語
- ビジュアルプログラミング言語とデータフローモデルを使用したOpenDX科学データの視覚化
- OpenWire - Visual Component Library (VCL) コンポーネントとグラフィカル エディターを介してDelphiにビジュアル データフロー プログラミング機能を追加します (同名のバイナリ プロトコルは無関係です)
- Orange -データマイニング、統計データ分析、機械学習のためのオープンソースのビジュアルプログラミングツール
- OutSystems言語は、ビジネス中心のWebアプリケーションのすべてのレイヤーを開発および変更するためのビジュアルモデリング言語です。
- Prograph -データに対して実行されるアクションを表すためにアイコンシンボルを使用するオブジェクト指向プログラミング言語
- Ptolemy プロジェクト- リアルタイム組み込みシステムのモデリングと設計を目的としたプロジェクト。
- 電子回路の信号とノイズの挙動のシミュレーションを設定するためのQucsグラフィカルインターフェース
- Reallusion - iClone、Lua 言語とビジュアル プログラミング デザインを備えた 3D ソフトウェア
- ROBO Pro 、フィッシャーテクニックロボットキット用のビジュアルプログラミング言語
- Scicos数値解析パッケージScicosLab (元々はSciLab )に関連付けられたグラフィカル言語
- シーケンシャルファンクションチャート、プログラマブルロジックコントローラ用のペトリネットのようなプログラミング言語
- Simcenter Amesim、マルチドメイン動的システムのモデリング、シミュレーション、分析のためのグラフィカルプログラミング環境
- Simulink、マルチドメイン動的システムのモデリング、シミュレーション、分析のためのグラフィカルプログラミング環境
- Stateflowは、実行可能な状態遷移図、フローチャート、状態遷移表、真理値表を含むグラフィカル言語です。
- システムダイナミクスモデリングのためのVPL、STELLA
- Softimage ICE は、 3D モデルの作成と変更、パーティクルのシミュレーション、その他のさまざまなタスクの実行に使用されるノードベースのシステムです。
- 統一モデリング言語は、「isA」、「has」などの接続詞(矢印)をアイコンとして表します。リソースはロールになります。
- VEE は、テスト エンジニアリングで使用される自動テスト、測定、高度な分析のための強力なグラフィカル プログラミング環境です。
- VisSimはモデリングおよびシミュレーション言語であり、数学モデルを迅速に作成し、リアルタイムで実行することができます。
オートメーション
- オートメーター
- CiMPLE、ThinkLABs によるロボット工学教育用ビジュアルプログラミング言語
- Flowは、webMethodsプラットフォームで使用されるグラフィカル統合言語です。
- Pipeline Pilot は、科学的なビジュアルおよびデータフロー プログラミング言語であり、Accelrys Enterprise Platformのオーサリング ツールです。
データウェアハウス/ビジネスインテリジェンス
- Ab Initioグラフを作成してETL処理するツール
- Alteryx Designer は、 SQL、R、Python を組み込んだデータ処理および分析ツールです。
- Apache Nifi は、ソフトウェア システム間のデータの流れを自動化するソフトウェア プロジェクトです。
- IBM Cognos Business Intelligence は、 RDBMSデータベースに対して実行するSQLクエリを生成するために使用される、ビジネス インテリジェンスアプリケーションのフロントエンド プログラムの例です。
- ETLツールであるIBM InfoSphere DataStage
- Informatica Powercenterは、データウェアハウスシステムでのデータロードのマッピングをグラフィカルに設計するためのETLツールです。
- Microsoft Access、クエリ設計機能
- Microsoft SQL Server Integration Services (SSIS) は、データ統合およびワークフロー アプリケーション用のプラットフォームです。
- Pentaho Data Integration (PDI)(旧称 Kettle)はオープンソースの ETL ツールです。
その他
- Cube は、2D テキスト インターフェイス「Cube」を介して 3D キューブをエミュレートする esolang です。
- アラン・スティルマンが作成したアイソタイプ視覚トランスレータ、Kwikpoint
- Morphic(ソフトウェア)は、直接操作やプログラム内からグラフィカルオブジェクトの構築と編集を容易にします。Self (プログラミング言語)プログラミング環境全体はMorphicを使用して構築されています。
- 難解な言語であるPietでは、プログラムはピクセルが言語の要素である画像である。
- PWCT、ソフトウェア開発用の無料のオープンソースビジュアルプログラミング言語
- ピグマリオン、人間のコミュニケーションとシステム設計に基づいて1975年にDARPAによって開発された創造的なプログラミング環境
- Shortcuts は、 macOS、iOS、iPadOS、watchOSでマクロを作成するために Apple が開発したビジュアル スクリプト言語です。
- StreamBase Systems、StreamBase EventFlowはストリーミングイベントを処理するためのビジュアルプログラミング言語です。
- WebMLは、複雑なデータ集約型Webアプリケーションを設計するためのビジュアル言語であり、自動的に生成することができます。
- Yahoo! Pipesは、 Webデータを処理するためのビジュアルデータフロープログラミングシステムです[21]
- YAWL、グラフィカルワークフロー言語
遺産
- AppWare はMicroBrew とも呼ばれ、クラシック Mac OSおよびMicrosoft Windows用のアイコンベースのプログラミングです。
- Macromedia Authorware - フローチャートベースのプログラミング言語
- HelixとDouble Helixは、1983年に開発されたApple Macintoshプラットフォーム向けの先駆的なデータベース管理システムです。
- Illumination Software Creator は、デスクトップおよびモバイル ソフトウェアを視覚的に作成するための言語と IDE です。
- シングラボ
視覚スタイル
- DRAKON (Dragon) は、ソビエト/ロシアの Buran (Snowstorm) 軌道宇宙船の自動飛行と着陸のためのオンボードのハードリアルタイムソフトウェアシステムを開発するために設計された、 SDLとAADLの影響を受けたビジュアル2D プログラミング言語です。
- 実行可能 UML は、UML のサブセットの実行可能セマンティクスを定義するユニバーサル モデリング言語仕様のプロファイルです。
- フローチャート
- サブテキスト
参照
- 引数マップ
- 表記法の認知的側面- 視覚言語と非視覚言語の表記法の評価
- コンセプトマップ
- データフロープログラミング
- ドイツ語限界、視覚的表記における言語プリミティブの情報密度に関する格言
- ドメイン固有のモデリング
- ドラッグアンドドロップ
- フローベースプログラミング
- グラフ描画
- ローコード開発プラットフォーム
- ノーコード開発プラットフォーム
- プログラミングゲーム
- 統一モデリング言語
- 視覚言語
- ビジュアルモデリング
- 視覚的思考
参考文献
- ^ Bragg, SD; Driskill, CG (1994). 「ダイアグラムグラフィカルプログラミング言語と DoD-STD-2167A」。AUTOTESTCON '94 の議事録。 pp. 211–220。doi :10.1109/AUTEST.1994.381508。ISBN 0-7803-1910-9. S2CID 62509261。
- ^ Kuhail, MA; Farooq, S.; Hammad, R.; Bahja, M. (2021). 「エンドユーザー開発者向けのビジュアルプログラミングアプローチの特徴づけ: 体系的なレビュー」. IEEE Access . 9 : 14181–14202. Bibcode :2021IEEEA...914181K. doi : 10.1109/ACCESS.2021.3051043 .
- ^ Jost, Beate; Ketterl, Markus; Budde, Reinhard; Leimbach, Thorsten (2014). 「教育用ロボットのグラフィカルプログラミング環境: Open Roberta - Yet Another One?」2014 IEEE International Symposium on Multimedia . pp. 381–386. doi :10.1109/ISM.2014.24. ISBN 978-1-4799-4311-1. S2CID 8272806。
- ^ Repenning, Alexander (2017). 「構文を超えて: AgentSheets でのブロックプログラミング 20 年間の教訓」. Journal of Visual Languages and Sentient Systems . 3 : 68–91. doi : 10.18293/vlss2017-010 .
- ^ Johnston, WM; Hanna, JRP; Millar, RJ (2004). 「データフロープログラミング言語の進歩」(PDF) . ACM Computing Surveys . 36 (1): 1–34. doi :10.1145/1013208.1013209. S2CID 5257722 . 2011-02-16に取得。
- ^ Rekers, J.; Schürr, A. (1997). 「階層化グラフ文法によるビジュアル言語の定義と解析」Journal of Visual Languages & Computing . 8 (1): 27–55. doi :10.1006/jvlc.1996.0027. S2CID 40088910.
- ^ Zhang, D.-Q. (2001). 「ビジュアル言語の仕様のためのコンテキスト依存グラフ文法形式主義」. The Computer Journal . 44 (3): 186–200. doi :10.1093/comjnl/44.3.186. hdl : 10397/17637 . S2CID 14139133.
- ^ Asenov, D. および Muller, P.、2014 年 7 月。Envision: スムーズなインタラクションを実現する高速で柔軟なビジュアル コード エディター (概要)。2014 IEEE ビジュアル言語およびヒューマン セントリック コンピューティングに関するシンポジウム (VL/HCC) (pp. 9-12)。IEEE。
- ^ 「エンビジョン」.
- ^ Fayed, MS, Al-Qurishi, M., Alamri, A., Hossain, MA および Al-Daraiseh, AA、2020。「PWCT: パーベイシブアプリケーション開発をサポートする新しい汎用ビジュアルプログラミング言語」。CCF Transactions on Pervasive Computing and Interaction、2、pp.164-177。
- ^ Ayouni, M., 2020.「リングプログラミング入門」(第978巻第1号、pp.4842-5832)。Apress。
- ^ http://www.computermusicjournal.org/reviews/31-* * * 2/regan-bidule.html
- ^ 「シェーダーエディター — Blender マニュアル」。docs.blender.org 。 2021年1月22日閲覧。
- ^ 「合成 — Blender マニュアル」。docs.blender.org 。2021年 1 月 22 日閲覧。
- ^ 「テクスチャ編集 — Blender マニュアル」. docs.blender.org . 2021 年 1 月 22 日閲覧。
- ^ 「リファレンス/リリースノート/2.92/ジオメトリノード - Blender開発者Wiki」。wiki.blender.org 。2021年1月22日閲覧。
- ^ 「ジオメトリノード — Blender マニュアル」. docs.blender.org . 2021年10月2日閲覧。
- ^ 「Babylon.js ノードマテリアルエディタ」nme.babylonjs.com . 2021年1月22日閲覧。
- ^ Construct Classic ホームページ
- ^ SourceForge の Construct Classic ページ
- ^ 「Yahoo! パイプ」。2015年1月3日時点のオリジナルよりアーカイブ。2015年1月3日閲覧。
- Free On-line Dictionary of Computingの資料に基づき、許可を得て使用しています。
外部リンク
- Curlieのビジュアルプログラミング言語
参照
- {{コンピュータ言語}}
- {{プログラミング言語}}
- {{プログラミングパラダイム navbox }}
