
系統概述

上圖呈現的是一個圖形程式語言的基本模樣。
雖然說圖形程式語言是使用圖形的組合作為程式運作的依據,但是如果要細說圖形程式如何運作,則需要在一開始定義一些觀念。
對於圖形程式語言,已經有很多學術研究,甚至有業界產品,目前學界對於圖形語言也有新的研究方向,但是我在這裡並不是朝學界研究的方向走,而是參考了業界的產品,著手設計自己的圖形語言。
一般的圖形語言,樣子像是流程圖,但是比正規流程圖多了很多方塊,分別代表不同的意義。而目前的電腦並沒有人工智慧,因此現在如果丟給電腦一幅流程 圖,電腦並不會自動執行。流程圖,是使用者為了要讓電腦依照自己的意思動作,所以用圖畫來代表事情處理的順序,是用來輔助程式設計者程式的撰寫。圖形對使 用者來說是直覺的,也就是說圖形可以直覺代表使用者解決問題的思維模式,如果可以讓這樣的一幅圖形能夠讓電腦直接理解並執行它,那麼要讓電腦依照使用者意 志運行,就不用再透過程式設計師了。
文字式的程式語言,可以說是電腦的語言,使用者要讓電腦隨著自己的意志運行,就必須先學會電腦的語言,然後再把自己的意志翻譯成電腦的語言,最後交由電腦執行。使用者意念與電腦執行結果之間有著很大的隔閡。
圖形語言可以二分為制式與非制式。所謂非制式是指圖形的構成並無規則,但以能夠被使用者理解為原則,例如為了指示某人的家所畫出的地圖。非制式的圖形有以人類通識為原則的基本圖形,但是不需要完全相同也可以被接受,但是,現今地球上能夠執行圖中所表達之事的腦,僅有人腦。
為了讓電腦也能夠對圖形加以瞭解並且執行,唯有使用制式圖形表達的方法最為可行。而且這些能夠被電腦理解的圖形元件,為了維護圖形元件的唯一性,必 須由電腦提供給使用者選擇與運用。如果這些制式圖形元件也與人類表達意念的通識圖形接近或是一樣,那麼也可以拉近使用者意念與電腦理解能力之間的隔閡。
我選擇了偷懶的方法。
我的圖形程式語言主要由『編輯器』『執行器』組成。編輯器負責讓使用者編輯圖形程式語言,是程式與使用者之間的溝通管道,也同時將使用者圖形程式轉換成內部的資料結構。執行器負責將編輯器產生的資料結構解譯並且執行,最後產生結果。
總的來說,我的圖形程式語言就是一堆資料結構的連接,以及讓欲處理的資料在資料結構中流動。
在使用者看得到的部分,稱作可視部分,由『元件』與『線段』組成。元件負責執行,線段負責傳遞資料。不管是元件或是線段都在系統內有其對應的資料結構,以便讓執行器去執行。而編輯器就要維護可視部分與內部結構的連接完整。
技術說明
<編輯器部分>
負責下列功能:
- 與使用者互動
- 編輯可視部分
- 操作可視部分元件屬性
- 維護可視部分與內部資料結構的完整性。
<執行器部分>
負責下列功能:
- 流通內部資料結構所承載的資料
- 執行元件所代表功能
- 產生結果
沒有留言:
張貼留言