2011年12月15日 星期四

一套會講中文的程式語言

一套會講中文的程式語言


曾慶潭 Ching-Tang Tseng
ilikeforth@gmail.com
Hamilton, New Zealand
16 December 2011


(獻給全體中國視障同胞)

我就拿文章的標題上網搜尋資料,確定截至目前為止,沒有人設計出這樣的程式語言系統。 Forth 是天生能夠使用中文文字的程式語言,沒什麼好強調的。

兩年前,我令 Forth 系統『會講英文』之後,雖然可令 Forth 系統的性能,大為領先其他程式語言,也沒什麼好強調的,因為,那是講英文之世界裡的問題,與中國人無關。

今天,我令 Forth 系統『會講中文』,則不同凡響。此前,電腦軟、硬體的性能,未發展到足夠配合的程度之前,也難以設計。現在,能否設計出這樣的系統?只是存乎一心而已,我只寫了不到半頁的程式,就以 Win32Forth V6.14 系統實現了這樣的設計。總共只設計了兩個指令,『發音』與『朗誦』,就足夠用來讓這個程式語言『講中文』。

八個精簡範例應用程式,列示如下:

: test1
龍 發音 飛 發音 鳳 發音 舞 發音 ;
: test2
s" 龍飛鳳舞,龍吟虎嘯。" 朗誦 ;
: test3
s" 勸君莫惜金縷衣,勸君惜取卲年時。" 朗誦
s" 花開堪折直須折,莫待無花空折枝。" 朗誦 ;
: test4
s" 這是宜套會講中文的程式語言。" 朗誦
s" 所有相關設計,敬獻給全體中國視障同胞,非份者,請勿取用。" 朗誦 ;
: test5
s" 爽兄,我已實現了能夠完全自動語音輸出中文的程式設計,從現在起。" 朗誦
s" 隨便打中文,系統就能自動輸出了,不再需要人工作業。" 朗誦
s" 辛苦的發展有了基本成果,也沒有辜負戚老的苦心。" 朗誦
s" 我將繼續發展把愛心獻給視障同胞的工作,我要讓視障同胞能用它來聽世界名住。" 朗誦
s" 用它來寫作。目前的成果僅送給您與戚老,是為了報答您的協助與戚老的貢獻。" 朗誦
s" 但拒絕把這個系統公開,或送給不是視障的人,我說過我要防止別人藉機斂財。" 朗誦
s" 系統的品質雖然不是最好,但面對一般中文而言,使用起來已無問題。" 朗誦
s" 以後有更好的發音辦法後,我就也能實現品質更好的設計。" 朗誦 ;
: test6
s" 花間亦壺酒,獨酌無相親,舉杯邀明月,對影成三人。" 朗誦
s" 月既不解飲,影徒隨我身,暫伴月將影,形樂需及春。" 朗誦
s" 我歌月徘徊,我舞影零亂,醒時同交歡,最後各分散。" 朗誦
s" 永結無情遊,相期邈雲漢。" 朗誦 ;
: test7
s" 生命的意義在創造宇宙繼起的生命" 朗誦
s" 生活的目地在增進人類全體的生活" 朗誦 ;
: test8
s" 實行三民主義統一中國" 朗誦 ;

執行從 test1 到 test8 的這幾個指令,就都能讓這個系統立即、自動、唸出程式內所安排的指定中文。

搞非 Forth 程式語言的程式設計者,您見到這樣的表白方式,請不要嫉妒到想從上述的雞蛋裡挑骨頭,有幾個字不是您才能發現的錯誤,是故意的安排,是為視障同胞刻意的安排,不是為您而安排。而且,短期內我就能自行解決中文『破音字』的發音問題,不用您煩心,假設文中夾雜英文、見不到的格式碼、見得到的圖形資料,都不用您煩心,我有本領解決。該您煩心的事情,是您若還設計不出這樣的系統,應該趕緊跟進,羨慕有理,嫉妒無用。

有朋友介紹我去參觀能唸中文文字的個人網頁,我看過了,嗤之以鼻。因其語音輸出能力,也還停留在逐字輸出的水準上,它不是程式語言,只是一個簡陋的視窗應用軟體,您想用,就只能用它以單字方式唸出中文,不能做其他任何事情,您自己能唸出的中文,都比這種產品高明太多了,何須用它?還有,買到的這種東西,根本不給音源,您要另行發展中文語音輸出於其他應用時,依然是得自行設法,買的結果,就是白花了錢。

