From - Tue Jul 1 01:57:27 2003 Return-Path: Received: from coxeter.math.toronto.edu (coxeter.math.toronto.edu [128.100.68.3]) by nef.ens.fr (8.12.9/1.01.28121999) with ESMTP id h5UNvLko040908 for ; Tue, 1 Jul 2003 01:57:22 +0200 (CEST) Received: (from laurent@localhost) by coxeter.math.toronto.edu (8.11.6p2/8.11.0/UTMath 1.0) id h5UNvFa245154; Mon, 30 Jun 2003 19:57:15 -0400 Date: Mon, 30 Jun 2003 19:57:15 -0400 From: Larry Siebenmann Message-Id: <200306302357.h5UNvFa245154@coxeter.math.toronto.edu> To: hobby@plan9.bell-labs.com, laurent@math.toronto.edu, metafont@ens.fr Subject: re: elementary puzzle Hi all, Concerning my: >> prologues:=2; %% Generate standard eps >> beginfig(0) >> draw (100,0)--(70,70)--(0,0); >> draw (0,0)--(100,0)--(100,100)--(0,100)--cycle; > endfig; Martin Buchmann wrote: > i can't see it [the strange result], honestly. This honest reply soon made me realized that, to see the weirdness, you need to apply a ***defective*** PS processor. My defective PS processor is Adobe Acrobat Distiller version 3.01 both Macintosh and Win. It is almost unbelievable that, at version as high as three, Adobe's Distiller will fumble on a PS file as simple as: %!PS-Adobe-3.0 EPSF-3.0 %%BoundingBox: -1 -1 101 101 1 setlinecap 1 setlinejoin newpath 100 0 moveto 70 70 lineto 0 0 lineto stroke newpath 0 0 moveto 100 0 lineto 100 100 lineto 0 100 lineto closepath stroke showpage %%EOF Non-Distiller programs have so far all compiled as naive expectation demands. I have tried: -- a PS printer with Adobe ROMs -- ps2pdf (CMacTeX) with Acrobat Reader 4 (Mac) -- GS + GSview (CMacTeX) If you have other / newer Distiller versions tell me/us how they perform on the EPS file above. Cheers Laurent S. PS. Here is what Distiller 3.01 (Mac) makes from the MP snippet quoted up top: BEGIN --------- cut here --------- CUT HERE begin 777 puzzle.zip M4$L#!`H`!``&``.DWB[P,]GH@@(``#\$```2`!(`8WEC;&5?<'5Z>FQE+C`N M<&1F!2<.`%I025101$8@0T%23P$`3IX''@/^'@,^!AX&""X(!@4#!%4'!0@. M!@X&'@8(!@4'%@'"_+2T/PSHS,4=]K7Z/S7UCSMWEK@?];[$O[Y`WOK" MO)O>B_)BWWI?PJO&WU?^P\3:^HJC\(7WU[LR'_?;ZR,\C[JB5>VHAKO:T>,_ M<]EIE9RA^AQ)(S=5:F>_ZM"L7_P?1H[9B;6][/-XD[L>]W6M(EQ@[0@LX:-# MGS>,M.1+>YK/ER2N7CUQQ"7NO(SF*2W9_`[R#Y-R)U3VS)7HU[E_F#(7\^?U MNG]8"SWMI.QO(T;]_')^)FXMEC!<]C'O\PX$)Y M?%6NJ^,X3];PWRA>":=<6`*;8E[UTK[>@6'Q($L;9)B\["4_%8U*YHE2^GN]DO3;G7F&(Y3U@JA7E/8UCV7;;L&0EG+XUI9'`'",?D3NG?U_KW"M+7 MZ7;[W5=ZIK2W,K6L9U-R5PW;IFCMMDQAOV?B;8IZ+8]Y,*#Q-D7=ML?<&=C+ MSBT%/'\]S[5"R,/@3V=[VL_!$9Q[H'-I>D3.+&N^:EIK6=;;ZU0ZY650[K1; M[7*E,RCWN]UU[;1ZYZ0*@URNQ[WD-IWG=K?],S,C1TCZ4$L!`A0#"@`$``8` M`Z3>+O`SV>B"`@``/P0``!(`$@```````````*2!`````&-Y8VQE7W!U>GIL M92XP+G!D9@4G#@!:4$E44$1&($-!4D\!`%!+!08``````0`!`%(```#$`@`` "```P ` end END ----------- cut here From - Tue Jul 1 22:22:39 2003 Return-Path: Received: from mail.solcon.nl (mail.solcon.nl [212.45.33.11]) by nef.ens.fr (8.12.9/1.01.28121999) with ESMTP id h61KMcko067377 for ; Tue, 1 Jul 2003 22:22:38 +0200 (CEST) Received: from server-1.pragma-net.nl (wc-58016.solcon.nl [212.45.58.16]) by mail.solcon.nl (8.12.9/SQL-8.12.9-10/8.12.5) with ESMTP id h61KMTtV032415; Tue, 1 Jul 2003 22:22:29 +0200 Received: from laptop-3.wxs.nl (server-1.pragma-net.nl [10.100.1.1]) by server-1.pragma-net.nl (8.12.3/8.12.2) with ESMTP id h61KMM0i001546; Tue, 1 Jul 2003 22:22:34 +0200 Message-Id: <5.2.0.9.1.20030701202921.02bdb488@localhost> X-Sender: hagen-mail@localhost X-Mailer: QUALCOMM Windows Eudora Version 5.2.0.9 Date: Tue, 01 Jul 2003 20:40:16 +0200 To: Larry Siebenmann From: Hans Hagen Subject: Re: [metafont] re: elementary puzzle Cc: metafont@ens.fr In-Reply-To: <200306302357.h5UNvFa245154@coxeter.math.toronto.edu> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; format=flowed X-RAVMilter-Version: 8.4.1(snapshot 20020919) (mail.solcon.nl) Hi Larry (i'm not sure if this mail ends up on the metafont list, so forward if needed) Martin Buchmann wrote: > > i can't see it [the strange result], honestly. i tried your examples and did not see something special either >This honest reply soon made me realized that, >to see the weirdness, you need to apply a ***defective*** >PS processor. My defective PS processor is >Adobe Acrobat Distiller version 3.01 both Macintosh and Win. > >It is almost unbelievable that, at version as high as three, >Adobe's Distiller will fumble on a PS file as simple as: a real weird distiller error btw and rather fundamental >%!PS-Adobe-3.0 EPSF-3.0 >%%BoundingBox: -1 -1 101 101 >1 setlinecap 1 setlinejoin > >newpath 100 0 moveto >70 70 lineto >0 0 lineto stroke > >newpath 0 0 moveto >100 0 lineto >100 100 lineto >0 100 lineto >closepath stroke > >showpage >%%EOF 101 1 m 71 71 l 1 1 l 101 1 l 101 101 l 1 101 l s seems that the first stroke gets lost (or second newpath) also, watch the displacement to the first quadrant (one way to get rid of funny rounding errors in (auto clipped) forms and rounding errors in viewing; this kind of bbox mess up and interference is something that made me introduce some hacks in mps -> pdf conversion Hans ------------------------------------------------------------------------- Hans Hagen | PRAGMA ADE | pragma@wxs.nl Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: +31 (0)38 477 53 69 | fax: +31 (0)38 477 53 74 | www.pragma-ade.com ------------------------------------------------------------------------- information: http://www.pragma-ade.com/roadmap.pdf documentation: http://www.pragma-ade.com/showcase.pdf ------------------------------------------------------------------------- From - Wed Jul 2 05:15:35 2003 Return-Path: Received: from coxeter.math.toronto.edu (coxeter.math.toronto.edu [128.100.68.3]) by nef.ens.fr (8.12.9/1.01.28121999) with ESMTP id h623FTko028519 for ; Wed, 2 Jul 2003 05:15:30 +0200 (CEST) Received: (from laurent@localhost) by coxeter.math.toronto.edu (8.11.6p2/8.11.0/UTMath 1.0) id h623FOW215638; Tue, 1 Jul 2003 23:15:24 -0400 Date: Tue, 1 Jul 2003 23:15:24 -0400 From: Larry Siebenmann Message-Id: <200307020315.h623FOW215638@coxeter.math.toronto.edu> To: hobby@plan9.bell-labs.com, laurent@math.toronto.edu, metafont@ens.fr, pragma@wxs.nl re: elementary puzzle Hi Hans, Yes 'my' Distiller bug could be exhibited on page 2 of any MP or PS beginner's manual, so I guess it counts as hazardous to the health of just about everyone. But for now, the most important thing is to learn exactly:- WHICH DISTILLER VERSIONS AND WHICH DISTILLER PLATFORMS ARE AFFECTED? What can you add on that front? Cheers, Laurent S. PS. Let me try to describe the bug in rough terms:- Under some circumstances still not at all clearly elucidated, the PS command 'closepath', as interpreted by Distiller, draws a line from the current point, not to the initial point of the current path as it should, but to the initial point of some path declared earlier on. In a word Distiller is being 'nostalgic'. From - Wed Jul 16 14:54:09 2003 Return-Path: Received: from bop.eps.gda.pl (bop.eps.gda.pl [195.117.84.84]) by nef.ens.fr (8.12.9/1.01.28121999) with ESMTP id h6GCs4ko037890 for ; Wed, 16 Jul 2003 14:54:05 +0200 (CEST) Received: from localhost (bop@localhost) by bop.eps.gda.pl (8.11.6/8.11.6) with ESMTP id h6GCs3L01640; Wed, 16 Jul 2003 14:54:04 +0200 X-Authentication-Warning: bop.eps.gda.pl: bop owned process doing -bs Date: Wed, 16 Jul 2003 14:54:03 +0200 (CEST) From: Boguslaw Jackowski X-X-Sender: bop@bop.eps.gda.pl To: The Discussion List of METAFONT/METAPOST cc: StaW , Jacek Kmiecik Subject: another puzzle (see attached little PDF) Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="-1463811773-808500366-1058360043=:1600" This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. ---1463811773-808500366-1058360043=:1600 Content-Type: TEXT/PLAIN; charset=US-ASCII Recently, Larry presented a nice puzzle for adherents of Adobe Distiller. Now, a puzzle for adherents of TeX, dvips and METAPOST. The following trivial TeX script %%% \input epsf % it is sort of standard, isn't it? \def\SET#1 {\vbox{\hrule \hbox{\epsfysize100mm\epsfbox{oddrules.#1}}}\enspace} \noindent \SET 100 \SET 101 \SET 102 \end %%% yields somewhat suprising results (narrow rectangles are too low) for three EPSes generated by an equally trivial METAPOST program, say, oddrules.mp: %%% beginfig(100); fill unitsquare xscaled 1 yscaled 300 withcolor red; endfig; beginfig(101); fill unitsquare xscaled 10 yscaled 300 withcolor green; endfig; beginfig(102); fill unitsquare xscaled 100 yscaled 300 withcolor blue; endfig; end. %%% Since the resulting PDF is pretty small, I take therefore the liberty to attach it to the letter. Of course, the arithmetic of the epsf package is to be blamed, the more so as we insisted on both Toms (Rokicki and Kacvinski) to improve it. Actually, my colleagues and I use an improved version... Cheers -- Jacko =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Bogus\l{}aw Jackowski: B.Jackowski@GUST.ORG.PL ---------------------------------------------------------------- Hofstadter's Law: It always takes longer than you expect, even when you take into account Hofstadter's Law. =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- ---1463811773-808500366-1058360043=:1600 Content-Type: APPLICATION/pdf; name="oddrules.pdf" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename="oddrules.pdf" JVBERi0xLjIKJcfsj6IKOCAwIG9iago8PC9MZW5ndGggOSAwIFIvRmlsdGVy IC9GbGF0ZURlY29kZT4+CnN0cmVhbQp4nF1SMU4EMQzs8wqXUBDsxHGSFomG DrQdolrBCWm3uLv/Szi5eG9ZpUhmYntmJJ8BPQG2M+55dWf3/CFwujqCX5cD QpaaoPqEXAqwxxhChMu3+3G3nsupl3ER9Ayrgmpg6SBlBbFCe4u0j9DfOfWi +aaStg7cVeGue9OYVRtBZXMd7tgnTvzfHQINd7n6IHR3WHLcE8tGpIJdy7Bk 7j4MZynD8Rg5iGUjrMOwTTx4sAQ1sCVgr9chQItwaVXRJ+F7ACqSlbkHMELl uMkZVjul2TGsWqHL28hBLBthHYZt4sGDBTgD9f2xa17hZdINItKVqRIkwmSL QhBRh5DWJk8lw7S6zwd6fNLtSzWU/DW9udcJ3l07f4usg9RlbmRzdHJlYW0K ZW5kb2JqCjkgMCBvYmoKMjgyCmVuZG9iago3IDAgb2JqCjw8L1R5cGUvUGFn ZS9NZWRpYUJveCBbMCAwIDU5NSA4NDJdCi9Sb3RhdGUgMC9QYXJlbnQgMyAw IFIKL1Jlc291cmNlczw8L1Byb2NTZXRbL1BERiAvVGV4dF0KL0V4dEdTdGF0 ZSAxMiAwIFIKL0ZvbnQgMTMgMCBSCj4+Ci9Db250ZW50cyA4IDAgUgo+Pgpl bmRvYmoKMyAwIG9iago8PCAvVHlwZSAvUGFnZXMgL0tpZHMgWwo3IDAgUgpd IC9Db3VudCAxCj4+CmVuZG9iagoxIDAgb2JqCjw8L1R5cGUgL0NhdGFsb2cg L1BhZ2VzIDMgMCBSCj4+CmVuZG9iago2IDAgb2JqCjw8L1R5cGUvRXh0R1N0 YXRlL05hbWUvUjYvVFIvSWRlbnRpdHkvQkcgNCAwIFIvVUNSIDUgMCBSPj4K ZW5kb2JqCjEyIDAgb2JqCjw8L1I2CjYgMCBSPj4KZW5kb2JqCjEzIDAgb2Jq Cjw8L1IxMQoxMSAwIFI+PgplbmRvYmoKNSAwIG9iago8PC9GaWx0ZXIvRmxh dGVEZWNvZGUKL0Z1bmN0aW9uVHlwZSAwCi9Eb21haW5bMAoxXQovUmFuZ2Vb LTEKMV0KL0JpdHNQZXJTYW1wbGUgOAovU2l6ZVsyNTZdL0xlbmd0aCAxMj4+ c3RyZWFtCnica2gY2QAARMCAAQplbmRzdHJlYW0KZW5kb2JqCjQgMCBvYmoK PDwvRmlsdGVyL0ZsYXRlRGVjb2RlCi9GdW5jdGlvblR5cGUgMAovRG9tYWlu WzAKMV0KL1JhbmdlWzAKMV0KL0JpdHNQZXJTYW1wbGUgOAovU2l6ZVsyNTZd L0xlbmd0aCAxMj4+c3RyZWFtCnicY2AY2QAAAQAAAQplbmRzdHJlYW0KZW5k b2JqCjE0IDAgb2JqCjw8L1N1YnR5cGUvVHlwZTFDL0ZpbHRlci9GbGF0ZURl Y29kZS9MZW5ndGggMTUgMCBSPj5zdHJlYW0KeJxjZGBhYmBkZOQKcnUEAm23 RBBP7oc04w8Zph+yzN3dP8x/6rGu+94q9N1A8Lsu/3ctAQZmRkY37yjn/ILK osz0jBIFDWdNBUNLS3MFx9zUoszkxDwF38SSjNTcxBIgJ0chOD85M7WkUk/B MSdHIQiko1ghKLU4tagsNcXZN8jQwDk/t6C0JLVIwTc/JbUoj4GBgdGQgUGI gYmRkT3gP6NvaADfj47uVT82rNo+n/F7wVXm77t+iogu7u4tkfP1Nu7O7ubI YZ/ffax7/1KOP7PY0zvqDeWyc9jW9T3q3gyEj7rXdXCsymY37Ji2QZ6vdOFP +4W/l835njeN7XfSdPZVXBe45bhYzOfzcC6cwsNzYT4PLwMDAJmUZBoKZW5k c3RyZWFtCmVuZG9iagoxNSAwIG9iagoyODQKZW5kb2JqCjExIDAgb2JqCjw8 L0Jhc2VGb250L1JFQUFBQStGYS9Gb250RGVzY3JpcHRvciAxMCAwIFIvVHlw ZS9Gb250L05hbWUvUjExCi9GaXJzdENoYXIgMC9MYXN0Q2hhciA0OS9XaWR0 aHNbCjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAKMCAwIDAgMCAw IDAgMCAwIDAgMCAwIDAgMCAwIDAgMAowIDAgMCAwIDAgMCAwIDAgMCAwIDAg MCAwIDAgMCAwCjAgNTAwXQovRW5jb2RpbmcvV2luQW5zaUVuY29kaW5nL1N1 YnR5cGUvVHlwZTE+PgplbmRvYmoKMTAgMCBvYmoKPDwvVHlwZS9Gb250RGVz Y3JpcHRvci9Gb250TmFtZS9SRUFBQUErRmEvRm9udEJCb3hbMCAwIDQxOSA2 NjZdL0ZsYWdzIDQKL0FzY2VudCA2NjYKL0NhcEhlaWdodCA2NjYKL0Rlc2Nl bnQgMAovSXRhbGljQW5nbGUgMAovU3RlbVYgNjIKL01pc3NpbmdXaWR0aCAz MzMKL0NoYXJTZXQoL29uZSkvRm9udEZpbGUzIDE0IDAgUj4+CmVuZG9iagoy IDAgb2JqCjw8L1Byb2R1Y2VyKEFGUEwgR2hvc3RzY3JpcHQgOC4wKQovQ3Jl YXRpb25EYXRlKEQ6MjAwMzA3MTYxMzQ0MjYpCi9Nb2REYXRlKEQ6MjAwMzA3 MTYxMzQ0MjYpCi9DcmVhdG9yKGR2aXBzXChrXCkgNS45MGEgQ29weXJpZ2h0 IDIwMDIgUmFkaWNhbCBFeWUgU29mdHdhcmUpCi9UaXRsZShvZGRydWxlcy5k dmkpPj5lbmRvYmoKeHJlZgowIDE2CjAwMDAwMDAwMDAgNjU1MzUgZiAKMDAw MDAwMDYwNSAwMDAwMCBuIAowMDAwMDAxOTM0IDAwMDAwIG4gCjAwMDAwMDA1 NDYgMDAwMDAgbiAKMDAwMDAwMDkzNyAwMDAwMCBuIAowMDAwMDAwNzg5IDAw MDAwIG4gCjAwMDAwMDA2NTMgMDAwMDAgbiAKMDAwMDAwMDM4NiAwMDAwMCBu IAowMDAwMDAwMDE1IDAwMDAwIG4gCjAwMDAwMDAzNjcgMDAwMDAgbiAKMDAw MDAwMTczMSAwMDAwMCBuIAowMDAwMDAxNDc0IDAwMDAwIG4gCjAwMDAwMDA3 MjcgMDAwMDAgbiAKMDAwMDAwMDc1NyAwMDAwMCBuIAowMDAwMDAxMDg0IDAw MDAwIG4gCjAwMDAwMDE0NTQgMDAwMDAgbiAKdHJhaWxlcgo8PCAvU2l6ZSAx NiAvUm9vdCAxIDAgUiAvSW5mbyAyIDAgUgo+PgpzdGFydHhyZWYKMjEyNwol JUVPRgo= ---1463811773-808500366-1058360043=:1600-- From - Thu Jul 17 11:03:15 2003 Return-Path: Received: from coxeter.math.toronto.edu (coxeter.math.toronto.edu [128.100.68.3]) by nef.ens.fr (8.12.9/1.01.28121999) with ESMTP id h6H93Cko020136 for ; Thu, 17 Jul 2003 11:03:12 +0200 (CEST) Received: (from laurent@localhost) by coxeter.math.toronto.edu (8.11.6p2/8.11.0/UTMath 1.0) id h6H937T107884; Thu, 17 Jul 2003 05:03:07 -0400 Date: Thu, 17 Jul 2003 05:03:07 -0400 From: Larry Siebenmann Message-Id: <200307170903.h6H937T107884@coxeter.math.toronto.edu> To: B.Jackowski@GUST.org.pl, metafont@ens.fr, rokicki@cs.stanford.edu Subject: re: another puzzle Hi Jacko, The specials generated by the *vertical* "\epsfysize 100mm" command etc. of Rokicki's epsf.tex in your example generate these DVI specials with real width specification 'rwi' that are *integral*: \special{PSfile=oddrules.100 llx=0 lly=0 urx=1 ury=300 rwi=9} \special{PSfile=oddrules.101 llx=0 lly=0 urx=10 ury=300 rwi=94} \special{PSfile=oddrules.102 llx=0 lly=0 urx=100 ury=300 rwi=944} What we really want is precise *height* specifications: \special{PSfile=oddrules.100 llx=0 lly=0 urx=1 ury=300 rhi=283.467} \special{PSfile=oddrules.101 llx=0 lly=0 urx=10 ury=300 rhi=283.467} \special{PSfile=oddrules.102 llx=0 lly=0 urx=100 ury=300 rhi=283.467} Here 283.467bp = 100mm and rhi means "real height" whereas 'rwi' means real width. So the bug seems to be a silly oversight and easy to fix. On principle, it seems advisable to: 1) put in the special command the bigger of the two dimensions rhi, rwi, thus commanding uniform scaling using the one that offers geater precision. 2) specify the real dimension (rwi or rhi) in a precise decimal form. Rokicki went to great lengths to avoid floating point multiplications and divisions -- presumably to assure that the dvi output genarated by epsf.tex will forever and everywhere give the same result. Hopefully his tricky integer arithmetic is not part of the problem!? On the other hand, fixing this bug naively would cause zillions of TeX typescripts to compile differently (say with different page breaks), which is the sort of thing I believe Rokicki labored with integer arithmetic to avoid! What to do? Perhaps create a new command such as \HiEPSFPrecision to activate the bugfix and incidentally the use of '%%HiResBoundingBox' comments when present. That would avoid damaging the published e-literature. This would be a good occasion to document in dvips.tex the relevant \special syntax. Cheers, Laurent S. From - Thu Jul 24 13:44:28 2003 Return-Path: Received: from mwinf0203.wanadoo.fr (smtp7.wanadoo.fr [193.252.22.29]) by nef.ens.fr (8.12.9/1.01.28121999) with ESMTP id h6OBiQko067148 for ; Thu, 24 Jul 2003 13:44:26 +0200 (CEST) Received: from wwinf0202 (wwinf0202 [172.22.133.29]) by mwinf0203.wanadoo.fr (SMTP Server) with ESMTP id 3B1F8100013F for ; Thu, 24 Jul 2003 13:44:26 +0200 (CEST) Message-ID: <12774826.1059047066229.JavaMail.www@wwinf0202> From: Abderrazak MOUMENI Reply-To: blancdecoeur@wanadoo.fr To: metafont@ens.fr Subject: comprendre la signification de exitif quand il est utiliser en dehors d'une boucle for , for sufixes et forever Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_41593_20803829.1059047066227" Date: Thu, 24 Jul 2003 13:44:26 +0200 (CEST) ------=_Part_41593_20803829.1059047066227 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable j'=E9tudie actuellement m=E9tafont , et j'aimerais comprendre les diff=E9re= nte r=F4les que peut jouer la primitive exitif en lisant les manuels sur metafont et metapost , j'ai pu comprendre que exitif < bolean expression> est une primitive qui a pour but de sortir de la boucle forever d=E8s que < bolean expression> poss=E8de la valeur true or exitif est aussi pr=E9sent dans la macro hide ( text t ) =3D exitif nume= ric begingroup t endgroup , et pourtant il n'y a pas la pr=E9sence de forever, donc j'aimerais savoir quel autre r=F4le peut jouer la primitive exitif ( notammant pour la macro hide ) afin de comprendre toute les subtilit=E9 merci de votre attention et bonne journ=E9e =E0 tous A M ------=_Part_41593_20803829.1059047066227 Content-Type: text/html Content-Transfer-Encoding: quoted-printable j'=E9tudie actuellement m=E9tafont , et j'aimerais comprendre les diff=E9re= nte
r=F4les que peut jouer la primitive exitif

