svn: r13932
This commit is contained in:
Matthew Flatt 2009-03-03 23:02:24 +00:00
parent b827890ba5
commit 826263c629
40 changed files with 247 additions and 221 deletions

View File

@ -1,9 +0,0 @@
(module exn mzscheme
(require mzlib/serialize)
(define-serializable-struct mr-exn (message))
(provide (struct mr-exn (message))))

View File

@ -7,7 +7,7 @@
((1) 0 () 0 () () (c rectangle c 10 c 20))
((1) 2 (((lib "scribble/struct.ss") . deserialize-info:element-v0) ((lib "scribble/struct.ss") . deserialize-info:image-file-v0)) 0 () () (0 #f (c (0 (1 (u . "images/img1.pdf") 1.0) (c "[image]")))))
((1) 0 () 0 () () (c circle c 10 c 20))
((1) 1 (((lib "scribblings/quick/exn.ss") . deserialize-info:mr-exn-v0)) 0 () () (0 "procedure circle: expects 1 argument, given 2: 10 20"))
((1) 1 (((lib "scriblib/private/mr-eval-exn.ss") . deserialize-info:gui-exn-v0)) 0 () () (0 "procedure circle: expects 1 argument, given 2: 10 20"))
((1) 0 () 0 () () (c hc-append c (c circle c 10) c (c rectangle c 10 c 20)))
((1) 2 (((lib "scribble/struct.ss") . deserialize-info:element-v0) ((lib "scribble/struct.ss") . deserialize-info:image-file-v0)) 0 () () (0 #f (c (0 (1 (u . "images/img2.pdf") 1.0) (c "[image]")))))
((1) 0 () 0 () () (c define c c c (c circle c 10)))

View File

@ -42,10 +42,10 @@ endobj
<?adobe-xap-filters esc="CRLF"?>
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
<rdf:Description rdf:about='7e168de8-2af3-11e9-0000-34a7f4bf94ee' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 8.63'/>
<rdf:Description rdf:about='7e168de8-2af3-11e9-0000-34a7f4bf94ee' xmlns:xap='http://ns.adobe.com/xap/1.0/' xap:ModifyDate='2009-02-04T09:14:48-07:00' xap:CreateDate='2009-02-04T09:14:48-07:00'><xap:CreatorTool>PLT Scheme</xap:CreatorTool></rdf:Description>
<rdf:Description rdf:about='7e168de8-2af3-11e9-0000-34a7f4bf94ee' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='7e168de8-2af3-11e9-0000-34a7f4bf94ee'/>
<rdf:Description rdf:about='7e168de8-2af3-11e9-0000-34a7f4bf94ee' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title><dc:creator><rdf:Seq><rdf:li>mflatt@Macintosh \(Matthew Flatt\)</rdf:li></rdf:Seq></dc:creator></rdf:Description>
<rdf:Description rdf:about='6be08af7-4062-11e9-0000-34a7f4bf94ee' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 8.63'/>
<rdf:Description rdf:about='6be08af7-4062-11e9-0000-34a7f4bf94ee' xmlns:xap='http://ns.adobe.com/xap/1.0/' xap:ModifyDate='2009-03-03T15:51:46-07:00' xap:CreateDate='2009-03-03T15:51:46-07:00'><xap:CreatorTool>PLT Scheme</xap:CreatorTool></rdf:Description>
<rdf:Description rdf:about='6be08af7-4062-11e9-0000-34a7f4bf94ee' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='6be08af7-4062-11e9-0000-34a7f4bf94ee'/>
<rdf:Description rdf:about='6be08af7-4062-11e9-0000-34a7f4bf94ee' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title><dc:creator><rdf:Seq><rdf:li>mflatt@Macintosh \(Matthew Flatt\)</rdf:li></rdf:Seq></dc:creator></rdf:Description>
</rdf:RDF>
</x:xmpmeta>
@ -55,8 +55,8 @@ endstream
endobj
2 0 obj
<</Producer(GPL Ghostscript 8.63)
/CreationDate(D:20090204091448-07'00')
/ModDate(D:20090204091448-07'00')
/CreationDate(D:20090303155146-07'00')
/ModDate(D:20090303155146-07'00')
/Creator(PLT Scheme)
/Author(mflatt@Macintosh \(Matthew Flatt\))>>endobj
xref
@ -73,7 +73,7 @@ xref
0000000640 00000 n
trailer
<< /Size 10 /Root 1 0 R /Info 2 0 R
/ID [<EF2D6290251D1713D377B65599C04BC8><EF2D6290251D1713D377B65599C04BC8>]
/ID [<5B9C18337FC8389A1DFF2A1017EF4F38><5B9C18337FC8389A1DFF2A1017EF4F38>]
>>
startxref
2278

View File

@ -42,10 +42,10 @@ endobj
<?adobe-xap-filters esc="CRLF"?>
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
<rdf:Description rdf:about='7eaf2468-2af3-11e9-0000-de937bc06cc7' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 8.63'/>
<rdf:Description rdf:about='7eaf2468-2af3-11e9-0000-de937bc06cc7' xmlns:xap='http://ns.adobe.com/xap/1.0/' xap:ModifyDate='2009-02-04T09:14:49-07:00' xap:CreateDate='2009-02-04T09:14:49-07:00'><xap:CreatorTool>PLT Scheme</xap:CreatorTool></rdf:Description>
<rdf:Description rdf:about='7eaf2468-2af3-11e9-0000-de937bc06cc7' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='7eaf2468-2af3-11e9-0000-de937bc06cc7'/>
<rdf:Description rdf:about='7eaf2468-2af3-11e9-0000-de937bc06cc7' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title><dc:creator><rdf:Seq><rdf:li>mflatt@Macintosh \(Matthew Flatt\)</rdf:li></rdf:Seq></dc:creator></rdf:Description>
<rdf:Description rdf:about='6be08af7-4062-11e9-0000-de937bc06cc7' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 8.63'/>
<rdf:Description rdf:about='6be08af7-4062-11e9-0000-de937bc06cc7' xmlns:xap='http://ns.adobe.com/xap/1.0/' xap:ModifyDate='2009-03-03T15:51:46-07:00' xap:CreateDate='2009-03-03T15:51:46-07:00'><xap:CreatorTool>PLT Scheme</xap:CreatorTool></rdf:Description>
<rdf:Description rdf:about='6be08af7-4062-11e9-0000-de937bc06cc7' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='6be08af7-4062-11e9-0000-de937bc06cc7'/>
<rdf:Description rdf:about='6be08af7-4062-11e9-0000-de937bc06cc7' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title><dc:creator><rdf:Seq><rdf:li>mflatt@Macintosh \(Matthew Flatt\)</rdf:li></rdf:Seq></dc:creator></rdf:Description>
</rdf:RDF>
</x:xmpmeta>
@ -55,8 +55,8 @@ endstream
endobj
2 0 obj
<</Producer(GPL Ghostscript 8.63)
/CreationDate(D:20090204091449-07'00')
/ModDate(D:20090204091449-07'00')
/CreationDate(D:20090303155146-07'00')
/ModDate(D:20090303155146-07'00')
/Creator(PLT Scheme)
/Author(mflatt@Macintosh \(Matthew Flatt\))>>endobj
xref
@ -73,7 +73,7 @@ xref
0000000577 00000 n
trailer
<< /Size 10 /Root 1 0 R /Info 2 0 R
/ID [<D1933D7A6F73588F969C98894719EB7B><D1933D7A6F73588F969C98894719EB7B>]
/ID [<D1DCD84F7619933E209882189C123385><D1DCD84F7619933E209882189C123385>]
>>
startxref
2215

View File

@ -42,10 +42,10 @@ endobj
<?adobe-xap-filters esc="CRLF"?>
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
<rdf:Description rdf:about='7f47bae8-2af3-11e9-0000-11040068121c' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 8.63'/>
<rdf:Description rdf:about='7f47bae8-2af3-11e9-0000-11040068121c' xmlns:xap='http://ns.adobe.com/xap/1.0/' xap:ModifyDate='2009-02-04T09:14:50-07:00' xap:CreateDate='2009-02-04T09:14:50-07:00'><xap:CreatorTool>PLT Scheme</xap:CreatorTool></rdf:Description>
<rdf:Description rdf:about='7f47bae8-2af3-11e9-0000-11040068121c' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='7f47bae8-2af3-11e9-0000-11040068121c'/>
<rdf:Description rdf:about='7f47bae8-2af3-11e9-0000-11040068121c' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title><dc:creator><rdf:Seq><rdf:li>mflatt@Macintosh \(Matthew Flatt\)</rdf:li></rdf:Seq></dc:creator></rdf:Description>
<rdf:Description rdf:about='6c792177-4062-11e9-0000-11040068121c' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 8.63'/>
<rdf:Description rdf:about='6c792177-4062-11e9-0000-11040068121c' xmlns:xap='http://ns.adobe.com/xap/1.0/' xap:ModifyDate='2009-03-03T15:51:47-07:00' xap:CreateDate='2009-03-03T15:51:47-07:00'><xap:CreatorTool>PLT Scheme</xap:CreatorTool></rdf:Description>
<rdf:Description rdf:about='6c792177-4062-11e9-0000-11040068121c' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='6c792177-4062-11e9-0000-11040068121c'/>
<rdf:Description rdf:about='6c792177-4062-11e9-0000-11040068121c' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title><dc:creator><rdf:Seq><rdf:li>mflatt@Macintosh \(Matthew Flatt\)</rdf:li></rdf:Seq></dc:creator></rdf:Description>
</rdf:RDF>
</x:xmpmeta>
@ -55,8 +55,8 @@ endstream
endobj
2 0 obj
<</Producer(GPL Ghostscript 8.63)
/CreationDate(D:20090204091450-07'00')
/ModDate(D:20090204091450-07'00')
/CreationDate(D:20090303155147-07'00')
/ModDate(D:20090303155147-07'00')
/Creator(PLT Scheme)
/Author(mflatt@Macintosh \(Matthew Flatt\))>>endobj
xref
@ -73,7 +73,7 @@ xref
0000000588 00000 n
trailer
<< /Size 10 /Root 1 0 R /Info 2 0 R
/ID [<69B6A830B23F42EA9BF1DDBF732CBB15><69B6A830B23F42EA9BF1DDBF732CBB15>]
/ID [<1AE0C6090561E21FACDD570510EAE550><1AE0C6090561E21FACDD570510EAE550>]
>>
startxref
2226

View File

@ -44,10 +44,10 @@ endobj
<?adobe-xap-filters esc="CRLF"?>
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
<rdf:Description rdf:about='7d7df768-2af3-11e9-0000-2bb4b895d559' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 8.63'/>
<rdf:Description rdf:about='7d7df768-2af3-11e9-0000-2bb4b895d559' xmlns:xap='http://ns.adobe.com/xap/1.0/' xap:ModifyDate='2009-02-04T09:14:47-07:00' xap:CreateDate='2009-02-04T09:14:47-07:00'><xap:CreatorTool>PLT Scheme</xap:CreatorTool></rdf:Description>
<rdf:Description rdf:about='7d7df768-2af3-11e9-0000-2bb4b895d559' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='7d7df768-2af3-11e9-0000-2bb4b895d559'/>
<rdf:Description rdf:about='7d7df768-2af3-11e9-0000-2bb4b895d559' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title><dc:creator><rdf:Seq><rdf:li>mflatt@Macintosh \(Matthew Flatt\)</rdf:li></rdf:Seq></dc:creator></rdf:Description>
<rdf:Description rdf:about='6aaf5df7-4062-11e9-0000-2bb4b895d559' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 8.63'/>
<rdf:Description rdf:about='6aaf5df7-4062-11e9-0000-2bb4b895d559' xmlns:xap='http://ns.adobe.com/xap/1.0/' xap:ModifyDate='2009-03-03T15:51:44-07:00' xap:CreateDate='2009-03-03T15:51:44-07:00'><xap:CreatorTool>PLT Scheme</xap:CreatorTool></rdf:Description>
<rdf:Description rdf:about='6aaf5df7-4062-11e9-0000-2bb4b895d559' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='6aaf5df7-4062-11e9-0000-2bb4b895d559'/>
<rdf:Description rdf:about='6aaf5df7-4062-11e9-0000-2bb4b895d559' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title><dc:creator><rdf:Seq><rdf:li>mflatt@Macintosh \(Matthew Flatt\)</rdf:li></rdf:Seq></dc:creator></rdf:Description>
</rdf:RDF>
</x:xmpmeta>
@ -57,8 +57,8 @@ endstream
endobj
2 0 obj
<</Producer(GPL Ghostscript 8.63)
/CreationDate(D:20090204091447-07'00')
/ModDate(D:20090204091447-07'00')
/CreationDate(D:20090303155144-07'00')
/ModDate(D:20090303155144-07'00')
/Creator(PLT Scheme)
/Author(mflatt@Macintosh \(Matthew Flatt\))>>endobj
xref
@ -75,7 +75,7 @@ xref
0000000546 00000 n
trailer
<< /Size 10 /Root 1 0 R /Info 2 0 R
/ID [<C6ABF39857B7B44F0E9A92F4A345591E><C6ABF39857B7B44F0E9A92F4A345591E>]
/ID [<390C745AD3529AFF7AA2F07ADD0F632F><390C745AD3529AFF7AA2F07ADD0F632F>]
>>
startxref
2184

View File

@ -43,10 +43,10 @@ endobj
<?adobe-xap-filters esc="CRLF"?>
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
<rdf:Description rdf:about='8078e7e8-2af3-11e9-0000-fcfa74cec07e' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 8.63'/>
<rdf:Description rdf:about='8078e7e8-2af3-11e9-0000-fcfa74cec07e' xmlns:xap='http://ns.adobe.com/xap/1.0/' xap:ModifyDate='2009-02-04T09:14:52-07:00' xap:CreateDate='2009-02-04T09:14:52-07:00'><xap:CreatorTool>PLT Scheme</xap:CreatorTool></rdf:Description>
<rdf:Description rdf:about='8078e7e8-2af3-11e9-0000-fcfa74cec07e' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='8078e7e8-2af3-11e9-0000-fcfa74cec07e'/>
<rdf:Description rdf:about='8078e7e8-2af3-11e9-0000-fcfa74cec07e' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title><dc:creator><rdf:Seq><rdf:li>mflatt@Macintosh \(Matthew Flatt\)</rdf:li></rdf:Seq></dc:creator></rdf:Description>
<rdf:Description rdf:about='6daa4e77-4062-11e9-0000-fcfa74cec07e' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 8.63'/>
<rdf:Description rdf:about='6daa4e77-4062-11e9-0000-fcfa74cec07e' xmlns:xap='http://ns.adobe.com/xap/1.0/' xap:ModifyDate='2009-03-03T15:51:49-07:00' xap:CreateDate='2009-03-03T15:51:49-07:00'><xap:CreatorTool>PLT Scheme</xap:CreatorTool></rdf:Description>
<rdf:Description rdf:about='6daa4e77-4062-11e9-0000-fcfa74cec07e' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='6daa4e77-4062-11e9-0000-fcfa74cec07e'/>
<rdf:Description rdf:about='6daa4e77-4062-11e9-0000-fcfa74cec07e' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title><dc:creator><rdf:Seq><rdf:li>mflatt@Macintosh \(Matthew Flatt\)</rdf:li></rdf:Seq></dc:creator></rdf:Description>
</rdf:RDF>
</x:xmpmeta>
@ -56,8 +56,8 @@ endstream
endobj
2 0 obj
<</Producer(GPL Ghostscript 8.63)
/CreationDate(D:20090204091452-07'00')
/ModDate(D:20090204091452-07'00')
/CreationDate(D:20090303155149-07'00')
/ModDate(D:20090303155149-07'00')
/Creator(PLT Scheme)
/Author(mflatt@Macintosh \(Matthew Flatt\))>>endobj
xref
@ -74,7 +74,7 @@ xref
0000000577 00000 n
trailer
<< /Size 10 /Root 1 0 R /Info 2 0 R
/ID [<75604C19F8497283D7E44AF2FE91D00A><75604C19F8497283D7E44AF2FE91D00A>]
/ID [<D47DD8E8F4F6B70E9917B60988320218><D47DD8E8F4F6B70E9917B60988320218>]
>>
startxref
2215

View File

@ -42,10 +42,10 @@ endobj
<?adobe-xap-filters esc="CRLF"?>
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
<rdf:Description rdf:about='8078e7e8-2af3-11e9-0000-2bb5249de6dd' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 8.63'/>
<rdf:Description rdf:about='8078e7e8-2af3-11e9-0000-2bb5249de6dd' xmlns:xap='http://ns.adobe.com/xap/1.0/' xap:ModifyDate='2009-02-04T09:14:52-07:00' xap:CreateDate='2009-02-04T09:14:52-07:00'><xap:CreatorTool>PLT Scheme</xap:CreatorTool></rdf:Description>
<rdf:Description rdf:about='8078e7e8-2af3-11e9-0000-2bb5249de6dd' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='8078e7e8-2af3-11e9-0000-2bb5249de6dd'/>
<rdf:Description rdf:about='8078e7e8-2af3-11e9-0000-2bb5249de6dd' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title><dc:creator><rdf:Seq><rdf:li>mflatt@Macintosh \(Matthew Flatt\)</rdf:li></rdf:Seq></dc:creator></rdf:Description>
<rdf:Description rdf:about='6daa4e77-4062-11e9-0000-2bb5249de6dd' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 8.63'/>
<rdf:Description rdf:about='6daa4e77-4062-11e9-0000-2bb5249de6dd' xmlns:xap='http://ns.adobe.com/xap/1.0/' xap:ModifyDate='2009-03-03T15:51:49-07:00' xap:CreateDate='2009-03-03T15:51:49-07:00'><xap:CreatorTool>PLT Scheme</xap:CreatorTool></rdf:Description>
<rdf:Description rdf:about='6daa4e77-4062-11e9-0000-2bb5249de6dd' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='6daa4e77-4062-11e9-0000-2bb5249de6dd'/>
<rdf:Description rdf:about='6daa4e77-4062-11e9-0000-2bb5249de6dd' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title><dc:creator><rdf:Seq><rdf:li>mflatt@Macintosh \(Matthew Flatt\)</rdf:li></rdf:Seq></dc:creator></rdf:Description>
</rdf:RDF>
</x:xmpmeta>
@ -55,8 +55,8 @@ endstream
endobj
2 0 obj
<</Producer(GPL Ghostscript 8.63)
/CreationDate(D:20090204091452-07'00')
/ModDate(D:20090204091452-07'00')
/CreationDate(D:20090303155149-07'00')
/ModDate(D:20090303155149-07'00')
/Creator(PLT Scheme)
/Author(mflatt@Macintosh \(Matthew Flatt\))>>endobj
xref
@ -73,7 +73,7 @@ xref
0000000622 00000 n
trailer
<< /Size 10 /Root 1 0 R /Info 2 0 R
/ID [<694B7C614AF7EA90FCDB118411A69C86><694B7C614AF7EA90FCDB118411A69C86>]
/ID [<BE08CA6AB9E961B083F33BBF7F8A8E2B><BE08CA6AB9E961B083F33BBF7F8A8E2B>]
>>
startxref
2260

View File

@ -44,10 +44,10 @@ endobj
<?adobe-xap-filters esc="CRLF"?>
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
<rdf:Description rdf:about='7d7df768-2af3-11e9-0000-2bb4b895d559' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 8.63'/>
<rdf:Description rdf:about='7d7df768-2af3-11e9-0000-2bb4b895d559' xmlns:xap='http://ns.adobe.com/xap/1.0/' xap:ModifyDate='2009-02-04T09:14:47-07:00' xap:CreateDate='2009-02-04T09:14:47-07:00'><xap:CreatorTool>PLT Scheme</xap:CreatorTool></rdf:Description>
<rdf:Description rdf:about='7d7df768-2af3-11e9-0000-2bb4b895d559' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='7d7df768-2af3-11e9-0000-2bb4b895d559'/>
<rdf:Description rdf:about='7d7df768-2af3-11e9-0000-2bb4b895d559' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title><dc:creator><rdf:Seq><rdf:li>mflatt@Macintosh \(Matthew Flatt\)</rdf:li></rdf:Seq></dc:creator></rdf:Description>
<rdf:Description rdf:about='6aaf5df7-4062-11e9-0000-2bb4b895d559' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 8.63'/>
<rdf:Description rdf:about='6aaf5df7-4062-11e9-0000-2bb4b895d559' xmlns:xap='http://ns.adobe.com/xap/1.0/' xap:ModifyDate='2009-03-03T15:51:44-07:00' xap:CreateDate='2009-03-03T15:51:44-07:00'><xap:CreatorTool>PLT Scheme</xap:CreatorTool></rdf:Description>
<rdf:Description rdf:about='6aaf5df7-4062-11e9-0000-2bb4b895d559' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='6aaf5df7-4062-11e9-0000-2bb4b895d559'/>
<rdf:Description rdf:about='6aaf5df7-4062-11e9-0000-2bb4b895d559' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title><dc:creator><rdf:Seq><rdf:li>mflatt@Macintosh \(Matthew Flatt\)</rdf:li></rdf:Seq></dc:creator></rdf:Description>
</rdf:RDF>
</x:xmpmeta>
@ -57,8 +57,8 @@ endstream
endobj
2 0 obj
<</Producer(GPL Ghostscript 8.63)
/CreationDate(D:20090204091447-07'00')
/ModDate(D:20090204091447-07'00')
/CreationDate(D:20090303155144-07'00')
/ModDate(D:20090303155144-07'00')
/Creator(PLT Scheme)
/Author(mflatt@Macintosh \(Matthew Flatt\))>>endobj
xref
@ -75,7 +75,7 @@ xref
0000000546 00000 n
trailer
<< /Size 10 /Root 1 0 R /Info 2 0 R
/ID [<3B906556814EFBD523E9061C020AD58D><3B906556814EFBD523E9061C020AD58D>]
/ID [<A95CA727A37F788F07D908E7B89358F0><A95CA727A37F788F07D908E7B89358F0>]
>>
startxref
2184

View File

@ -1,4 +1,3 @@
#lang setup/infotab
(define scribblings '(("quick.scrbl" () (getting-started 9))
("mreval.scrbl")))
(define scribblings '(("quick.scrbl" () (getting-started 9))))

View File

@ -1,21 +0,0 @@
#lang scribble/manual
@(require (for-label scribble/eval "mreval.ss"))
@title{Writing Examples with Pict Results}
@defmodule[scribblings/quick/mreval]{The
@schememodname[scribblings/quick/mreval] library support example
evaluations with results that are @schememodname[slideshow] picts.}
@defform[(mr-interaction datum ...)]{
Like @scheme[interaction], but using an evaluator that includes
@schememodname[scheme/gui/base] and @schememodname[slideshow].
The trick is that @schememodname[scheme/gui] is not generally
available when rendering documentation, because it requires a GUI
context. The picture output is rendered to an image file when the
@envvar{MREVAL} environment variable is set, so run the enclosing
document once with the environment varibale to generate the
images. Future runs (with the environment variable unset) use the
generated image.}

View File

@ -1,141 +1,11 @@
#lang scheme/base
(module mreval mzscheme
(require scribble/eval
scribble/struct
scribble/scheme
mzlib/class
mzlib/file
mzlib/runtime-path
mzlib/serialize
scribblings/quick/exn
scheme/system)
(define-syntax define-mr
(syntax-rules ()
[(_ mr orig)
(begin
(provide mr)
(define-syntax mr
(syntax-rules ()
[(_ x (... ...))
(parameterize ([scribble-eval-handler mr-eval-handler])
(orig #:eval mr-eval x (... ...)))])))]))
(define mr-eval (make-base-eval))
(define-mr mr-interaction interaction)
(define-mr mr-interaction-eval interaction-eval)
(define-mr mr-interaction-eval-show interaction-eval-show)
(define-mr mr-def+int def+int)
(define-mr mr-defs+int defs+int)
(define-mr mr-schememod+eval schememod+eval)
(define-mr mr-schemeblock+eval schemeblock+eval)
(define mred? (getenv "MREVAL"))
(when mred?
(mr-eval '(require scheme/gui/base))
(mr-eval '(require slideshow)))
;; This one needs to be relative, because it ends up in the
;; exprs.dat file:
(define img-dir "images") ; relative to src dir
;; This one can be absolute:
(define exprs-dat-file (build-path "images"
"exprs.dat"))
(define mr-eval-handler
(if mred?
(let ([eh (scribble-eval-handler)]
[log-file (open-output-file exprs-dat-file 'truncate/replace)])
(lambda (ev catching-exns? expr)
(write (serialize (if (syntax? expr) (syntax-object->datum expr) expr)) log-file)
(newline log-file)
(flush-output log-file)
(let ([result
(with-handlers ([exn:fail?
(lambda (exn)
(make-mr-exn (exn-message exn)))])
(eh ev catching-exns? expr))])
(let ([result (fixup-picts result)])
(write (serialize result) log-file)
(newline log-file)
(flush-output log-file)
(if (mr-exn? result)
(raise (make-exn:fail
(mr-exn-message result)
(current-continuation-marks)))
result)))))
(let ([log-file (with-handlers ([exn:fail:filesystem?
(lambda (exn)
(open-input-string ""))])
(open-input-file exprs-dat-file))])
(lambda (ev catching-exns? expr)
(with-handlers ([exn:fail? (lambda (exn)
(if catching-exns?
(raise exn)
(void)))])
(let ([v (read log-file)])
(if (eof-object? v)
(error "expression not in log file")
(let ([v (deserialize v)])
(if (equal? v (if (syntax? expr)
(syntax-object->datum expr)
expr))
(let ([v (read log-file)])
(if (eof-object? v)
(error "expression result missing in log file")
(let ([v (deserialize v)])
(if (mr-exn? v)
(raise (make-exn:fail
(mr-exn-message v)
(current-continuation-marks)))
v))))
(error 'mreval
"expression does not match log file: ~e versus: ~e"
expr
v))))))))))
(define image-counter 0)
;; This path will be marshaled for use on multiple platforms
(define (build-string-path a b) (string-append a "/" b))
(define (fixup-picts v)
(cond
[((mr-eval 'pict?) v)
(let ([fn (build-string-path img-dir
(format "img~a.png" image-counter))])
(set! image-counter (add1 image-counter))
(let ([dc (let ([pss (make-object (mr-eval 'ps-setup%))])
(send pss set-mode 'file)
(send pss set-file (path-replace-suffix fn #".ps"))
(parameterize ([(mr-eval 'current-ps-setup) pss])
(make-object (mr-eval 'post-script-dc%) #f)))])
(send dc start-doc "Image")
(send dc start-page)
(((mr-eval 'make-pict-drawer) v) dc 0 0)
(send dc end-page)
(send dc end-doc)
(system (format "epstopdf ~a" (path-replace-suffix fn #".ps"))))
(let* ([bm (make-object (mr-eval 'bitmap%)
(inexact->exact (ceiling ((mr-eval 'pict-width) v)))
(inexact->exact (ceiling ((mr-eval 'pict-height) v))))]
[dc (make-object (mr-eval 'bitmap-dc%) bm)])
(send dc set-smoothing 'aligned)
(send dc clear)
(((mr-eval 'make-pict-drawer) v) dc 0 0)
(send bm save-file fn 'png)
(make-element #f (list (make-element (make-image-file
;; For HTML output, .pdf is automatically changed to .png.
;; Be sure to use a string rather than a path, because
;; it gets recorded in "exprs.dat".
(path->string (path-replace-suffix fn #".pdf"))
1.0)
(list "[image]"))))))]
[(pair? v) (cons (fixup-picts (car v))
(fixup-picts (cdr v)))]
[(serializable? v) v]
[else (make-element #f (list (format "~s" v)))])))
(require scriblib/gui-eval)
(provide (rename-out [gui-interaction mr-interaction]
[gui-interaction-eval mr-interaction-eval]
[gui-schememod+eval mr-schememod+eval]
[gui-schemeblock+eval mr-schemeblock+eval]
[gui-def+int mr-def+int]
[gui-defs+int mr-defs+int]
[gui-interaction-eval-show mr-interaction-eval-show]))

View File

@ -0,0 +1,140 @@
#lang scheme/base
(require scribble/eval
scribble/struct
scribble/scheme
scheme/class
scheme/file
scheme/runtime-path
scheme/serialize
"private/mr-eval-exn.ss"
scheme/system)
(define-syntax define-mr
(syntax-rules ()
[(_ mr orig)
(begin
(provide mr)
(define-syntax mr
(syntax-rules ()
[(_ x (... ...))
(parameterize ([scribble-eval-handler gui-eval-handler])
(orig #:eval gui-eval x (... ...)))])))]))
(define gui-eval (make-base-eval))
(define-mr gui-interaction interaction)
(define-mr gui-interaction-eval interaction-eval)
(define-mr gui-interaction-eval-show interaction-eval-show)
(define-mr gui-def+int def+int)
(define-mr gui-defs+int defs+int)
(define-mr gui-schememod+eval schememod+eval)
(define-mr gui-schemeblock+eval schemeblock+eval)
(define mred? (getenv "MREVAL"))
(when mred?
(gui-eval '(require scheme/gui/base))
(gui-eval '(require slideshow)))
;; This one needs to be relative, because it ends up in the
;; exprs.dat file:
(define img-dir "images") ; relative to src dir
;; This one can be absolute:
(define exprs-dat-file (build-path "images"
"exprs.dat"))
(define gui-eval-handler
(if mred?
(let ([eh (scribble-eval-handler)]
[log-file (open-output-file exprs-dat-file #:exists 'truncate/replace)])
(lambda (ev catching-exns? expr)
(write (serialize (if (syntax? expr) (syntax->datum expr) expr)) log-file)
(newline log-file)
(flush-output log-file)
(let ([result
(with-handlers ([exn:fail?
(lambda (exn)
(make-gui-exn (exn-message exn)))])
(eh ev catching-exns? expr))])
(let ([result (fixup-picts result)])
(write (serialize result) log-file)
(newline log-file)
(flush-output log-file)
(if (gui-exn? result)
(raise (make-exn:fail
(gui-exn-message result)
(current-continuation-marks)))
result)))))
(let ([log-file (with-handlers ([exn:fail:filesystem?
(lambda (exn)
(open-input-string ""))])
(open-input-file exprs-dat-file))])
(lambda (ev catching-exns? expr)
(with-handlers ([exn:fail? (lambda (exn)
(if catching-exns?
(raise exn)
(void)))])
(let ([v (read log-file)])
(if (eof-object? v)
(error "expression not in log file")
(let ([v (deserialize v)])
(if (equal? v (if (syntax? expr)
(syntax->datum expr)
expr))
(let ([v (read log-file)])
(if (eof-object? v)
(error "expression result missing in log file")
(let ([v (deserialize v)])
(if (gui-exn? v)
(raise (make-exn:fail
(gui-exn-message v)
(current-continuation-marks)))
v))))
(error 'mreval
"expression does not match log file: ~e versus: ~e"
expr
v))))))))))
(define image-counter 0)
;; This path will be marshaled for use on multiple platforms
(define (build-string-path a b) (string-append a "/" b))
(define (fixup-picts v)
(cond
[((gui-eval 'pict?) v)
(let ([fn (build-string-path img-dir
(format "img~a.png" image-counter))])
(set! image-counter (add1 image-counter))
(let ([dc (let ([pss (make-object (gui-eval 'ps-setup%))])
(send pss set-mode 'file)
(send pss set-file (path-replace-suffix fn #".ps"))
(parameterize ([(gui-eval 'current-ps-setup) pss])
(make-object (gui-eval 'post-script-dc%) #f)))])
(send dc start-doc "Image")
(send dc start-page)
(((gui-eval 'make-pict-drawer) v) dc 0 0)
(send dc end-page)
(send dc end-doc)
(system (format "epstopdf ~a" (path-replace-suffix fn #".ps"))))
(let* ([bm (make-object (gui-eval 'bitmap%)
(inexact->exact (ceiling ((gui-eval 'pict-width) v)))
(inexact->exact (ceiling ((gui-eval 'pict-height) v))))]
[dc (make-object (gui-eval 'bitmap-dc%) bm)])
(send dc set-smoothing 'aligned)
(send dc clear)
(((gui-eval 'make-pict-drawer) v) dc 0 0)
(send bm save-file fn 'png)
(make-element #f (list (make-element (make-image-file
;; For HTML output, .pdf is automatically changed to .png.
;; Be sure to use a string rather than a path, because
;; it gets recorded in "exprs.dat".
(path->string (path-replace-suffix fn #".pdf"))
1.0)
(list "[image]"))))))]
[(pair? v) (cons (fixup-picts (car v))
(fixup-picts (cdr v)))]
[(serializable? v) v]
[else (make-element #f (list (format "~s" v)))]))

View File

@ -0,0 +1,6 @@
#lang scheme/base
(require mzlib/serialize)
(define-serializable-struct gui-exn (message))
(provide (struct-out gui-exn))

View File

@ -0,0 +1,31 @@
#lang scribble/manual
@(require (for-label scribble/eval scriblib/gui-eval))
@title[#:tag "gui-eval"]{Writing Examples with Pict Results}
@defmodule[scriblib/gui-eval]{The
@schememodname[scriblib/gui-eval] library support example
evaluations with results that are @schememodname[slideshow] picts.}
The trick is that @schememodname[scheme/gui] is not generally
available when rendering documentation, because it requires a GUI
context. The picture output is rendered to an image file when the
@envvar{MREVAL} environment variable is set, so run the enclosing
document once with the environment varibale to generate the
images. Future runs (with the environment variable unset) use the
generated image.
@deftogether[(
@defform[(gui-interaction datum ...)]
@defform[(gui-interaction-eval datum ...)]
@defform[(gui-interaction-eval-show datum ...)]
@defform[(gui-schemeblock+eval datum ...)]
@defform[(gui-schememod+eval datum ...)]
@defform[(gui-def+int datum ...)]
@defform[(gui-defs+int datum ...)]
)]{
Like @scheme[interaction], etc., but actually evaluating the forms
only when the @envvar{MREVAL} environment variable is set, and then in
an evaluator that is initialized with @schememodname[scheme/gui/base]
and @schememodname[slideshow]. }

View File

@ -0,0 +1,3 @@
#lang setup/infotab
(define scribblings '(("scriblib.scrbl" (multi-page))))

View File

@ -0,0 +1,7 @@
#lang scribble/manual
@title{@bold{Scriblib}: Extra Scribble Libraries}
@table-of-contents[]
@include-section["gui-eval.scrbl"]