2010/04/18

邪悪なPostScriptコード


%!OPS-1.0 %%Creator: HAYAKAWA,Takashi
/A/copy/p/floor/q/gt/S/add/n/exch/i/index/J/ifelse/r/roll/w/div/H{{loop}stopped
Y}def/t/and/C/neg/T/dup/h/exp/Y/pop/d/mul/s/cvi/e/sqrt/R/rlineto{load def}H 300
T translate(V2L&1i2A00053r45hNvQXz&vUX&UOvQXzFJ!FJ!J!O&Y43d9rE3IaN96r63rvx2dcaN
G&140N7!U&4C577d7!z&&93r6IQO2Z4o3AQYaNlxS2w!!f&nY9wn7wpSps1t1S!D&cjS5o32rS4oS3o
Z&blxC1SdC9n5dh!I&3STinTinTinY!B&V0R0VRVC0R!N&3A3Axe1nwc!l&993dC99Cc96raN!a&1CD
E&YYY!F&&vGYx4oGbxSd0nq&3IGbxSGY4Ixwca3AlvvUkbQkdbGYx4ofwnw!&vlx2w13wSb8Z4wS!J!
c&j1idj2id42rd!X&4I3Ax52r8Ia3A3Ax65rTdCS4iw5o5IxnwTTd32rCST0q&eCST0q&D1!&EYE0!J
&EYEY0!J0q!x&jd5o32rd4odSS!K&WCVW!Q&31C85d4!k&X&E9!&1!J!v&6A!b&7o!o&1r!j&43r!W)
{( )T 0 4 3 r put T(/)q{T(9)q{cvn}{s}J}{($)q{[}{]}J}J cvx}forall 270{def}H
K{K{L setgray moveto B fill}for Y}for showpage

邪悪過ぎませんか・・・。

私も、PostScriptはちょっぴり書くことがあるのですが、とても読めません・・・。そもそも読めるようなものなんでしょうか・・・。
%!PS-Adobe-3.0 
% factorial

/fact { 
    1 dict begin 
        /n exch def 
        n 1 eq n 0 eq or { 
            1 
        } { 
            n 1 sub fact n mul 
        } ifelse 
    end 
} def

5 fact % 120

gif

こっちもすごいなぁ。gifにできるんですね。


%!PS-Adobe-3.0
%%BoundingBox: 0 0 100 20
%%Title: orz.ps
%%Creator: @aka
%%CreationDate: Thu May 19 23:06:30 2005
%%EndComments

64 dict begin

/dots 14 def
/Helvetica-Bold findfont 18 scalefont setfont

/orz {
  0 1 dots {
    /head exch def
    0 0 moveto
    dots head sub { (.) show } repeat
    (o) show
    head { (.) show } repeat
    (rz) show
    showpage
  } for
} def

orz

end
showpage
%%EOF

9LISP

9LISPでは、LOLの「第7章 Lispを動かすForthを動かすLisp」を参考にPostScriptを実装してみたい、というのも当面の目標の一つです。最終的にはS式で書けるPostScript的な何かができたら良いなーなどと。

たまには、スタック指向な言語もいかがですか。

関連


PostScriptリファレンスマニュアル第3版 (ASCII電子出版シリーズ)
Adobe Systems
アスキー
売り上げランキング: 332789
おすすめ度の平均: 4.5
4 端から端まで読む本ではありませんが
5 待ってました
5 PostScript開発者必携本です!
PostScript & Acrobat/PDF
PostScript & Acrobat/PDF
posted with amazlet at 10.04.18
トーマス マーツ
東京電機大学出版局
売り上げランキング: 1059666
おすすめ度の平均: 4.0
4 画像処理関係の開発者にお勧め

0 件のコメント:

コメントを投稿