TPRC 2023 與多倫多之旅
作者:gugod 發佈於: ,更新於: #tprc2023 #tprc #yapc #perlTPRC 2023 Toronto 的錄影已陸續釋出,可於 youtube 上觀看: https://www.youtube.com/playlist?list=PLA9_Hq3zhoFwrDiojWd_lFUaOHlsUUEJa
TPRC -- The Perl and Raku Conference. 現在在日本以外的其他地方都是用這幾個字來稱呼 Perl & Raku 研討會了。但基本上 YAPC 跟 TPRC 這兩個名字指的都是由社群主辦的,主題包含 Perl 的研討會。
雖然跑了不少地方的 Perl 研討會,但上次去到北美地區參與與 Perl 有點關係的研討會已經是 2004 年的 OSCON。芥於我還沒去踩過 "YAPC::NA" 這個領域,就想說就去看看吧。順便與那些社群舊友、網友、「GitHub PR 友」碰個面也好。
TPRC 議程共有三日,議程共有三軌並行,儘量參加,但必定有三分之二是只能看錄影了。除了常規議程以外,與新舊朋友在午餐時間社交,也是這研討會的重點。讓我回想到以前的 YAPC::Taipei 與 OSDC 的那幾年了。先推薦幾場我有在座聽完的演講:
- The Test2 Ecosystem - Chad Granum. https://youtu.be/7lNtM2FmTow
- Lingy & YAMLScript - News Ways to Program Perl - Ingy döt Net. https://youtu.be/9OcFh-HaCyI
- The N-Queens problem by Regexp - Abigail.
- Screwdriver Included: Making your project easier to enhance and extend
演講主題形形色色,很容易就讓人聯想到多倫多市內 Kensington Market 這區,裡面什麼樣的店都有。有滿足日間觀光客的小吃、咖啡店,也有讓當地居民能購物的生鮮市場,更有能滿足拍照欲望的街頭藝術。
Kensington Market 內的地標。聽說常常換「新車」。
多倫多是個很大的都會區。雖然在此行之前從沒去過而讓人擔心,但從地圖上滿滿的公車站、地鐵站、路面電車,與密密麻麻的路線圖這一點看來,在市區內移動絕對不成問題。確實也是如此。一出 YYZ 機場,在售票機買了張 Presto 卡之後,就可以靠這張卡搭車移動。準備零錢也可以,但刷卡進出簡單多了。缺點是 6 CAD 的購卡費用與其中儲值金都不能退。考慮到以 Presto 乘車費用略為便宜一些,多乘幾趟就能把這 6 CAD 攤平,就決定買來用了。
多倫多市內商業區都是超級高樓,之外則都是三層樓左右的矮房。拍街景時,很容易取到以巨大建築為背景的構圖。走在街上,有時會把遠方的高樓誤以為是山脈一般的錯覺。並且,無論怎麼走,都可以遇到大小工地,要不就是拆建房屋,要不就是修改馬路。工人們直接穿著作業服、戴著工地安全帽搭乘地鐵的姿態隨時隨處可見。多倫多市區是個正在經歷都市更新、新舊混合中的地方。
聖彌額爾聖殿主教座堂。攝於 2023 年 7 月 13 日。與 2021 年 9 月 Google 街景圖相比後,明顯可看到後方兩棟這三年蓋起來的。
Perl 程式語言,也正在經歷一段「都更」的過程。有很多新的機能出現之時,每項更新提案都會碰到現有居民的阻抗、競爭、妥協等等。就算是看來能帶來很美好的未來的提案,在有許多與現有生態相容議題要照顧的前提之下,未必都是能立刻成行的。有時就是得等到現有生態系消失了,阻力才會消退。雖然這也算是合情合理,但也造成了不少挫折。
最近釋出的 perl 5.38 內所包含的 perl class,似乎相對來說是比較沒有阻礙的。畢竟,在物件導向概念風行了這麼久之後,大家對類別、物件等等的概念都有充分了解了,也就不會反對了。但即便如此,perl class 仍是個實驗性機能,一方面是因為幾位作者認為目前實做尚未完備,另一方面是因為大家已經習慣了將新機能以實驗性機能來推出的這個做法。
無疑,Perl 社群是個很注重相容性的群體。
儘管如此,仍有很多人在努力地替這老屋翻新。Curtis 在他的主講 內提到了 Project Oshun、是繼 perl class 後以 Damian Conway 所設計的 KIM 語法去給變數與函數加上 data check (資料檢查、資料驗證)的機制。類似「型別」的概念。
以下這段範例取自 Project Oshun。是以 :returns
與 :of
來標示出對函式與變數值的檢查規則。
sub fibonacci :returns(UINT) ($nth :of(PositiveInt)) {
...
}
或許目前 perl 5.38 這語言就像是照片中前方的那聖彌額爾聖殿主教座堂,雖然顯舊,但在各方面都已經盡善盡美了。只是,如果不經歷一番改建,是無法再度像四周的高樓大廈那般,成為充滿新機會的場所。而要如何妥善地將這場所慢慢改築成更加便利、更有效率、更加親切的高科技教堂,則是目前 Perl 社群面對的議題了。
Sawyer 在對 Perl 7 這個題目反省時,提到了他自認有溝通不足的狀況。溝通管道眾多,也不容易全數照顧到。對於他收到太多攻擊性言語而決意離開這事,我覺得太可惜,也太糟糕了。不過另一方面,我覺得他還是別再來這沱爛泥內攪和比較好。至少,每個人都應把自己的時間花在自認最值得的地方。
顯然,網路言論環境的維護,是 Perl 社群更該努力處理的議題。不然,能在這個環境中存活下來的,就只是一些很會講髒話的人了。