這篇網文就來仔細談一談『會講中文之程式語言』的發展。

一般而言,中華民國的國民,基礎中文教育,主要被安排在高中國文課程的教育之中,唸完高中,大學是專業分科教育,國文教育便不再是要求重點。但良好的高中國文基礎,足夠讓您自行繼續充實這方面的知識,可以讓您自己終身全面使用中文。我接受過中華民國政府提供過的完整基礎教育,能使用中文。

我從武陵中學高中畢業,從這個學校畢業的學生,程度如何?要由社會評鑑,我說了不算。但是,我知道那裡有很好的國文老師,當年,曾有老師教了幾年國文,竟然被聘為中國文化大學的講師,只好離職去教大學了。

我38歲就被國軍淘汰,只好從公職退休了,打算另謀高就時,曾經試著應徵台灣玻璃關係企業的子公司:固相公司的廠長職務,該公司老板澈底調查我是否真的從『武陵高中』畢業?經查屬實後,積極爭取我協助該公司完成從汐止搬遷到南崗工業區的工作。他與他的特別助理,對我的大學學歷及核子工程專長沒有興趣,卻問我高中時代的校長是誰?我立刻回答說是馮堯春先生與宋金印先生,兩人同時眼睛一亮,當時,我對這種反應,確實是不明就裡,現在則引以為榮。我離開公職後,曾為幾家私營企業公司服務過,自覺,為任何一種企業幹總經理,我都能幹,包括我自己開的公司,也能幹,我只幹過總經理,沒幹過不是總經理的工作。

我終身記得我的國文老師吳祥熊老師,教我如何讀古文,一輩子都記得『上文不懂看下文』、『音同則意通』的讀書技巧。他要求我們寫文章時,不要以濫用古文來自鳴得意,文章要寫得人人都能看懂、讀了通順才是好文。可用的中文好字這麼多,專寫怪字,並不代表高尚,寫正確了才重要。

他曾介紹我們英翻中講求信、達、雅技巧的重點,也稱讚過商務印書館出版的一本世界名著:『飄』(Gone with the wind)小說中,譯者將人名全譯成標準三個字的高明譯法,如白瑞德、郝思嘉,衛希禮……等。

他說詩、詞、賦都可以自己看書後學寫,但學來寫酸溜溜的東西就沒有意義,至少代表它沒有傳頌價值。寫文章要避免掺入武俠小說式的江湖氣,那會貶低自己,反不如不要為文。文章中講求道德,能夠代表為了自己,講求愛心,就能代表為了別人。

國文老師他不只講解國學常識、教我們讀書技巧,還教書中、文中的精神,經常要求我們多多理解紙底下的東西,以及作人處事的道理,我終身受益,感激不盡。

現在的國文老師,教不教這些教國文時應該附帶卻非常重要的東西?或者是只教如何去中國化?積極培養社會小忿青。碰到這種老師,您就可以終身嗤之以鼻,也代表了您真的非常不幸,國家跟著不幸。

上述這些國文教育資歷的簡介,能夠讓我進行中文語音輸出發展時,不會走得太離譜。我所發展完成的系統內容,澈底採用中華民國固有的正體中文資源,完全刻意排斥大陸的拼音或文字顯示格式。

我當然能協助大陸完成同樣的設計,但那絕不是我該做的事情,尤其是我根本不恥於使用英文字母來拼中國文字的音,我是道道地地的中國人,是一個比大陸同胞還要中國的中國人。

今年九月十七日,我們在中原大學開 Forth 月會,在蔡育秀博士的號召下,來了不少人與會。我結束演講後,已從海洋大學退休許久的戚桐欣老前輩,親自走上前來,要求買一本我寫的『ABC Forth 數學計算系統使用說明』以示支持我的發展。

此前,我沒跟戚老講過話,只知他與朱邦復、丁陳漢蓀老師都熟,我立刻回答戚老:『您都八十幾歲了,別買我的書了,您要,我就送您一本,看不看都沒關係,留著晚輩的拙著當紀念。我賣的書都不能賺到錢,但不買的人,就難以使用我所設計的系統,或者是難以與我交流技術。』

