所以我們可以用中文(文言文)寫 Perl 了! 請看:
#!/usr/local/bin/perl
use Lingua::Sinica::PerlYuYan;
用警兮用嚴。
印道
1..1
哉兮
印編曰雜申雜申矣
又曰ok矣
又曰1矣
亂曰
國無人莫我知兮 又何懷乎故都
既莫足與為美政兮 吾將從彭咸之所居
以上會印出
1..1
ok 1
也就是此模組的安裝測試程式 (t/1-basic.t).
詳情請看模組說明; 剛剛上 CPAN 了.
/Autrijus/
--
[1;32m┌───── [33m◆ [37m程式設計樂園 [33m◆ [32m─────┐ [34m┐┌┐┐┌┐┌─┐┌┬┐┌┬┐┐ ┌ [m
[1;32m│ [31m CSZone.kkcity.com.tw [32m│ [37m├┘┐├┘┐│ │ │ └┬┘ [m
[1;32m└── [34m《 [0;37mFrom:210.85.11.134 [1;34m》 [32m──┘ [36m┘ ┘┘ ┘└─┘└┴┘ ┴ ┴ [m
稍作解釋:
> 用警兮用嚴。
use warnings; use strict;
> 印道
print "
> 1..1
1..1
> 哉兮
";
> 印編曰雜申雜申矣
print sprintf '%s %s'
> 又曰ok矣
,'ok'
> 又曰1矣
,'1'
> 亂曰
__END__
※ 引述《autr...@kkcity.com.tw (天風)》之銘言:
> ※ 引述《autrijus (Autrijus Tang)》之銘言:
> 稍作解釋:
> > 用警兮用嚴。
> use warnings; use strict;
> > 印道
> print "
> > 1..1
> 1..1
> > 哉兮
> ";
> > 印編曰雜申雜申矣
> print sprintf '%s %s'
> > 又曰ok矣
> ,'ok'
> > 又曰1矣
> ,'1'
> > 亂曰
> __END__
> /Autrijus/
--
[1;32m┌───── [33m◆ [37mKKCITY [33m◆ [32m─────┐ [34m┐┌┐┐┌┐┌─┐┌┬┐┌┬┐┐ ┌ [m
[1;32m│ [31m bbs.kkcity.com.tw [32m│ [37m├┘┐├┘┐│ │ │ └┬┘ [m
[1;32m└── [34m《 [0;37mFrom:61.58.69.94 [1;34m》 [32m──┘ [36m┘ ┘┘ ┘└─┘└┴┘ ┴ ┴ [m
可以用 譯() 來把英文程式翻成中文.
又, 0.02 纔真的能用而不重複名稱, sorry.
http://autrijus.org/Lingua-Sinica-PerlYuYan-0.02.tar.gz
新的範例程式 (用 perldoc Lingua::Sinica::PerlYuYan 可以看到):
#!/usr/local/bin/perl
# The Sieve of Eratosthenes - 埃拉托斯芬篩法
use Lingua::Sinica::PerlYuYan;
用籌兮用嚴 井涸兮無礙。
印曰最高矣 又道數然哉。
截起吾純風 賦小入大合。
習予吾陣地 並二至純風。
當起段賦取 加陣地合始。
陣地賦篩始 繫繫此雜段。
終陣地兮印 正道次標哉。
輸空接段點 列終註泰來。
/Autrijus/
--
[1;32m┌───── [33m◆ [37m程式設計樂園 [33m◆ [32m─────┐ [34m┐┌┐┐┌┐┌─┐┌┬┐┌┬┐┐ ┌ [m
[1;32m│ [31m CSZone.kkcity.com.tw [32m│ [37m├┘┐├┘┐│ │ │ └┬┘ [m
[1;32m└── [34m《 [0;37mFrom:210.85.11.134 [1;34m》 [32m──┘ [36m┘ ┘┘ ┘└─┘└┴┘ ┴ ┴ [m
"天風" <autr...@kkcity.com.tw> 撰寫於郵
件 news:3kRi7d$Z...@bbs.kkcity.com.tw...
> 剛花兩小時寫完
>
http://autrijus.org/Lingua-Sinica-PerlYu
---
Posted via news://freenews.netfront.net
Complaints to ne...@netfront.net
> 剛花兩小時寫完
> http://autrijus.org/Lingua-Sinica-PerlYuYan-0.01.tar.gz
>
> 所以我們可以用中文(文言文)寫 Perl 了! 請看:
>
> #!/usr/local/bin/perl
> use Lingua::Sinica::PerlYuYan;
> 用警兮用嚴。
>
> 印道
> 1..1
> 哉兮
>
> 印編曰雜申雜申矣
> 又曰ok矣
> 又曰1矣
>
> 亂曰
> 國無人莫我知兮 又何懷乎故都
> 既莫足與為美政兮 吾將從彭咸之所居
>
>
>
> 以上會印出
> 1..1
> ok 1
>
> 也就是此模組的安裝測試程式 (t/1-basic.t).
>
> 詳情請看模組說明; 剛剛上 CPAN 了.
>
這真的很有趣,有空來給他用用看,希望有中文變數名稱,那就太幸福了,
我是說語法不變,變數名稱用中文:-)
你真是太強了...
--
DragonII.Net @ Taiwan
IASL, IIS, SINICA
Cheng-Lung Sung 宋政隆
E-Mail: <Alan...@dragon2.net>
騷體的文言比較獒牙
要不要考慮用宋以後的文言?
這樣比較簡單易懂
※ 引述《autrijus (天風)》之銘言:
> 剛花兩小時寫完
> http://autrijus.org/Lingua-Sinica-PerlYuYan-0.01.tar.gz
> 所以我們可以用中文(文言文)寫 Perl 了! 請看:
> #!/usr/local/bin/perl
> use Lingua::Sinica::PerlYuYan;
> 用警兮用嚴。
> 印道
> 1..1
> 哉兮
> 印編曰雜申雜申矣
> 又曰ok矣
> 又曰1矣
> 亂曰
> 國無人莫我知兮 又何懷乎故都
> 既莫足與為美政兮 吾將從彭咸之所居
> 以上會印出
> 1..1
> ok 1
> 也就是此模組的安裝測試程式 (t/1-basic.t).
> 詳情請看模組說明; 剛剛上 CPAN 了.
> /Autrijus/
--
[1;32m┌───── [33m◆ [37m程式設計樂園 [33m◆ [32m─────┐ [34m┐┌┐┐┌┐┌─┐┌┬┐┌┬┐┐ ┌ [m
[1;32m│ [31m CSZone.kkcity.com.tw [32m│ [37m├┘┐├┘┐│ │ │ └┬┘ [m
[1;32m└── [34m《 [0;37mFrom:203.204.186.208 [1;34m》 [32m──┘ [36m┘ ┘┘ ┘└─┘└┴┘ ┴ ┴ [m
註疏一下...
> 用籌兮用嚴 井涸兮無礙。
use integer; use strict; # 涸; 無礙;
> 印曰最高矣 又道數然哉。
print '最高', "數:";
> 截起吾純風 賦小入大合。
chomp (my $z = <STDIN>);
> 習予吾陣地 並二至純風。
study unshift my @w, 2 .. $z;
> 當起段賦取 加陣地合始。
while ($/ = shift +@w) {;
> 陣地賦篩始 繫繫此雜段。
@w = grep { ~~ $_ % $/
> 終陣地兮印 正道次標哉。
} @w; print +"next :";
> 輸空接段點 列終註泰來。
printf " ".$/."\n" } # 泰來
/Autrijus/
--
[1;32m┌───── [33m◆ [37m程式設計樂園 [33m◆ [32m─────┐ [34m┐┌┐┐┌┐┌─┐┌┬┐┌┬┐┐ ┌ [m
[1;32m│ [31m CSZone.kkcity.com.tw [32m│ [37m├┘┐├┘┐│ │ │ └┬┘ [m
[1;32m└── [34m《 [0;37mFrom:163.15.59.4 [1;34m》 [32m──┘ [36m┘ ┘┘ ┘└─┘└┴┘ ┴ ┴ [m
這裡的重點是每個關鍵字都用單一的字表達 (__END__ 等除外),
纔不會有 ambiguity.
當然, 謹慎選字的話, 每個關鍵字提兩個字的版本也可以.
> 這樣比較簡單易懂
請下載看 PerlYuYan.pm 最後的設定; 如果可以, 請自行翻譯後把字典寄給我,
我可以加上兩字詞的模式.
例如像這一行:
! @ # # $ % % ^ & * ( ) - = _ + + [ ] { } \ | ; : :
非陣井註純雜模析和乘起合減賦底加正內外始終參聯兮然標
可以改成
! @
並非陣列
之類之類..