en lisant les manu= els sur metafont et metapost , j'ai pu comprendre que
exitif < bolean= expression> est une primitive qui a pour but de sortir de la
boucle = forever d=E8s que < bolean expression> poss=E8de la valeur true
or exitif est aussi pr=E9sent dans la macro hide ( text t ) =3D exitif nu= meric
begingroup t endgroup , et pourtant il n'y a pas la pr=E9sence de = forever,
donc j'aimerais savoir quel autre r=F4le peut jouer la primitiv= e exitif (
notammant pour la macro hide ) afin de comprendre toute les s= ubtilit=E9

merci de votre attention et bonne journ=E9e =E0 tous
A= M ------=_Part_41593_20803829.1059047066227-- From - Thu Jul 24 13:44:39 2003 Return-Path: Received: from mwinf0203.wanadoo.fr (smtp7.wanadoo.fr [193.252.22.29]) by nef.ens.fr (8.12.9/1.01.28121999) with ESMTP id h6OBiQko067149 for ; Thu, 24 Jul 2003 13:44:26 +0200 (CEST) Received: from wwinf0202 (wwinf0202 [172.22.133.29]) by mwinf0203.wanadoo.fr (SMTP Server) with ESMTP id 8265510001EE for ; Thu, 24 Jul 2003 13:44:26 +0200 (CEST) Message-ID: <19082628.1059047066522.JavaMail.www@wwinf0202> From: Abderrazak MOUMENI Reply-To: blancdecoeur@wanadoo.fr To: metafont@ens.fr Subject: comprendre la signification de exitif quand il est utiliser en dehors d'une boucle for , for sufixes et forever Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_41594_25256300.1059047066519" Date: Thu, 24 Jul 2003 13:44:26 +0200 (CEST) ------=_Part_41594_25256300.1059047066519 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable j'=E9tudie actuellement m=E9tafont , et j'aimerais comprendre les diff=E9re= nte r=F4les que peut jouer la primitive exitif en lisant les manuels sur metafont et metapost , j'ai pu comprendre que exitif < bolean expression> est une primitive qui a pour but de sortir de la boucle forever d=E8s que < bolean expression> poss=E8de la valeur true or exitif est aussi pr=E9sent dans la macro hide ( text t ) =3D exitif nume= ric begingroup t endgroup , et pourtant il n'y a pas la pr=E9sence de forever, donc j'aimerais savoir quel autre r=F4le peut jouer la primitive exitif ( notammant pour la macro hide ) afin de comprendre toute les subtilit=E9 merci de votre attention et bonne journ=E9e =E0 tous A M ------=_Part_41594_25256300.1059047066519 Content-Type: text/html Content-Transfer-Encoding: quoted-printable j'=E9tudie actuellement m=E9tafont , et j'aimerais comprendre les diff=E9re= nte
r=F4les que peut jouer la primitive exitif