戚老邀請我去基隆他家,準備將他長期搞出來的中文發展資料,全盤轉贈給我。不幸,半個月的重感冒,耗去了我能留台辦事的時間,離台前,因為多次的應酬,飲食失控,痛風發作,若再去找戚老,肯定必須再度大吃一場,那就完了。因此,我爽了約,只能電話答謝後離台返紐。

我知道戚老多年來的中文研究心血結晶,傳贈給過不少人,但不太有人理會,或繼續進行延伸性的發展。戚老過去也未見過我有什麼本事?能幹甚麼事情?這次聽我講過一場怪裡怪氣的演講,特來關心一下。

我在『獨特的語言經驗』文末說過,我想把 MIDI 硬體拿來當講人話的裝備使用,仁愛一下,為視障同胞發展一些東西。我試用了戚老的資源,感覺可以派得上用場,但要耗些時間與勞力修改後才能發揮作用。因此,發動了一次『Forth 活動』,試做『語音輸出百家姓與千字文』,希望能集眾人之力完成此事。

活動初期,對參與活動者是否真誠的參與?缺乏感覺,於是出了習題強迫參與者答覆,以便了解狀況,結果發現了嚴重問題。如果活動了一個多月,參與者只想白拿傳給他的技術資料,連拼幾個百家姓來找出對應音檔的簡單分擔工作都不肯貢獻,或者敷衍了事,甚至於連安裝起 Win32Forth V6.14 系統的最基本要求都不肯做,而成天去網頁上『打屁』抱怨,任何人都能明白這是一種什麼狀況?絕對代表了白搞了這樣的活動,那就應該毅然決然的中止活動,我這裡絕不提供白吃的午餐。

以後,我也搞清楚了,別再舉辦這種活動,後續發展只宜自己搞。大多數的參與活動者,都很合作的完成了百家姓的程式編寫工作,但對他們的日常生活,產生了不少影響。因此,千字文的程式設計,改由我個人獨自完成。

發展了兩個半月,遭遇過不知多少次的失敗,挖空了心思,想盡辦法解決問題,連我太太都加入了提供意見的行列,我們每天散步時,都討論為視障同胞設計中文語音輸出程式語言的問題。

大師兄陳爽成為這次活動的最後支撐者,有許多大型的苦工,都是由他親手完成的,與他連絡卻無法及時得到答覆時,我開始動家人的腦筋,請小女兒小真幫忙,用她寫論文時慣用的軟體工具,幫忙我編製那種一萬多筆資料的大型檔案。女婿得知了,乾脆來為我安裝適合解決這類問題的現代軟體,為了達到目的,幾乎是全家總動員,所有材料彙整交到我手裡時,難免還有一些問題,我就得進行零星測試後修改。我不是一個肯輕易低頭的人,晚上可以少睡一點,就是要把工作完成,正常的飲食與健康的生活,就交由我太太強制干涉來維持。

昨晚趕出了結果,讓程式只剩半頁,雛型立刻傳請陳爽幫忙驗證,代表以後靠網路傳輸後依然能用,在紐西蘭,我無法隨時說走就走,趕回台灣,只能靠網路傳送。後續當然還有許多發展工作得做,系統功能不是僅只這樣而已。

能講中文的程式語言有甚麼用?對大多數人而言,根本沒用。那麼,發展這種系統的過程中,就會令發展者經常感到相當痛苦。我是為視障同胞而發展,抱持著這種心態,才能安慰自己,忍受痛苦繼續發展。

發展數學計算系統時,我為自己找到發展的目標與理由,才能發展成功。同樣的,發展中文語音輸出程式語言時,我也需要健全且有意義的理由來驅動發展,那就是為視障同胞服務,我說過我想設計出『啟明 Forth』,提供給視障同胞使用,這就是理由。

學習語言的過程是聽、說、讀、寫,視障者不能讀,怎麼辦?我代勞。

我唸高中的時候,見到聯合報上刊登廣告,徵求義工,為視障小幼苗錄製朗誦世界名著的錄音帶,心中就深受感動,但那時,我連買張車票去當義工的錢都沒有,能幹什麼?因此,一輩子記得這件事情,希望有一天能夠為他們澈底解決讀、寫的問題。

