Wspólne idiom jest użycie ciągiem znaków jako szablon.
1.42857 ( ) cvs show
Można nawet sformatować dane wyjściowe, prezentując cvs z różnymi podciągami większego łańcucha.
%.......
(2/7 = ) dup 6 7 getinterval
2.85714 exch cvs pop show
Ale zabrania tego Ghostscript Style Guide. I jest to jedyny opublikowany poradnik w stylu PostScript, jaki mamy. (A discussion about this w comp.lang.postscript.) Tak więc powszechną rekomendacją jest przydzielenie świeżego ciągu, gdy jest to potrzebne, i niech zbieracz śmieci zacznie zarabiać.
4.28571 7 string cvs show
W ostateczności naprawdę leniwy haker będzie porwać =string
, wbudowany bufor 128 bajtów używanych przez =
i ==
do numerów wyjściowych (używając oczywiście nasz przyjaciel cvs
).
5.71428 =string cvs show
A jeśli lubisz tego jednego, można połączyć go z =
jest inny trick: natychmiast oceniane nazwy.
{ 7.14285 //=string cvs show } % embed =string in this procedure
Umożliwia to dodatkowe, mikrosekundowe wyłączenie i znacznie utrudnia interaktywną kontrolę kodu. Wywołanie tej procedury pod numerem ==
nie spowoduje ujawnienia faktu, że używasz =string
; wygląda jak każdy inny ciąg.
Jeszcze jedna sztuczka do torby, od a post by Helge Blischke in comp.lang.postscript. Jest to prosty sposób uzyskania zerowej liczby całkowitej.
/bindec % <integer> bindec <string_of_length_6>
{
1000000 add 7 string cvs 1 6 getinterval
}bind def
"1000000 dodać 7 ciągów cvs 1 6 getinterval" - Schludny trik :-) –