en lisant les manu= els sur metafont et metapost , j'ai pu comprendre que
exitif < bolean= expression> est une primitive qui a pour but de sortir de la
boucle = forever d=E8s que < bolean expression> poss=E8de la valeur true
or exitif est aussi pr=E9sent dans la macro hide ( text t ) =3D exitif nu= meric
begingroup t endgroup , et pourtant il n'y a pas la pr=E9sence de = forever,
donc j'aimerais savoir quel autre r=F4le peut jouer la primitiv= e exitif (
notammant pour la macro hide ) afin de comprendre toute les s= ubtilit=E9

merci de votre attention et bonne journ=E9e =E0 tous
A= M ------=_Part_41594_25256300.1059047066519-- From - Fri Jul 25 12:03:35 2003 Return-Path: Received: from klftfs02.tn.tudelft.nl (klftfs02.tn.tudelft.nl [130.161.204.3]) by nef.ens.fr (8.12.9/1.01.28121999) with ESMTP id h6PA3Uko066852 for ; Fri, 25 Jul 2003 12:03:30 +0200 (CEST) Received: from klftpc53.free.fr (klftdh02.tn.tudelft.nl [130.161.206.3]) by klftfs02.tn.tudelft.nl (8.12.8/8.12.8) with ESMTP id h6PA3UJR021785 for ; Fri, 25 Jul 2003 12:03:30 +0200 Message-Id: <5.2.1.1.0.20030725113739.00a95cc0@imap.free.fr> X-Sender: christophe.grandsire@imap.free.fr (Unverified) X-Mailer: QUALCOMM Windows Eudora Version 5.2.1 Date: Fri, 25 Jul 2003 12:03:29 +0200 To: metafont@ens.fr From: Christophe Grandsire Subject: Re: [metafont] comprendre la signification de exitif quand il est utiliser en dehors d'une boucle for , for sufixes et forever In-Reply-To: <12774826.1059047066229.JavaMail.www@wwinf0202> Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1"; format=flowed Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by nef.ens.fr id h6PA3Uko066852 En réponse à Abderrazak MOUMENI : >or exitif est aussi présent dans la macro hide ( text t ) = exitif numeric >begingroup t endgroup , et pourtant il n'y a pas la présence de forever, >donc j'aimerais savoir quel autre rôle peut jouer la primitive exitif ( >notammant pour la macro hide ) afin de comprendre toute les subtilité Salut ! Je suis moi aussi en train d'étudier METAFONT (et le résultat de mes études est disponible à http://metafont.tutorial.free.fr). En effet, je suis en train d'écrire un tutoriel online pour METAFONT :) . Il est loin d'être terminé, mais j'engage quand même tout le monde à aller le voir :)) . Pour ta question, le truc de la macro "hide" ne réside pas dans le sens de "exitif". Le *seul* sens de "exitif" est bien de sortir d'une boucle si une condition est réalisée. Pourquoi est-il utilisé dans ce cas alors ? Regardons de plus près la définition de "hide" : def hide(text t) = exitif numeric begingroup t; endgroup; enddef; La partie "exitif numeric" signifie donc : "sortir de la boucle la plus intérieure lorsque ce qui se trouve après est de type "numeric". Ce qui se trouve après est "begingroup, ce qui signifie que METAFONT doit d'abord évaluer ce qui se trouve dans le groupe "begingroup ... endgroup;". Le truc ici est ce que contient ce groupe : "t;". Or, dans un groupe, la dernière instruction ne doit *pas* être suivie de ";" (parce que le groupe est l'équivalent d'une seule instruction, le ";" la terminant doit être mis *après* "enddef"). Or ici le groupe contient "t;". Qu'est-ce que ça veut bien dire ? Simple : la dernière instruction du groupe est !!! Dans un groupe , "t;" signifie "t; ". Cela signifie que dans le groupe, METAFONT évalue d'abord les instructions contenues dans t, puis l'instruction vide ! Et comme cette instruction est la dernière du groupe, le résultat du groupe est l'expression (un résultat parfaitement valide pour METAFONT), *quel que soit t* !!! Ce qui veut dire que le résultat de "hide" est *toujours* : exitif numeric ; !!! Or n'est pas une expression de type "numeric", le résultat de "numeric " est "false", et cet "exitif" est donc *toujours ignoré* par METAFONT. Donc qu'il soit à l'intérieur d'une boucle ou pas n'a pas d'importance, puisque par construction cet "exitif" ne servira *jamais* ! Son seul rôle est d'être ignoré par METAFONT, ce qui fait que ce qui est contenu dans t a été évalué, mais caché de l'extérieur. C'est un truc très spécial, mais assez intéressant à comprendre, car il vous donne une bonne idée de la façon dont METAFONT travaille :))) . S'il y a quelque chose que tu n'as pas compris, n'hésite pas à répondre ! :) Christophe Grandsire. http://rainbow.conlang.free.fr You need a straight mind to invent a twisted conlang. From - Sun Jul 27 09:01:15 2003 Return-Path: Received: from coxeter.math.toronto.edu (coxeter.math.toronto.edu [128.100.68.3]) by nef.ens.fr (8.12.9/1.01.28121999) with ESMTP id h6R71Cko047032 for ; Sun, 27 Jul 2003 09:01:12 +0200 (CEST) Received: (from laurent@localhost) by coxeter.math.toronto.edu (8.11.6p2/8.11.0/UTMath 1.0) id h6R719u160166; Sun, 27 Jul 2003 03:01:09 -0400 Date: Sun, 27 Jul 2003 03:01:09 -0400 From: Larry Siebenmann Message-Id: <200307270701.h6R719u160166@coxeter.math.toronto.edu> To: laurent@math.toronto.edu, metafont@ens.fr Subject: hide Chers artistes, Le but de hide(t), o`u t est une s'erie de commandes, est de d' ex'ecuter t d'une mani`ere qui est acceptable `a peu pr`es n'importe o`u -- par exemple `a l'int'erieur m^eme d'une expression num'erique. Quant `a l'ex'eg`ese (par Christophe ou page 262) de: def hide(text t) = exitif numeric begingroup t; endgroup; enddef; on se demande surtout si on peut faire plus clair et plus simple. Or, Knuth (qui n'est pas toujours sadique;-) est d'accord (18.13 page 167) pour: def gobble primary g = enddef; %% gobble avale son argument et ne laisse *aucune* trace %% au niveau syntactique (comme \gobble dans le TeXbook) %% m^eme pas une expression vide! def hide(text t) = gobble begingroup t; endgroup enddef; %% Voir commentaires de Knuth en App A, page 250 %% qui surtout supposent une lecture rapproch'ee %% du chapitre 17 qui explique que %% "begingroup ... ; endgroup" %% ressemble fortement `a une fonction qui retourne %% 'eventuellement vide. %% Attention, t a le droit de changer l'environement %% (les variables etc.) ! Metafont comporte un syntaxe plus subtile que TeX; c'est un calvaire pour le d'ebutant. J'encourage Christophe `a en faciliter l'apprentissage ! Personnellement je trouve encore la gestion des variables difficile ... Amicalement, Laurent S. English summary: "hide(t)" will execute a sequence of commands t in a manner that is acceptable almost anywhere -- say in the middle of an expression. To understand 'hide' in the simplest known way, I suggest you read Chapitre 17; 18.13 page 167; App A page 250; page 252 --- in that order. From - Mon Jul 28 11:01:50 2003 Return-Path: Received: from klftfs02.tn.tudelft.nl (klftfs02.tn.tudelft.nl [130.161.204.3]) by nef.ens.fr (8.12.9/1.01.28121999) with ESMTP id h6S91kko062956 for ; Mon, 28 Jul 2003 11:01:47 +0200 (CEST) Received: from klftpc53.free.fr (klftdh02.tn.tudelft.nl [130.161.206.3]) by klftfs02.tn.tudelft.nl (8.12.8/8.12.8) with ESMTP id h6S91jJR011239 for ; Mon, 28 Jul 2003 11:01:46 +0200 Message-Id: <5.2.1.1.0.20030728105957.00a96920@imap.free.fr> X-Sender: christophe.grandsire@imap.free.fr (Unverified) X-Mailer: QUALCOMM Windows Eudora Version 5.2.1 Date: Mon, 28 Jul 2003 11:01:43 +0200 To: metafont@ens.fr From: Christophe Grandsire (by way of Christophe Grandsire ) Subject: Re: [metafont] hide Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1"; format=flowed Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by nef.ens.fr id h6S91kko062956 Je viens de me rendre compte que j'ai envoyé ce mail à Larry uniquement alors que je voulais l'envoyer à la liste de diffusion :((( . Désolé Larry :( . En réponse à Larry Siebenmann : >def hide(text t) > = exitif numeric begingroup t; endgroup; enddef; > >on se demande surtout si on peut faire plus clair et plus >simple. Or, Knuth (qui n'est pas toujours sadique;-) est >d'accord (18.13 page 167) pour: > >def gobble primary g = enddef; > %% gobble avale son argument et ne laisse *aucune* trace > %% au niveau syntactique (comme \gobble dans le TeXbook) > %% m^eme pas une expression vide! > >def hide(text t) = gobble begingroup t; endgroup enddef; > %% Voir commentaires de Knuth en App A, page 250 > %% qui surtout supposent une lecture rapproch'ee > %% du chapitre 17 qui explique que > %% "begingroup ... ; endgroup" > %% ressemble fortement `a une fonction qui retourne > %% 'eventuellement vide. > %% Attention, t a le droit de changer l'environement > %% (les variables etc.) ! En effet, mais il précise aussi que cette syntaxe est légèrement moins efficace la définition originale de "hide" utilisant "exitif". A mon avis, c'est parce que "gobble" est une macro de plain.mf et non une primitive de METAFONT. Cela veut dire que METAFONT doit d'abord la remplacer par la série d'instruction qu'elle définit, puis les évaluer. Cette opération prend plus de temps que l'exécution d'une primitive. Comme de plus "gobble" est remplacé par rien du tout, cette opération de remplacement est complètement inutile et donc ne fait que perdre du temps et de la mémoire (pas un problème de nos jours, mais il faut se rappeler que METAFONT est apparu au temps où 64Ko de RAM était un luxe réservé aux plus riches, et où le temps passé sur un ordinateur était chronométré au plus précis car cher :) ). Il y a toujours une raison pour la syntaxe parfois mystérieuse de certaines macros de METAFONT :) . > Metafont comporte un syntaxe plus subtile que TeX; Je ne suis pas sûr. Pour écrire le tutoriel disponible à http://metafont.tutorial.free.fr, je n'ai à ma disposition que le METAFONTbook de Knuth et les sources disponibles dans la distribution MiKTeX. Or je m'en sors sans problème, alors que 6 mois auparavant j'était un débutant complet. Or j'ai essayé la même chose avec TeX lui-même (j'écris des packages et des classes pour LaTeX, donc apprendre TeX est primordial) et je suis encore incapable de comprendre autre chose que les commandes simples. METAFONT a beaucoup de points communs avec des langages de programmation que j'ai déjà étudié, tandis que TeX est quelque chose de complètement original, et à part LaTeX, je n'ai aucun point de comparaison pour m'aider à comprendre comment il marche (je n'ai toujours pas compris, par exemple, comment fonctionne \expandafter :((( ). Je trouve la syntaxe de METAFONT plus simple que celle de TeX. Mais TeX est d'un tel niveau que ça ne veut pas dire que METAFONT est simple dans l'absolu ! :) >c'est un calvaire pour le d'ebutant. Je suis d'accord. Mais je pense que c'est plus dû au manque de matériel didactique qu'à la complexité inhérente de METAFONT. C'est pourquoi j'essaie de résoudre ce problème en fournissant ce matériel didactique qui manque (après plus de 20 ans que le langage existe, il était temps de corriger cette erreur ! :) ). > J'encourage >Christophe `a en faciliter l'apprentissage ! Merci ! :) >Personnellement je trouve encore la gestion >des variables difficile ... Vraiment ? Je n'ai pas de problème avec ça. Que trouves-tu difficile dans la gestion des variables ? (ce sera le sujet principal de la leçon 3 de mon tutoriel. Mais j'en suis encore à écrire la leçon 2 :)) ) Salut à tous ! :) Christophe Grandsire. http://rainbow.conlang.free.fr You need a straight mind to invent a twisted conlang. From - Tue Jul 29 07:09:55 2003 Return-Path: Received: from coxeter.math.toronto.edu (coxeter.math.toronto.edu [128.100.68.3]) by nef.ens.fr (8.12.9/1.01.28121999) with ESMTP id h6T59oko040148 for ; Tue, 29 Jul 2003 07:09:51 +0200 (CEST) Received: (from laurent@localhost) by coxeter.math.toronto.edu (8.11.6p2/8.11.0/UTMath 1.0) id h6T59oX74910; Tue, 29 Jul 2003 01:09:50 -0400 Date: Tue, 29 Jul 2003 01:09:50 -0400 From: Larry Siebenmann Message-Id: <200307290509.h6T59oX74910@coxeter.math.toronto.edu> To: laurent@math.toronto.edu, metafont@ens.fr Subject: les variables Cher Christophe > j'essaie de r'esoudre ce probl`eme en fournissant ce mat'eriel > didactique qui manque (apr`es plus de 20 ans que le langage > existe, il 'etait temps de corriger cette erreur ! Oui, c'est effectivement curieux, car il y a des douzaines de livres didactiques sur TeX. Mais pe c'est seulement avec l'arriv'ee du graphisme vectoriel de metapost que les centaines de milliers d'auteurs qui affectionnent TeX ont de solides raisons d'aborder ce langage. >> je trouve encore la gestion des variables difficile ... > Que trouves-tu difficile dans la gestion des variables ? Difficult'e syntactique. D'abord il faut comprendre la "tokenisation" `a fond (Chap. 6), laquelle est aussi subtile que dans TeX. Par contre, dans TeX, la tokenisation d'un nom de variable d'emarre avec l'"escape" \ et continue par un max de "lettres" -- ce qui fait intervenir une toute-petite fraction de l'engrenage de "tokenisation". Il est vrai que dans metafont (comme dans TeX) un token peut ^etre le nom d'un variable -- quitte `a ^etre un "tag" c'est `a dire '^etre ni un token r'eserv'e par metafont lui-m^eme ni un "token num'erique". Mais un nom de variable de metafont peut aussi ^etre une suite convenable de tokens. Knuth agresse imm'ediatement le lecteur d'ebutant avec du Backus-Naur pour sp'ecifier quelles suites: ---> ---> | | ---> | [ ] Du pseudo-code pas tr`es parlant pour le d'ebutant non-programmeur ! Je serais tent'e d'essayer plut^ot une sp'ecification simplifi'ee des suites finies de tokens qui d'esignent un variable:- Le premier token est un tag, et les autres sont soit "tags" soit "tokens num'eriques". Mais il faudrait, pour que cela tienne debout, utiliser la notion (voir TeXbook) de "syst`eme digestif" de metafont qui va au pr'ealable convertir ou en "token num'erique". J'ai trouv'e que le manuel de metapost (Hobby) clarifie souvent le metafont book, malgr'e le fait qu'il est encore plus succinct. Et l'utilit'e de tout cela ?? Entre autres, la r'ealisation des notions classiques d'"array" et "data structure", d'ailleurs dynamiques et r'ecursives. > METAFONT a beaucoup de points communs avec des langages > de programmation que j'ai d'ej`a 'etudi'e Maple ? Fermat ? Un peu de linguistique historique et comparative stp! Cordialement, Laurent Siebenmann English summary: Maybe a view if metafont's digestive system would let us understand the general variable designation to be merely a finite sequence of metafont tokens, the first a tag, and the rest either tag or numeric token. From - Tue Jul 29 09:45:04 2003 Return-Path: Received: from smtp-out.tiscali.be (spoolo2.tiscali.be [62.235.13.211]) by nef.ens.fr (8.12.9/1.01.28121999) with ESMTP id h6T7j2ko060177 for ; Tue, 29 Jul 2003 09:45:02 +0200 (CEST) Received: from [62.235.116.136] (helo=adelmotte.largevision.com) by smtp-out.tiscali.be with esmtp (Tiscali) id 19hPAL-0008AV-00 for ; Tue, 29 Jul 2003 09:45:01 +0200 Message-Id: <5.0.2.1.2.20030729093831.00a0b950@pop3.pro.tiscali.be> X-Sender: tpm17153@pop3.pro.tiscali.be X-Mailer: QUALCOMM Windows Eudora Version 5.0.2 Date: Tue, 29 Jul 2003 09:43:45 +0200 To: liste metafont From: Alain Delmotte Subject: Re: [metafont] hide In-Reply-To: <5.2.1.1.0.20030728105957.00a96920@imap.free.fr> Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1"; format=flowed Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by nef.ens.fr id h6T7j2ko060177 Bonjour, A 11:01 28/07/2003 +0200, vous avez écrit : >Je ne suis pas sûr. Pour écrire le tutoriel disponible à >http://metafont.tutorial.free.fr, je n'ai à ma disposition que le >METAFONTbook de Knuth et les sources disponibles dans la distribution MiKTeX. Du point de vue manuels et formations n'oublier pas l'excellent livre de Bernard Desgraupes: METAFONT Guide pratique. Vuibert 1999. Alain Delmotte avenue du Marathon, 6 B 1348 Louvain-la-Neuve Belgique tél./fax 00 (32) 10 45 44 44 tél. privé 00 (32) 10 45 11 92 From - Tue Jul 29 13:45:42 2003 Return-Path: Received: from klftfs02.tn.tudelft.nl (klftfs02.tn.tudelft.nl [130.161.204.3]) by nef.ens.fr (8.12.9/1.01.28121999) with ESMTP id h6TBjbko099956 for ; Tue, 29 Jul 2003 13:45:37 +0200 (CEST) Received: from klftpc53.free.fr (klftdh02.tn.tudelft.nl [130.161.206.3]) by klftfs02.tn.tudelft.nl (8.12.8/8.12.8) with ESMTP id h6TBjbJR031036 for ; Tue, 29 Jul 2003 13:45:37 +0200 Message-Id: <5.2.1.1.0.20030729132152.00aa51b0@imap.free.fr> X-Sender: christophe.grandsire@imap.free.fr (Unverified) X-Mailer: QUALCOMM Windows Eudora Version 5.2.1 Date: Tue, 29 Jul 2003 13:45:36 +0200 To: metafont@ens.fr From: Christophe Grandsire Subject: Re: [metafont] les variables In-Reply-To: <200307290509.h6T59oX74910@coxeter.math.toronto.edu> Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1"; format=flowed Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by nef.ens.fr id h6TBjbko099956 En réponse à Larry Siebenmann : >Oui, c'est effectivement curieux, car il y a des douzaines de >livres didactiques sur TeX. Beaucoup plus de gens ont besoin d'un outil de mise en page plutôt que d'un programme de créations de polices de caractères. Il est donc logique que METAFONT soit resté dans l'ombre de son "grand frère". > Mais pe c'est seulement >avec l'arriv'ee du graphisme vectoriel de metapost que >les centaines de milliers d'auteurs qui affectionnent TeX >ont de solides raisons d'aborder ce langage. Personellement, METAPOST me laisse froid. Je ne suis pas très intéressé par le graphisme. METAFONT m'intéresse uniquement parce que je veux créer mes propres fontes. Donc c'est bien l'usage originel de METAFONT qui m'intéresse, pas sa descendance :) . >Et l'utilit'e de tout cela ?? Entre autres, la r'ealisation des >notions classiques d'"array" et "data structure", d'ailleurs >dynamiques et r'ecursives. J'ai trouvé que pour le débutant, la simple comparaison avec le langage des mathématiques permettait d'expliquer parfaitement la syntaxe des variables de METAFONT. Elle est simplement la même que celle des variables qu'on trouve en maths :) (jusqu'à la possibilité d'utiliser l'apostrophe à la fin d'une variable :) ). C'est évidemment une simplification des choses, mais c'est une simplification de grande valeur éducative (et elle ne peut provoquer d'erreurs de syntaxe). Je ne pense pas aborder la notion de "système digestif" dans mon tutoriel. Ca n'a aucun intérêt pour les débutants. >Maple ? Fermat ? Un peu de linguistique >historique et comparative stp! Hé hé... En effet, le fait que METAFONT résolve les équations lui-même (et que = ne soit pas une opération d'assignation) le rend semblable à Maple (qui a aussi une syntaxe de variables semblable). Mais pour beaucoup de choses, je trouve que METAFONT tient beaucoup à PASCAL, que j'ai étudié à l'ESPCI, du moins les grandes lignes de sa structure. Ceci est peu étonnant vu que le source de METAFONT est écrit en PASCAL :) . La principale différence, bien entendu, est l'aspect descriptif de METAFONT qui prime, contrairement à PASCAL qui est impératif. Christophe Grandsire. http://rainbow.conlang.free.fr You need a straight mind to invent a twisted conlang. From - Tue Jul 29 14:01:31 2003 Return-Path: Received: from klftfs02.tn.tudelft.nl (klftfs02.tn.tudelft.nl [130.161.204.3]) by nef.ens.fr (8.12.9/1.01.28121999) with ESMTP id h6TC1Sko002451 for ; Tue, 29 Jul 2003 14:01:28 +0200 (CEST) Received: from klftpc53.free.fr (klftdh02.tn.tudelft.nl [130.161.206.3]) by klftfs02.tn.tudelft.nl (8.12.8/8.12.8) with ESMTP id h6TC1RJR031413 for ; Tue, 29 Jul 2003 14:01:27 +0200 Message-Id: <5.2.1.1.0.20030729134556.00a943a0@imap.free.fr> X-Sender: christophe.grandsire@imap.free.fr (Unverified) X-Mailer: QUALCOMM Windows Eudora Version 5.2.1 Date: Tue, 29 Jul 2003 14:01:27 +0200 To: liste metafont From: Christophe Grandsire Subject: Re: [metafont] hide In-Reply-To: <5.0.2.1.2.20030729093831.00a0b950@pop3.pro.tiscali.be> References: <5.2.1.1.0.20030728105957.00a96920@imap.free.fr> Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1"; format=flowed Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by nef.ens.fr id h6TC1Sko002451 En réponse à Alain Delmotte : >Du point de vue manuels et formations n'oublier pas >l'excellent livre de Bernard Desgraupes: >METAFONT Guide pratique. Vuibert 1999. Il est sur ma liste de bouquins à acheter en priorité :) . Malheureusement, j'habite aux Pays-Bas et trouver un livre français sur METAFONT est mission impossible ici :((( . Et je ne peux (ni ne veux) pas commander par Internet (j'ai pas de carte de crédit et je n'ai pas l'intention d'en prendre une). Et commander par les moyens normaux coûte trop cher en frais de port. Mais je serai en France dans une semaine, donc je vais regarder si je peux le trouver (et s'il est pas trop cher :( . Je suis sans emploi en ce moment :( ). Ca m'aiderait énormément avec le tutoriel (le METAFONTbook est une mine d'infos, mais il n'est en effet pas facile d'accès). De toute façon, ce livre n'existe qu'en français, ce qui limite énormément le nombre de gens qu'il peut atteindre, et donc ne sera jamais *le* livre qui a rendu METAFONT accessible à tous :) . C'est pour ça que j'écris mon tutoriel en anglais, parce que la plupart des gens dont je sais qu'il le liront (les participants de ma liste de diffusion (La)TeX/METAFONT-for-Conlangers: http://groups.yahoo.com/group/latex-for-conlangers/ (qui malgré son nom discute en majorité de METAFONT et non de (La)TeX, et est ouvert à tous, pas seulement aux créateurs de langues :) ) n'ont qu'une seule langue en commun, et c'est l'anglais. Je prévois de faire une version française, mais pas avant que la version anglaise soit terminée. C'est quand même marrant que les deux seules personnes dans le monde qui aient décidé d'écrire quelque chose pour rendre METAFONT plus accessible (Bernard Desgraupes et votre serviteur :) ) soient toutes deux françaises :)) . Je me demande si l'intérêt pour la typographie (et en particulier la typographie électronique) est une activité spécialement particulièrement française... C'est vrai en tout case que la majorité des pages sur la typographie sur Internet sont en français... Christophe Grandsire. http://rainbow.conlang.free.fr You need a straight mind to invent a twisted conlang. From - Wed Jul 30 10:31:01 2003 Return-Path: Received: from aitana.cpd.ua.es (aitana.cpd.ua.es [193.145.233.5]) by nef.ens.fr (8.12.9/1.01.28121999) with ESMTP id h6U8Uuko077415 for ; Wed, 30 Jul 2003 10:30:56 +0200 (CEST) Received: from aitana.cpd.ua.es (aitana.cpd.ua.es [193.145.233.5]) by aitana.cpd.ua.es (8.9.3p2/8.9.3) with ESMTP id KAA75740 for ; Wed, 30 Jul 2003 10:30:55 +0200 Received: from worldonline.es ([172.17.228.88]) by aitana.cpd.ua.es (8.9.3p2/8.9.3) with ESMTP id KAA80640 for ; Wed, 30 Jul 2003 10:30:54 +0200 Message-ID: <3F278240.CFE09058@worldonline.es> Date: Wed, 30 Jul 2003 10:30:56 +0200 From: Daniel =?iso-8859-1?Q?Rodr=EDguez?= X-Mailer: Mozilla 4.5 [es] (Win98; I) X-Accept-Language: es MIME-Version: 1.0 To: metafont@ens.fr Subject: unsuscribe metafont References: <5.0.2.1.2.20030729093831.00a0b950@pop3.pro.tiscali.be> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit From - Thu Jul 31 07:48:00 2003 Return-Path: Received: from hotmail.com (bay1-f41.bay1.hotmail.com [65.54.245.41]) by nef.ens.fr (8.12.9/1.01.28121999) with ESMTP id h6V5ltko066782 for ; Thu, 31 Jul 2003 07:47:55 +0200 (CEST) Received: from mail pickup service by hotmail.com with Microsoft SMTPSVC; Wed, 30 Jul 2003 22:47:54 -0700 Received: from 168.167.53.61 by by1fd.bay1.hotmail.msn.com with HTTP; Thu, 31 Jul 2003 05:47:53 GMT X-Originating-IP: [168.167.53.61] X-Originating-Email: [rachnagrover@hotmail.com] From: "Rachna Grover" To: metafont@ens.fr Subject: [metafont] unsuscribe metafont Date: Thu, 31 Jul 2003 05:47:53 +0000 Mime-Version: 1.0 Content-Type: text/html Message-ID: X-OriginalArrivalTime: 31 Jul 2003 05:47:54.0235 (UTC) FILETIME=[4957FCB0:01C35727]


 



Protect your PC - Click here for McAfee.com VirusScan Online