我們的社會,大多數人都不理會視障同胞的事情,讓他們大都躲在暗處,靠色情按摩維生。我也不斷的聽說,管視障同胞事務的某些人,藉機向政府、社會要錢,是既得利益者,不容外人涉入其事、以免被斷了財源。其他的惡劣行徑,就別在這裡繼續寫下去了。

我只是個小人物,管不了這麼多骯髒的社會現象,但懂得一點 Forth ,自知能設計得出視障同胞可以終身使用的工具來。昨晚,我完成的設計,就能用來發展自動朗誦世界名著的程式。

現在市面上已經有人販賣軟體,讓正常人操作電腦,黏貼一段中文短文,讓電腦讀出來,但除了讀出來,不能做其他任何事情。

我設計的是程式語言,它能叫出一本世界名著,自動朗誦出來,還能操控電腦,同時進行其他事情,包括設計程式,以便解決視障同胞才有需求的操控設計,這是一套中、英文都會講的程式語言。

視障同胞的電腦寫作工具,也能根據這樣的程式語言設計出來,自動發出中文語音,可以作為響應操作後的結果,既然是 Forth 程式語言,當然能夠用它設計出編輯軟體,視障同胞就能用來寫作,寫出他們的心聲,當個偉大的作家,像海倫凱樂(Helen Keller)那樣,不必只靠按摩維生。

啟明學校裡的視障小幼苗,可以使用這樣的系統來學習與寫作業,解決讀、寫困難的問題。也能用來寫信與我聯繫,告訴我,還需要什麼操作功能?我能聽到小幼苗的心聲,也能傳達我的鼓勵。寂寞時,也能打幾句話來嘉勉自己。

我發展系統所採用的方法,是車庫軟體式的發展技術,所以品質還不太好,是戚老提供的免費資源,陳爽提供的編輯資料,沒有任何人提供經費。若公開設計內容,肯定會斷掉許多人的既得利益,或者是被拿去藉機斂財。這是一套會得罪人的設計,但不必強調要讓視障同胞知道此事,反而應該要讓既得利益者明確的知道此事。網文留在這裡,全世界每天都有人來觀賞,其意義是告訴大家,不要再利用視障同胞掘利,要重視能讓他們正常生活的基本人權問題。

只要取得更好的音源,我就有本事進行同樣的設計,這篇網文公佈這個第一套系統的基本功能,形同正式的宣告:一套『會講中文的程式語言』已經誕生。

文末,我講一個最近才親眼目睹,令人難過的故事。

紐西蘭是一個注重社會福利的國家,所有視障國民,可以獲得政府無條件的妥善照顧,包括終身可以獲得完成訓練的拉不拉多導盲犬,協助他們外出活動。大眾也都同情視障同胞,主動對他們表示友善,並給予應有的禮讓。所以,我們居住的區域,經常能夠見到一位瘦弱的視障女士,牽著導盲犬上街來購物,我們散步時,偶爾會碰面,也互相打招呼,我們會主動先行繞到不牽狗的這一邊行走。

有一天,我們散步時,又與這位視障女士碰面了,她笑臉回應我們的問候。突然,我們的身後發出了另外一隻狗的狂吠,是另外一位溜狗人士,帶著一隻大狗溜過此地,我毫不猶豫的以身體擋在兩隻狗間,避免發生事情,卻不敢向後挑釁那隻想要攻擊導盲犬的沒教養狗,緊張的觀察視障女士的表情,她面露恐怖之色,只能以兩手抓緊了狗的頸項鍊,強壓著導盲犬坐下。我太太則示意溜狗人走別處的路,趕快離開這裡。我也第一次看到紐西蘭人,因為憤怒而踢他自己養的那隻沒教養的狗,事後,大家都捏了一把冷汗。

若想檢討避免讓這種事件再度發生,那就是溜狗人士根本不該溜狗到此,或者是遠遠見到導盲犬時,溜狗者就該主動改道。那天,我沒被狗咬到,算我幸運。

回顧台灣,許多人都養狗,並且整天縱放於外,導盲犬能用嗎?

很多人發展與設計語音處理軟體,都想賺錢,視障同胞能用嗎?


附註 : 20241026 重新整理後貼出。

2011年12月1日 星期四

人助自助者

人助自助者


曾慶潭 Ching-Tang Tseng
ilikeforth@gmail.com
Hamilton, New Zealand
2 December 2011


嚴格說來,這一個月我根本沒有時間打網文,每天也只有零星的時間上網或發展程式,休息時就感到肌肉酸痛,想解程式問題時,也只能產生斷斷續續的思考。

因為我要自己修車,拆換兩輛車子的避震器,屬於車底盤重型危險工作。另外還得互換兩輛車子駕駛座旁,車門的兩個活葉支撐配件,門很重,也不能全拆下來,工作不好做。

自用車子遇到這種問題,換成一般大眾,只好花錢請修車廠代勞了。我則有能力完全自行修理後,讓車子通過紐西蘭公定的車輛制式定期檢查(WOF, Warrant Of Fitness)。為什麼一次要做兩輛車子?因為我要憑本事節省到完全不用花錢的程度修好車子,取用崔保忠學長贈送的廢棄車子料件,轉用到自己的車子上,做完工作後,必須讓廢棄車子保持仍然堪用狀態。

打這篇文章時,已經完成了避震器的拆換,車門活葉稍後再做,紐西蘭的制度是驗車未能通過時,車主保有一個月的維修期,足夠寬鬆,因此,我能選擇晴天、不忙時才工作。

自己修車就跟現今自己搞許多新的 Forth 系統一樣,沒書可讀,一切只能看著辦。您若只想花錢省事,那就不用談這些情況,如果不肯低頭、不肯認命,怎麼辦?確實難辦。不幸,現今整個世界,人生確實就得經常面對這些問題,由不得您。

但是,解決問題的辦法,並不是一切無跡可尋,要有耕耘才會有收穫,天助自助者,人也只助自助者。光是怨歎,不會有結果,現在就讀一讀這篇網文,也許能夠獲得一點啟示、一點助益,這篇文章就談一談這方面的事情。

現代公開的大型 Forth 系統,確實都大到創作者也難以全面寫出整個系統的使用說明文件。有具體文件的系統當然很貴,使用者請自己選用,完全合情合理。那麼,這種情況是不是等同於宣告了 Forth 推廣工作的死期?完全不是的,否則,我怎麼可能自己修車?兩者情況是相類似的。

記憶體容量很大、也不貴,所以現今的 Forth 系統,完全透通的源程式,可以大方使用全名而不用縮寫字當指令名稱,這一點與古時候的 Forth 系統資源澈底不同,系統無書可讀的問題幾乎降低了一半。

好系統中的源程式,指令說明也都寫得清清楚楚,另外為指令寫成的書,遠離了真實的程式,反而表達得更不清楚了。

好的創作者,通常伴隨系統附贈了精彩的範例應用程式,簡明扼要的表達了整個系統的使用方法,許多只能會意不可言傳的東西,文字書本都難以表達,不這樣做,還真不知道要如何傳承創作技術呢?

其實,上述的不正常現象,對推廣 Forth 所產生的打擊並不嚴重,問題的嚴重性,起自於整個社會的學習心態。忠言都是逆耳的,這樣的網文看起來就令人心生不滿,因為本文在批評學習者的心態。

很多人不讀書卻說沒書可讀,不用 Forth 卻說 Forth 不好用,自己都不用的 Forth ,卻介紹給大家使用。我講了實話,聽起來卻非常逆耳,是吧?

如果只想讀一本書就能搞通 Forth ,有!這本書就是 Forth, Inc 出版發行,由薄利歐(Leo Brodie)先生所著的『Starting FORTH』。看不懂英文,也有台灣鄒靖寧老師翻譯,儒林圖書公司出版的『FORTH入門』可讀。中國大陸也有黃勝先生所譯,海潮出版社印行的另一本『FORTH入門』可讀。買不到書,設法去借,或乾脆網上下載全英文的資料,逐字逐句的啃到底,我就不相信您還搞不懂 Forth !怎麼會沒書,是您不肯讀書!這些書都是紙本實體書,不是雲端虛擬書,書中若有不合時宜的部份,略去無傷大雅,不影響澈底了解 Forth 。

還有,其他書我就不覺得有建議給大家的絕對必要性了,包括薄利歐先生後來另寫的一本『THINKING FORTH』亦然。面對現今大家都只看那『幾把刀』的心態,我就迎合您們,簡單告訴您我的經驗,可以不必浪費時間去讀任何其他 Forth 相關書籍了。如果嫌我講得太苛刻了,那麼,丁陳老師、金城老師的書也都還存在現今的世界上,為什麼不去找來讀通它們?怎麼沒書???

其他的書或網上的譯文,就寫得像普通的使用手冊,浪費時間去讀,就真的划不來。硬要搞一本手冊,莊哲維譯成的全套ANS FORTH,可以網上免費下載,是他的熱心貢獻,我都讀了,您為什麼不仔細的讀?任何人都不該再公開講沒有FORTH書可讀了!!!

為了避嫌,我自己寫過的書或文章,此處一本、一篇都不介紹,可以吧?想全盤了解系統或結構, eForth 的源程式散佈得到處都是,找丁陳老師買一本小冊子仔細啃,啃完還搞不清楚 Forth 基本精神,從此之後終身別再搞 Forth 。

有經驗的老手,推介 Win32Forth 系統,作為台灣推廣標準,主要的老手,就是原先易符公司裡的成員,公佈為推廣標準當初,與我完全無關,我只從他們手中複製了初期的系統,但我尊敬老手的決定。此系統健全好用,兩本免費的書,由諾裘利(Julian V. Noble)先生與貝知默(J. L Bezemer)先生著作,幾乎做到了隨系統附贈的程度了。有人不讀、不學、不用,對群眾沒有影響,也就罷了。若來批評這個系統的不是!卻介紹一個連自己也不用的系統給大眾,那就心態可議了。已所不欲,快施與人,是『幾把刀』教您這樣做?那就讓大家看看,您將來還想往身上自插幾把刀?

老手未必是高手,但老手努力用過系統之後,提出來的嚴重問題,就是真正的嚴重問題,老手希望反對看法的人努力克服問題造福人群,但是直到今天為止,那些嚴重問題沒有人解決過。

您自己也無能解決,又不肯聽逆耳忠言,卻繼續誤導群眾,讓大家浪費時間陪您鬼混您想混的那個系統,我會跳出來講話。更有甚者,這幾天還看到認為自己也是 Forth 老手者,只顧表現自己也設計了自己的 Forth 系統,就來反對 Win32Forth ,請問您設計的系統對社會進行過多少貢獻?能比 Win32Forth 系統好?努力貢獻過再來介紹吧,不想貢獻也沒關係,您請自用,既然自認為是老手了,就更不應該對推廣標準進行破壞,否則,我直說,您是別有心機。

我的網文內早已說過那種系統不能用的原因,您不讀也不學,卻引用一大堆程式語言來狡辯,語言『懂』得多了代表甚麼?不代表甚麼,只顯得有點輕浮不穩,貢獻幾百個程式教育社會才有意義,列出幾百種程式語言的名稱沒有意義。我則絕不重寫寫過的東西,為此,我反不覺得您還是FORTH老手,卻認為您只愛現別種程式語言。

您自己或自願附和者享受自己的系統,我絕無異議,要不然您就耗費上萬個小時,寫它幾百個程式,證明您想介紹的系統不是老手講的那樣:『具有嚴重問題,將來會搞不下去』,我就慎重其事的跟你學。網頁上推廣自己設計的系統,推不下去者,都因吹噓所致,使用 Win32Forth 系統作為推廣標準,就沒有這些問題,多少年來,它恆只忍受大家的攻擊,包括現在台灣的不用之客。

有人不願合群共襄盛舉,卻老批評 Forth 系統都只能獨搞,這樣的批評又誤導群眾了。 Win32Forth 系統的程式貢獻者何止幾十人?包括我們台灣的白日東醫師在內,總數可能超過百人,國家遍及全世界,年代超過十八年,截至目前為止,那一個系統能像它一樣?我用 Forth 三十幾年,從未見過。就算發現後來的版本,越來越不像話,甚至於有好幾個版本,一直都存在著嚴重的問題,始終都不修改,根本不好用,最新推出的版本也全不可靠,要跳號選擇版本才能使用,系統已經演變得這麼糟糕了,我卻仍然忍受問題,繼續共襄盛舉。超過百人貢獻出來的系統,每個程式我都看得下去,能稱這個系統為獨搞嗎?我看批評者才真孤獨,來合群吧,合群才得歡心,孤獨當然鬱卒。

截至目前為止,無論什麼層次的人,從十歲到八十歲(我已試推廣過),無論什麼時候,只要您真心誠意的想學 Forth ,就請直接開始接觸 Win32Forth 系統,它完全不要錢,資源多到您看不完,我曾使用它超過上萬小時,寫成過上百個程式,這個網頁內曾經刊載過的程式,幾乎都是為 Win32Forth 系統而寫。此前,任何其他 Forth 系統,都不值得我這樣子下功夫無條件奉獻,那些基本作法上就出問題的殘障系統(Disable FORTH system),我終身都不想再碰。如果您公開談論批評 Forth 幾個月,卻連 Win32Forth 系統都裝不起來,省省吧,免得到了後來,大家都發現您根本不貢獻,努力貢獻過的人,出一個小問題,要求展示您自己設計之系統的真程式,就能令您難堪。

任何程式語言都可以搞,但別說 Forth 的不是。任何 Forth 系統也都可以搞,但不要來破壞 Forth 社群可以用來溝通的推廣標準,我能證明在 64 位元系統上跑 Win32Forth 系統還好用得很。有問題,我也都能自行修正,第一套裝上 64 位元 W7 作業系統的 Win32Forth ,完全是由我自己修改安裝而成,並立即公開由世人自行比對出修正之處, V6.14.00 以後的版本就作了與我完全一樣的修正。新時代會自然產生適合用來溝通的新標準,值得使用的新標準還沒有出現,以後會有,現在倒是可以確定,不會是您設計的那種殘障系統,您想獨挑大樑自己推廣,那就很好,我們早就願意退休了,過去這幾年 Forth 的沒落時期,您為什麼不做?要不然,我設計系統時,早就會從您想搞的系統開始,不會是 Win32Forth 系統。在我之前的人,辛苦推廣 Win32Forth 系統時,您躲在那裡?這是不是台灣目前普遍的心態?

習慣使用非 Forth 程式語言的人,容易以它種語言的方式,誤解 Forth 的基本觀念。我發動一次 Forth 活動,從大家來往的過程中就能體會出來,活動主旨要介紹 Win32Forth 系統的使用方法,目標只唸百家姓,大部份人都沒興趣參與,因為百家姓有什麼好唸的?搞編譯式程式語言者,確實可以這樣想,搞 Forth 程式語言尤其是 Win32Forth 就不能這樣想。

別種程式語言設計完唸百家姓的程式後,產品真的就只能唸百家姓,不作它想。 Forth 系統作完了,唸百家姓的功能成為系統中的一個增用指令,後面可發揮的空間無限,彼此狀況完全不同。您不想參與,就失去與我交換使用 Forth 系統經驗的機會,我也失去向您學習的機會。活動不容易舉辦,我則學到了不少東西,很值得。我帶頭活動後,參與者能得到什麼東西,那得捫心自問,人助自助者,人不助不自助者。

現代 Forth 的使用方法,與傳統 Forth 的使用方法也有很大的不同,參與活動者見過我提出來的一些新東西,也還有很多新東西沒被提出來, Forth 外界的所有資源,現代 Forth 都能叫來使用,就算您不愛用 Win32Forth 系統,也別再幼稚到老愛提及『無法利用外界大量資源』的這一說詞,來批評 Forth 的不是,老手您自己看得懂名家設計的核心程式,十幾年前『操控一下 Forth 系統的 UP 就達到目的了』。若您自己喜歡設計系統,卻沒這種本領,您的 Forth 觀念豈不是落伍了十幾年?沒關係,不會就該好好學一學。文章看到這裡,趕緊去追蹤一下我講的指令,全部只用五、六個組合語言指令,就能完成設計,學會了,就在心中為這個系統道歉,以後別再光靠批評 Win32Forth 系統的不是丑表自己。

我們使用 Forth 都三十幾年了,想學 Forth 的新手,無論您怎麼要求,絕不能要求老手老是只能跟您談基本指令,實體書早就擺在那裡,人只助自助者,人除了睡覺能增肥外,人間沒有可以不勞而獲的東西。如果您真想學通 Forth ,到青海省、北大荒也能學得通,心意不誠,拜甚麼師也沒有用。


附註 : 20241026 重新整理後貼出。