[M3devel] Fwd: Output from "cron" command

Mika Nystrom mika at async.caltech.edu
Thu Dec 18 04:33:46 CET 2008


I don't know what kind of a programming Superman you are.

I switched from C to Modula-3 in 1999 because I was tired of having
a new crop of bugs every time my C programs touched a new OS.  Or,
on Linux, every time there was a new version of Linux out (i.e.,
every day, twice on Sundays?).

Yes, they were in fact flaws in my code.  I don't doubt that there
could exist bug-free portable programs coded in C that do what my
programs were supposed to do.  But in my experience, very very few
programmers know C well enough to write truly portable programs.
I'm also not one of them even though I've written more C than
I care to remember.  In Modula-3, it just seems natural...in
fact it takes effort to write a program that *isn't* portable,
the opposite of C.

In fact, when I was teaching CS2 at Caltech, our CS1-2-3 sequence
was sometimes known as the "Useless Languages Sequence" (it was
supposed to be intro to programming, program construction/basic
algorithms and data structures, and software engineering).  CS1 was
MIT's 6.001 (in Scheme); CS2 I taught in Modula-3; and someone
taught CS3 in Eiffel.

Each of the years I taught CS2 I had some students babbling on about
how they wanted to study the material in C or C++, because they knew
it and thought the other students would be more employable (it would
be good for them).  Well these self-professed C experts as good as
never could answer some basic questions about C that have some
very odd answers...

For instance, if the following is a complete C program...

int main() {
   int a[10];
   int *b;

   b=...
}

how many values can b (legally) have?  I believe the answer is... 13?

Don Knuth once sent me a check for $2.56 because I spotted some
non-conforming C in Vol. 2...

If you don't know all those rules and think about them CONSTANTLY
you will one day run into a compiler that makes you a very unhappy
programmer.  Sigh.  I remember debugging a program that was comparing
function pointers for ordering once... on a Convex.  Yes the program
was incorrect---unlike any other types of pointers, function pointers
can only be compared for equality---so you might say we got what
we deserved?  (Of course the bloody thing did precisely what the
programmer wanted on SunOS/sparc, NetBSD/i386, OSF/1 on the alpha,
NetBSD on the hp300, solaris/sparc and every other OS we ever tried
it on; and it didn't crash immediately nor emit warnings on the
Convex but crashed sometimes minutes (millions of instructions)
later.)  Well @#%@#%%@ like that just doesn't happen in Modula-3.
 
     Mika



Jay writes:
>--_90bb03af-9f51-49d3-a3e0-dadf1fa47719_
>Content-Type: text/plain; charset="iso-8859-1"
>Content-Transfer-Encoding: quoted-printable
>
>
>1) I totally don't mind the emails. I can ignore them for a day or so easil=
>y. :)
>=20
>=20
>2) C code in m3core or elsewhere. This is a philisophical question I couldn=
>'t decide=2C interested in discussing some.
>Originally I put "FilePosixC.c" in m3core=2C and called it from libm3. But =
>I think that's..not great.
>=20
>=20
>3) "portable"
>You throw this word around with emphasis a lot.
>Portable Modula-3 code.
>The lie of portable C code.
>What do you mean?
>=20
>=20
>There are many ways to write portable and non-portable Modula-3 and C code.
>For example there were Modula-3 regression tests printing the size of an in=
>teger.
>  Portable to lots of systems=2C but not all.
>=20
>I can write Modula-3 code or C code dependent or independent of sizeof(int)=
> or long or void*.
>It's quite easy to do either way=2C in either language.
>I don't think that proves anything.
>=20
>=20
>Likewise=2C in both Modula-3 and C=2C I can easily directly call Posix open=
>=2C or Win32 CreateFile.
>They are both actually very portable=2C but less portable than calling libr=
>aries that wrap them.
>What I mean is=2C Posix open is implemented on tons of systems=2C but not a=
>ll.
>Win32 CreateFile is also implemented on tons of systems=2C but not all.
>It depends partly how you quantify systems.
>Win32 Create 1) is implemented on over a billion actual machines.
>open is actually in msvcrt.dll also=2C but let's ignore it for this discuss=
>ion.
>I've read that the "Unix workstation" market is only like in the single dig=
>it millions=2C either sold per year or sold ever.
>I realize those billion PCs that run Windows=2C can also run *BSD and Linux=
>=2C making this all gray.
>=20
>Now=2C another way to quantify this though=2C that I find "impressive"=2C i=
>s that Win32 CreateFile at least historically was implemented on PowerPC=2C=
> MIPS=2C Alpha=2C and currently x86=2C IA64=2C AMD64. Not bad.
>(Basically=2C NT has been ported among the most of any /commercial closed s=
>ource/ OS.)
>=20
>But again=2C I don't think this proves anything.
>I can pretty equally easily write portable or non-portable C or Modula=2C "=
>at the library level".
>=20
>One angle you might argue=2C is that Modula-3 has a "built in" portability =
>layer/library.
>It is=2C in a sense=2C easier to not call CreateFile or open in Modula-3 th=
>an it is in C.
>If that is what you mean=2C ok.
>=20
>HOWEVER=2C if you look at the Modula-3 system=2C the portability layer=2C y=
>ou know=2C it is forked in terms of Posix and Win32. If you limit yourself =
>to the Posix part of it=2C well=2C then=2C you can use Posix.
>I realize Posix systems are not all equal=2C they are all supersets of Posi=
>x=2C with some overlap in their supersetting.
>That's why my checkin worked on some systems but not others.
>=20
>Also=2C with respect to I/O=2C if use just stdio -- very portable.
>Threading -- finally=2C soon=2C multi threading will be very portable in C+=
>+=2C at least to the implementations still being maintained.
>As well=2C there is OpenMP.
>=20
>Another angle actually you can play here is quality of compiler.
>I did some experimentation with a range of compilers I had..I guess I was u=
>sing C++ at the time.
>Some older compilers really stunk. Like=2C with CFront=2C you couldn't have=
> more than one return.
>Therefore=2C code like:
>  int even(int a) =20
>  {      if (a & 1)        return 0=3B =20
>    return 1=3B =20
>  }
>=20
>/could/ be deemed not portable.
>=20
>Modula-3 wins here by virtue of there being only one implementation.
>Cheating I think.
>=20
>See also Python and Perl.
>Well=2C ok=2C Modula-3 wins here by virtue of having a good small language =
>spec.
>You know..Perl is speced as the language implemented by perl.exe....so big =
>and gnarly and impossible to predict..impossible to write down...C++ is fai=
>rly well speced=2C but only through mountains of paper and endless discussi=
>on and clarifications....
>=20
>=20
> - Jay
>
>
>
>From: hosking at cs.purdue.eduTo: jay.krell at cornell.eduDate: Thu=2C 18 Dec 200=
>8 09:27:36 +1100CC: m3devel at elegosoft.comSubject: Re: [M3devel] Fwd: Output=
> from "cron" command
>
>
>No=2C broken briefly then fixed quickly is OK -- that's what regressions ar=
>e for.  But on the other hand=2C testing before checkin is probably nicer t=
>o the rest of the world.  That way you don't get whinging e-mails from me c=
>omplaining that the Tinderbox regressions broke.  I suppose it depends whic=
>h pain you prefer: my e-mails or testing comprehensively.  =3B-)
>
>I would hope that these sorts of system-dependent changes are minimized by =
>keeping as much code in *portable* Modula-3 as possible.  To my mind=2C not=
>hing outside of m3core should need to escape to C.
>
>On 18 Dec 2008=2C at 09:24=2C Jay wrote:
>
>(critical typo -- you can provide a time for it to power back on.)I'm loath=
>e to leave all my machines on and burn the electricity..I don't trust them =
>to have good power management=2C lower power when idle.I should automate so=
>mething here though=2C see if I can run Tinderbox=2C and see if I can get c=
>ron to power on/off.Every time I have looked at the Tinderbox it seemed too=
> difficult to run. On the other hand=2C I don't know if the status quo is s=
>o bad.You tell me it's broken. I understand that is not ideal=2C and I shou=
>ld fix it fairly asap=2C but is it terrible every so often?I do tend to at =
>least build multiple platforms=2C even if not "all"..so not every checkin b=
>reaks anything/everything. I figure LINUXLIBC6 is the most popular=2C and I=
> can always test that on birch.  - Jay
>
>From: hosking at cs.purdue.eduTo: jay.krell at cornell.eduSubject: Re: [M3devel] =
>Fwd: Output from "cron" commandDate: Thu=2C 18 Dec 2008 09:12:52 +1100
>
>
>My machine is in a machine room at Purdue=2C on all the time.
>
>On 18 Dec 2008=2C at 08:37=2C Jay wrote:
>
>I keep most of my machines powered off most of the time. Do you have automa=
>tion that both runs a daily Tinderbox=2C and turns the machine on/off?My SG=
>I machine at least has a nice feature where you can software power it off=
>=2C and provide a time that it should power down. I haven't automated=2C bu=
>t it seems ideal for daily Tinderboxes.  - Jay
>
>From: hosking at cs.purdue.eduTo: jay.krell at cornell.eduDate: Thu=2C 18 Dec 200=
>8 07:10:05 +1100CC: m3devel at elegosoft.comSubject: [M3devel] Fwd: Output fro=
>m "cron" command
>
>
>Jay=2C
>
>I am still getting a compile error on whatever changes you made...
>
>-- Tony
>
>Begin forwarded message:
>
>
>From: Tony Hosking <hosking at cs.purdue.edu>
>Date: 18 December 2008 00:04:32 GMT+11:00
>To: hosking at cs.purdue.edu
>Subject: Output from "cron" command
>
>Your "cron" job on niagara.cs.purdue.edu$HOME/cm3/scripts/regression/cron.s=
>hproduced the following output:TESTHOSTNAME=3DniagaraWS=3D/homes/hosking/wo=
>rk/cm3-ws/niagara-2008-12-17-11-30-04LASTREL=3D5.4.0INSTROOT_REL=3D/homes/h=
>osking/work/cm3-inst/niagara/rel-5.4.0INSTROOT_POK=3D/homes/hosking/work/cm=
>3-inst/niagara/prev-okINSTROOT_LOK=3D/homes/hosking/work/cm3-inst/niagara/l=
>ast-okINSTROOT_CUR=3D/homes/hosking/work/cm3-inst/niagara/currentCM3_OSTYPE=
>=3DPOSIXCM3_TARGET=3DSOLgnuBINDISTMIN=3D/homes/hosking/work/cm3-min-POSIX-S=
>OLgnu-5.4.0.tgzCM3CVSSERVER=3Dbirch.elegosoft.comCM3CVSROOT=3Dbirch.elegoso=
>ft.com:/usr/cvsBINDISTMIN_NAME=3Dcm3-min-POSIX-SOLgnu-5.4.0.tgzBINDISTMIN=
>=3D/homes/hosking/work/cm3-min-POSIX-SOLgnu-5.4.0.tgztesting ssh birch.eleg=
>osoft.com..ssh birch.elegosoft.com okBuilding cm3.Tinderbox Tree:   "cm3"Bu=
>ildname:        "SOLgnu SunOS 5.10 niagara release-build"creating log file =
>/tmp/build-cm3-20081217-063006-fOaGeh/log.txt---checkout=2C compile and tes=
>t of cm3 ...2008.12.17 06:30:07 -- checkout in progress.[start checkout 200=
>8.12.17 06:30:11]cd /tmp/build-cm3-20081217-063006-fOaGeh/buildcvs return v=
>alue: 0[end checkout 2008.12.17 06:49:43]CHECKOUT_RETURN =3D 0--2008.12.17 =
>06:49:45 -- compile in progress.[start compile 2008.12.17 06:49:45]compile =
>return value: 0[end compile 2008.12.17 06:55:03]COMPILE_RETURN =3D 1*** COM=
>PILE FAILEDremoving build tree /tmp/build-cm3-20081217-063006-fOaGeh ...cle=
>aning CM3 workspaces.../homes/hosking/work/cm3-ws/niagara-*cleaning regress=
>ion test log files.../homes/hosking/tmp/cm3/niagara/cm3-rlog-*cleaning m3te=
>st log files.../homes/hosking/tmp/cm3/niagara/m3tests-*.stdout/homes/hoskin=
>g/tmp/cm3/niagara/m3tests-*.stderr/homes/hosking/tmp/cm3/niagara/m3tests-*.=
>stderr.extractcleaning snapshot files.../homes/hosking/tmp/cm3/niagara/cm3-=
>min-POSIX-SOLgnu-*-*.tgzcleaning package reports.../tmp/cm3-pkg-report-SOLg=
>nu-*.htmlTESTHOSTNAME=3DniagaraWS=3D/homes/hosking/work/cm3-ws/niagara-2008=
>-12-17-11-57-02LASTREL=3D5.4.0INSTROOT_REL=3D/homes/hosking/work/cm3-inst/n=
>iagara/rel-5.4.0INSTROOT_POK=3D/homes/hosking/work/cm3-inst/niagara/prev-ok=
>INSTROOT_LOK=3D/homes/hosking/work/cm3-inst/niagara/last-okINSTROOT_CUR=3D/=
>homes/hosking/work/cm3-inst/niagara/currentCM3_OSTYPE=3DPOSIXCM3_TARGET=3DS=
>OLgnuBINDISTMIN=3D/homes/hosking/work/cm3-min-POSIX-SOLgnu-5.4.0.tgzCM3CVSS=
>ERVER=3Dbirch.elegosoft.comCM3CVSROOT=3Dbirch.elegosoft.com:/usr/cvsBINDIST=
>MIN_NAME=3Dcm3-min-POSIX-SOLgnu-5.4.0.tgzBINDISTMIN=3D/homes/hosking/work/c=
>m3-min-POSIX-SOLgnu-5.4.0.tgztesting ssh birch.elegosoft.com..ssh birch.ele=
>gosoft.com okBuilding cm3.Tinderbox Tree:   "cm3"Buildname:        "SOLgnu =
>SunOS 5.10 niagara lastok-build"creating log file /tmp/build-cm3-20081217-0=
>65704-RGaGCn/log.txt---checkout=2C compile and test of cm3 ...2008.12.17 06=
>:57:04 -- checkout in progress.[start checkout 2008.12.17 06:57:06]cd /tmp/=
>build-cm3-20081217-065704-RGaGCn/buildcvs return value: 0[end checkout 2008=
>.12.17 07:16:18]CHECKOUT_RETURN =3D 0--2008.12.17 07:16:21 -- compile in pr=
>ogress.[start compile 2008.12.17 07:16:21]compile return value: 0[end compi=
>le 2008.12.17 08:01:31]COMPILE_RETURN =3D 02008.12.17 08:01:38 -- tests in =
>progress.[start run-tests 2008.12.17 08:01:38]cd /tmp/build-cm3-20081217-06=
>5704-RGaGCn/build[end run-tests 2008.12.17 08:01:38]TESTS_RETURN =3D 02008.=
>12.17 08:01:38 -- checkout=2C compile and test run done.---removing build t=
>ree /tmp/build-cm3-20081217-065704-RGaGCn ...cleaning CM3 workspaces.../hom=
>es/hosking/work/cm3-ws/niagara-*cleaning regression test log files.../homes=
>/hosking/tmp/cm3/niagara/cm3-rlog-*cleaning m3test log files.../homes/hoski=
>ng/tmp/cm3/niagara/m3tests-*.stdout/homes/hosking/tmp/cm3/niagara/m3tests-*=
>.stderr/homes/hosking/tmp/cm3/niagara/m3tests-*.stderr.extractcleaning snap=
>shot files.../homes/hosking/tmp/cm3/niagara/cm3-min-POSIX-SOLgnu-*-*.tgzcle=
>aning package reports.../tmp/cm3-pkg-report-SOLgnu-*.htmldone.=
>
>--_90bb03af-9f51-49d3-a3e0-dadf1fa47719_
>Content-Type: text/html; charset="iso-8859-1"
>Content-Transfer-Encoding: quoted-printable
>
><html>
><head>
><style>
>.hmmessage P
>{
>margin:0px=3B
>padding:0px
>}
>body.hmmessage
>{
>font-size: 10pt=3B
>font-family:Verdana
>}
></style>
></head>
><body class=3D'hmmessage'>
>1) I totally don't mind the emails. I can ignore them for a day or so easil=
>y. :)<BR>
>&nbsp=3B<BR>
>&nbsp=3B<BR>
>2) C code in m3core or elsewhere. This is a philisophical question I couldn=
>'t decide=2C interested in discussing some.<BR>
>Originally I put "FilePosixC.c" in m3core=2C and called it from libm3. But =
>I think that's..not great.<BR>
>&nbsp=3B<BR>
>&nbsp=3B<BR>
>3) "portable"<BR>
>You throw this word around with emphasis a lot.<BR>
>Portable Modula-3 code.<BR>
>The lie of portable C code.<BR>
>What do you mean?<BR>
>&nbsp=3B<BR>
>&nbsp=3B<BR>
>There are many ways to write portable and non-portable Modula-3 and C code.=
><BR>
>For example there were Modula-3 regression tests printing the size of an in=
>teger.<BR>
>&nbsp=3B Portable to lots of systems=2C but not all.<BR>
>&nbsp=3B<BR>
>I can write Modula-3 code or C code dependent or independent of sizeof(int)=
> or long or void*.<BR>
>It's quite easy to do either way=2C in either language.<BR>
>I don't think that proves anything.<BR>
>&nbsp=3B<BR>
>&nbsp=3B<BR>
>Likewise=2C in both Modula-3 and C=2C I can easily directly call Posix open=
>=2C or Win32 CreateFile.<BR>
>They are both actually very portable=2C but less portable than calling libr=
>aries that wrap them.<BR>
>What I mean is=2C Posix open is implemented on tons of systems=2C but not a=
>ll.<BR>
>Win32 CreateFile is also implemented on tons of systems=2C but not all.<BR>
>It depends partly how you quantify systems.<BR>
>Win32 Create 1) is implemented on over a billion actual machines.<BR>
>open is actually in msvcrt.dll also=2C but let's ignore it for this discuss=
>ion.<BR>
>I've read that the "Unix workstation" market is only like in the single dig=
>it millions=2C either sold per year or sold ever.<BR>
>I realize those billion PCs that run Windows=2C can also run *BSD and Linux=
>=2C making this all gray.<BR>
>&nbsp=3B<BR>
>Now=2C another way to quantify this though=2C that I find "impressive"=2C i=
>s that Win32 CreateFile at least historically was implemented on PowerPC=2C=
> MIPS=2C Alpha=2C and currently&nbsp=3Bx86=2C IA64=2C AMD64. Not bad.<BR>
>(Basically=2C NT has been ported among the most of any /commercial closed s=
>ource/ OS.)<BR>
>&nbsp=3B<BR>
>But again=2C I don't think this proves anything.<BR>
>I can pretty equally easily write portable or non-portable C or Modula=2C "=
>at the library level".<BR>
>&nbsp=3B<BR>
>One angle you might argue=2C is that Modula-3 has a "built in" portability =
>layer/library.<BR>
>It is=2C in a sense=2C easier to not call CreateFile or open in Modula-3 th=
>an it is in C.<BR>
>If that is what you mean=2C ok.<BR>
>&nbsp=3B<BR>
>HOWEVER=2C if you look at the Modula-3 system=2C the portability layer=2C y=
>ou know=2C it is forked in terms of Posix and Win32. If you limit yourself =
>to the Posix part of it=2C well=2C then=2C you can use Posix.<BR>
>I realize Posix systems are not all equal=2C they are all supersets of Posi=
>x=2C with some overlap in their supersetting.<BR>
>That's why my checkin worked on some systems but not others.<BR>
>&nbsp=3B<BR>
>Also=2C with respect to I/O=2C if use just stdio -- very portable.<BR>
>Threading -- finally=2C soon=2C multi threading will be very portable in C+=
>+=2C at least to the implementations still being maintained.<BR>
>As well=2C there is OpenMP.<BR>
>&nbsp=3B<BR>
>Another angle actually you can play here is quality of compiler.<BR>
>I did some experimentation with a range of compilers I had..I guess I was u=
>sing C++ at the time.<BR>
>Some older compilers really stunk. Like=2C with CFront=2C you couldn't have=
> more than one return.<BR>
>Therefore=2C code like:<BR>
>&nbsp=3B int even(int a)&nbsp=3B <BR>
>&nbsp=3B {&nbsp=3B <BR>&nbsp=3B &nbsp=3B if (a &amp=3B 1)&nbsp=3B <BR>&nbsp=
>=3B &nbsp=3B&nbsp=3B&nbsp=3B return 0=3B&nbsp=3B <BR>
>&nbsp=3B &nbsp=3B return 1=3B&nbsp=3B <BR>
>&nbsp=3B }<BR>
>&nbsp=3B<BR>
>/could/ be deemed not portable.<BR>
>&nbsp=3B<BR>
>Modula-3 wins here by virtue of there being only one implementation.<BR>
>Cheating I think.<BR>
>&nbsp=3B<BR>
>See also Python and Perl.<BR>
>Well=2C ok=2C Modula-3 wins here by virtue of having a good small language =
>spec.<BR>
>You know..Perl is speced as the language implemented by perl.exe....so big =
>and gnarly and impossible to predict..impossible to write down...C++ is fai=
>rly well speced=2C but only through mountains of paper and endless discussi=
>on and clarifications....<BR>
>&nbsp=3B<BR>
>&nbsp=3B<BR>
>&nbsp=3B- Jay<BR><BR><BR>
>
><HR id=3DstopSpelling>
><BR>
>From: hosking at cs.purdue.edu<BR>To: jay.krell at cornell.edu<BR>Date: Thu=2C 18=
> Dec 2008 09:27:36 +1100<BR>CC: m3devel at elegosoft.com<BR>Subject: Re: [M3de=
>vel] Fwd: Output from "cron" command<BR><BR><BR>
><DIV><SPAN class=3DEC_Apple-style-span style=3D"WORD-SPACING: 0px=3B FONT: =
>12px Helvetica=3B TEXT-TRANSFORM: none=3B COLOR: rgb(0=2C0=2C0)=3B TEXT-IND=
>ENT: 0px=3B WHITE-SPACE: normal=3B LETTER-SPACING: normal=3B BORDER-COLLAPS=
>E: separate">
><DIV style=3D"WORD-WRAP: break-word"><SPAN class=3DEC_Apple-style-span styl=
>e=3D"WORD-SPACING: 0px=3B FONT: 12px Helvetica=3B TEXT-TRANSFORM: none=3B C=
>OLOR: rgb(0=2C0=2C0)=3B TEXT-INDENT: 0px=3B WHITE-SPACE: normal=3B LETTER-S=
>PACING: normal=3B BORDER-COLLAPSE: separate"><SPAN class=3DEC_Apple-style-s=
>pan style=3D"WORD-SPACING: 0px=3B FONT: 12px Helvetica=3B TEXT-TRANSFORM: n=
>one=3B COLOR: rgb(0=2C0=2C0)=3B TEXT-INDENT: 0px=3B WHITE-SPACE: normal=3B =
>LETTER-SPACING: normal=3B BORDER-COLLAPSE: separate"><SPAN class=3DEC_Apple=
>-style-span style=3D"WORD-SPACING: 0px=3B FONT: 12px Helvetica=3B TEXT-TRAN=
>SFORM: none=3B COLOR: rgb(0=2C0=2C0)=3B TEXT-INDENT: 0px=3B WHITE-SPACE: no=
>rmal=3B LETTER-SPACING: normal=3B BORDER-COLLAPSE: separate"><SPAN class=3D=
>EC_Apple-style-span style=3D"WORD-SPACING: 0px=3B FONT: 12px Helvetica=3B T=
>EXT-TRANSFORM: none=3B COLOR: rgb(0=2C0=2C0)=3B TEXT-INDENT: 0px=3B WHITE-S=
>PACE: normal=3B LETTER-SPACING: normal=3B BORDER-COLLAPSE: separate"><SPAN =
>class=3DEC_Apple-style-span style=3D"WORD-SPACING: 0px=3B FONT: 12px Helvet=
>ica=3B TEXT-TRANSFORM: none=3B COLOR: rgb(0=2C0=2C0)=3B TEXT-INDENT: 0px=3B=
> WHITE-SPACE: normal=3B LETTER-SPACING: normal=3B BORDER-COLLAPSE: separate=
>"><SPAN class=3DEC_Apple-style-span style=3D"WORD-SPACING: 0px=3B FONT: 12p=
>x Helvetica=3B TEXT-TRANSFORM: none=3B COLOR: rgb(0=2C0=2C0)=3B TEXT-INDENT=
>: 0px=3B WHITE-SPACE: normal=3B LETTER-SPACING: normal=3B BORDER-COLLAPSE: =
>separate"><SPAN class=3DEC_Apple-style-span style=3D"WORD-SPACING: 0px=3B F=
>ONT: 12px Helvetica=3B TEXT-TRANSFORM: none=3B COLOR: rgb(0=2C0=2C0)=3B TEX=
>T-INDENT: 0px=3B WHITE-SPACE: normal=3B LETTER-SPACING: normal=3B BORDER-CO=
>LLAPSE: separate"><SPAN class=3DEC_Apple-style-span style=3D"WORD-SPACING: =
>0px=3B FONT: 12px Helvetica=3B TEXT-TRANSFORM: none=3B COLOR: rgb(0=2C0=2C0=
>)=3B TEXT-INDENT: 0px=3B WHITE-SPACE: normal=3B LETTER-SPACING: normal=3B B=
>ORDER-COLLAPSE: separate">
><DIV>No=2C broken briefly then fixed quickly is OK -- that's what regressio=
>ns are for. &nbsp=3BBut on the other hand=2C testing before checkin is prob=
>ably nicer to the rest of the world. &nbsp=3BThat way you don't get whingin=
>g e-mails from me complaining that the Tinderbox regressions broke. &nbsp=
>=3BI suppose it depends which pain you prefer: my e-mails or testing compre=
>hensively. &nbsp=3B=3B-)</DIV>
><DIV><BR></DIV>
><DIV>I would hope that these sorts of system-dependent changes are minimize=
>d by keeping as much code in *portable* Modula-3 as possible. &nbsp=3BTo my=
> mind=2C nothing outside of m3core should need to escape to C.</DIV></SPAN>=
</SPAN></SPAN></SPAN></SPAN></SPAN></SPAN></SPAN></DIV></SPAN></DIV><BR>
><DIV>
><DIV>On 18 Dec 2008=2C at 09:24=2C Jay wrote:</DIV><BR class=3DEC_Apple-int=
>erchange-newline>
><BLOCKQUOTE><SPAN class=3DEC_Apple-style-span style=3D"WORD-SPACING: 0px=3B=
> FONT: 12px Helvetica=3B TEXT-TRANSFORM: none=3B COLOR: rgb(0=2C0=2C0)=3B T=
>EXT-INDENT: 0px=3B WHITE-SPACE: normal=3B LETTER-SPACING: normal=3B BORDER-=
>COLLAPSE: separate">
><DIV class=3DEC_hmmessage style=3D"FONT-SIZE: 10pt=3B FONT-FAMILY: Verdana"=
>>(critical typo -- you can provide a time for it to power back on.)<BR>I'm =
>loathe to leave all my machines on and burn the electricity..<BR>I don't tr=
>ust them to have good power management=2C lower power when idle.<BR>I shoul=
>d automate something here though=2C see if I can run Tinderbox=2C and see i=
>f I can get cron to power on/off.<BR>Every time I have looked at the Tinder=
>box it seemed too difficult to run.<BR>&nbsp=3B<BR>On the other hand=2C I d=
>on't know if the status quo is so bad.<BR>You tell me it's broken. I unders=
>tand that is not ideal=2C and&nbsp=3BI should fix it fairly asap=2C but is =
>it terrible every so often?<BR>I do tend to at least build multiple platfor=
>ms=2C even if not "all"..so not every checkin breaks anything/everything.<B=
>R>&nbsp=3B<BR>I figure LINUXLIBC6 is the most popular=2C and I can always t=
>est that on birch.<BR>&nbsp=3B<BR>&nbsp=3B- Jay<BR><BR><BR>
><HR id=3DEC_stopSpelling>
><BR>From:<SPAN class=3DEC_Apple-converted-space>&nbsp=3B</SPAN><A href=3D"m=
>ailto:hosking at cs.purdue.edu">hosking at cs.purdue.edu</A><BR>To:<SPAN class=3D=
>EC_Apple-converted-space>&nbsp=3B</SPAN><A href=3D"mailto:jay.krell at cornell=
>.edu">jay.krell at cornell.edu</A><BR>Subject: Re: [M3devel] Fwd: Output from =
>"cron" command<BR>Date: Thu=2C 18 Dec 2008 09:12:52 +1100<BR><BR><BR>
><DIV><SPAN class=3DEC_EC_Apple-style-span style=3D"WORD-SPACING: 0px=3B FON=
>T: 12px Helvetica=3B TEXT-TRANSFORM: none=3B COLOR: rgb(0=2C0=2C0)=3B TEXT-=
>INDENT: 0px=3B WHITE-SPACE: normal=3B LETTER-SPACING: normal=3B BORDER-COLL=
>APSE: separate">
><DIV style=3D"WORD-WRAP: break-word"><SPAN class=3DEC_EC_Apple-style-span s=
>tyle=3D"WORD-SPACING: 0px=3B FONT: 12px Helvetica=3B TEXT-TRANSFORM: none=
>=3B COLOR: rgb(0=2C0=2C0)=3B TEXT-INDENT: 0px=3B WHITE-SPACE: normal=3B LET=
>TER-SPACING: normal=3B BORDER-COLLAPSE: separate"><SPAN class=3DEC_EC_Apple=
>-style-span style=3D"WORD-SPACING: 0px=3B FONT: 12px Helvetica=3B TEXT-TRAN=
>SFORM: none=3B COLOR: rgb(0=2C0=2C0)=3B TEXT-INDENT: 0px=3B WHITE-SPACE: no=
>rmal=3B LETTER-SPACING: normal=3B BORDER-COLLAPSE: separate"><SPAN class=3D=
>EC_EC_Apple-style-span style=3D"WORD-SPACING: 0px=3B FONT: 12px Helvetica=
>=3B TEXT-TRANSFORM: none=3B COLOR: rgb(0=2C0=2C0)=3B TEXT-INDENT: 0px=3B WH=
>ITE-SPACE: normal=3B LETTER-SPACING: normal=3B BORDER-COLLAPSE: separate"><=
>SPAN class=3DEC_EC_Apple-style-span style=3D"WORD-SPACING: 0px=3B FONT: 12p=
>x Helvetica=3B TEXT-TRANSFORM: none=3B COLOR: rgb(0=2C0=2C0)=3B TEXT-INDENT=
>: 0px=3B WHITE-SPACE: normal=3B LETTER-SPACING: normal=3B BORDER-COLLAPSE: =
>separate"><SPAN class=3DEC_EC_Apple-style-span style=3D"WORD-SPACING: 0px=
>=3B FONT: 12px Helvetica=3B TEXT-TRANSFORM: none=3B COLOR: rgb(0=2C0=2C0)=
>=3B TEXT-INDENT: 0px=3B WHITE-SPACE: normal=3B LETTER-SPACING: normal=3B BO=
>RDER-COLLAPSE: separate"><SPAN class=3DEC_EC_Apple-style-span style=3D"WORD=
>-SPACING: 0px=3B FONT: 12px Helvetica=3B TEXT-TRANSFORM: none=3B COLOR: rgb=
>(0=2C0=2C0)=3B TEXT-INDENT: 0px=3B WHITE-SPACE: normal=3B LETTER-SPACING: n=
>ormal=3B BORDER-COLLAPSE: separate"><SPAN class=3DEC_EC_Apple-style-span st=
>yle=3D"WORD-SPACING: 0px=3B FONT: 12px Helvetica=3B TEXT-TRANSFORM: none=3B=
> COLOR: rgb(0=2C0=2C0)=3B TEXT-INDENT: 0px=3B WHITE-SPACE: normal=3B LETTER=
>-SPACING: normal=3B BORDER-COLLAPSE: separate"><SPAN class=3DEC_EC_Apple-st=
>yle-span style=3D"WORD-SPACING: 0px=3B FONT: 12px Helvetica=3B TEXT-TRANSFO=
>RM: none=3B COLOR: rgb(0=2C0=2C0)=3B TEXT-INDENT: 0px=3B WHITE-SPACE: norma=
>l=3B LETTER-SPACING: normal=3B BORDER-COLLAPSE: separate">
><DIV>My machine is in a machine room at Purdue=2C on all the time.</DIV></S=
>PAN></SPAN></SPAN></SPAN></SPAN></SPAN></SPAN></SPAN></DIV></SPAN></DIV><BR=
>>
><DIV>
><DIV>On 18 Dec 2008=2C at 08:37=2C Jay wrote:</DIV><BR class=3DEC_EC_Apple-=
>interchange-newline>
><BLOCKQUOTE><SPAN class=3DEC_EC_Apple-style-span style=3D"WORD-SPACING: 0px=
>=3B FONT: 12px Helvetica=3B TEXT-TRANSFORM: none=3B COLOR: rgb(0=2C0=2C0)=
>=3B TEXT-INDENT: 0px=3B WHITE-SPACE: normal=3B LETTER-SPACING: normal=3B BO=
>RDER-COLLAPSE: separate">
><DIV class=3DEC_EC_hmmessage style=3D"FONT-SIZE: 10pt=3B FONT-FAMILY: Verda=
>na">I keep most of my machines powered off most of the time.<BR>&nbsp=3B<BR=
>>Do you have automation that both runs a daily Tinderbox=2C and turns the m=
>achine on/off?<BR>My SGI machine at least has a nice feature where you can =
>software power it off=2C and provide a time that it should power down. I ha=
>ven't automated=2C but it seems ideal for daily Tinderboxes.<BR>&nbsp=3B<BR=
>>&nbsp=3B- Jay<BR><BR><BR>
><HR id=3DEC_EC_stopSpelling>
>From:<SPAN class=3DEC_EC_Apple-converted-space>&nbsp=3B</SPAN><A href=3D"ma=
>ilto:hosking at cs.purdue.edu">hosking at cs.purdue.edu</A><BR>To:<SPAN class=3DE=
>C_EC_Apple-converted-space>&nbsp=3B</SPAN><A href=3D"mailto:jay.krell at corne=
>ll.edu">jay.krell at cornell.edu</A><BR>Date: Thu=2C 18 Dec 2008 07:10:05 +110=
>0<BR>CC:<SPAN class=3DEC_EC_Apple-converted-space>&nbsp=3B</SPAN><A href=3D=
>"mailto:m3devel at elegosoft.com">m3devel at elegosoft.com</A><BR>Subject: [M3dev=
>el] Fwd: Output from "cron" command<BR><BR><BR>
><DIV><SPAN class=3DEC_EC_EC_Apple-style-span style=3D"WORD-SPACING: 0px=3B =
>FONT: 12px Helvetica=3B TEXT-TRANSFORM: none=3B COLOR: rgb(0=2C0=2C0)=3B TE=
>XT-INDENT: 0px=3B WHITE-SPACE: normal=3B LETTER-SPACING: normal=3B BORDER-C=
>OLLAPSE: separate">
><DIV style=3D"WORD-WRAP: break-word"><SPAN class=3DEC_EC_EC_Apple-style-spa=
>n style=3D"WORD-SPACING: 0px=3B FONT: 12px Helvetica=3B TEXT-TRANSFORM: non=
>e=3B COLOR: rgb(0=2C0=2C0)=3B TEXT-INDENT: 0px=3B WHITE-SPACE: normal=3B LE=
>TTER-SPACING: normal=3B BORDER-COLLAPSE: separate"><SPAN class=3DEC_EC_EC_A=
>pple-style-span style=3D"WORD-SPACING: 0px=3B FONT: 12px Helvetica=3B TEXT-=
>TRANSFORM: none=3B COLOR: rgb(0=2C0=2C0)=3B TEXT-INDENT: 0px=3B WHITE-SPACE=
>: normal=3B LETTER-SPACING: normal=3B BORDER-COLLAPSE: separate"><SPAN clas=
>s=3DEC_EC_EC_Apple-style-span style=3D"WORD-SPACING: 0px=3B FONT: 12px Helv=
>etica=3B TEXT-TRANSFORM: none=3B COLOR: rgb(0=2C0=2C0)=3B TEXT-INDENT: 0px=
>=3B WHITE-SPACE: normal=3B LETTER-SPACING: normal=3B BORDER-COLLAPSE: separ=
>ate"><SPAN class=3DEC_EC_EC_Apple-style-span style=3D"WORD-SPACING: 0px=3B =
>FONT: 12px Helvetica=3B TEXT-TRANSFORM: none=3B COLOR: rgb(0=2C0=2C0)=3B TE=
>XT-INDENT: 0px=3B WHITE-SPACE: normal=3B LETTER-SPACING: normal=3B BORDER-C=
>OLLAPSE: separate"><SPAN class=3DEC_EC_EC_Apple-style-span style=3D"WORD-SP=
>ACING: 0px=3B FONT: 12px Helvetica=3B TEXT-TRANSFORM: none=3B COLOR: rgb(0=
>=2C0=2C0)=3B TEXT-INDENT: 0px=3B WHITE-SPACE: normal=3B LETTER-SPACING: nor=
>mal=3B BORDER-COLLAPSE: separate"><SPAN class=3DEC_EC_EC_Apple-style-span s=
>tyle=3D"WORD-SPACING: 0px=3B FONT: 12px Helvetica=3B TEXT-TRANSFORM: none=
>=3B COLOR: rgb(0=2C0=2C0)=3B TEXT-INDENT: 0px=3B WHITE-SPACE: normal=3B LET=
>TER-SPACING: normal=3B BORDER-COLLAPSE: separate"><SPAN class=3DEC_EC_EC_Ap=
>ple-style-span style=3D"WORD-SPACING: 0px=3B FONT: 12px Helvetica=3B TEXT-T=
>RANSFORM: none=3B COLOR: rgb(0=2C0=2C0)=3B TEXT-INDENT: 0px=3B WHITE-SPACE:=
> normal=3B LETTER-SPACING: normal=3B BORDER-COLLAPSE: separate"><SPAN class=
>=3DEC_EC_EC_Apple-style-span style=3D"WORD-SPACING: 0px=3B FONT: 12px Helve=
>tica=3B TEXT-TRANSFORM: none=3B COLOR: rgb(0=2C0=2C0)=3B TEXT-INDENT: 0px=
>=3B WHITE-SPACE: normal=3B LETTER-SPACING: normal=3B BORDER-COLLAPSE: separ=
>ate">
><DIV>Jay=2C</DIV>
><DIV><BR></DIV>
><DIV>I am still getting a compile error on whatever changes you made...</DI=
>V>
><DIV><BR></DIV>
><DIV>-- Tony</DIV></SPAN></SPAN></SPAN></SPAN></SPAN></SPAN></SPAN></SPAN><=
>/DIV></SPAN></DIV>
><DIV><BR>
><DIV>Begin forwarded message:</DIV><BR class=3DEC_EC_EC_Apple-interchange-n=
>ewline>
><BLOCKQUOTE>
><DIV>
><DIV style=3D"MARGIN-BOTTOM: 0px=3B MARGIN-LEFT: 0px=3B MARGIN-RIGHT: 0px">=
><FONT style=3D"FONT: 12px Helvetica=3B COLOR: rgb(0=2C0=2C0)" face=3DHelvet=
>ica color=3D#000000 size=3D3><B>From:<SPAN class=3DEC_EC_Apple-converted-sp=
>ace>&nbsp=3B</SPAN></B></FONT><FONT style=3D"FONT: 12px Helvetica" face=3DH=
>elvetica size=3D3>Tony Hosking &lt=3B<A href=3D"mailto:hosking at cs.purdue.ed=
>u">hosking at cs.purdue.edu</A>&gt=3B</FONT></DIV>
><DIV style=3D"MARGIN-BOTTOM: 0px=3B MARGIN-LEFT: 0px=3B MARGIN-RIGHT: 0px">=
><FONT style=3D"FONT: 12px Helvetica=3B COLOR: rgb(0=2C0=2C0)" face=3DHelvet=
>ica color=3D#000000 size=3D3><B>Date:<SPAN class=3DEC_EC_Apple-converted-sp=
>ace>&nbsp=3B</SPAN></B></FONT><FONT style=3D"FONT: 12px Helvetica" face=3DH=
>elvetica size=3D3>18 December 2008 00:04:32 GMT+11:00</FONT></DIV>
><DIV style=3D"MARGIN-BOTTOM: 0px=3B MARGIN-LEFT: 0px=3B MARGIN-RIGHT: 0px">=
><FONT style=3D"FONT: 12px Helvetica=3B COLOR: rgb(0=2C0=2C0)" face=3DHelvet=
>ica color=3D#000000 size=3D3><B>To:<SPAN class=3DEC_EC_Apple-converted-spac=
>e>&nbsp=3B</SPAN></B></FONT><FONT style=3D"FONT: 12px Helvetica" face=3DHel=
>vetica size=3D3><A href=3D"mailto:hosking at cs.purdue.edu">hosking at cs.purdue.=
>edu</A></FONT></DIV>
><DIV style=3D"MARGIN-BOTTOM: 0px=3B MARGIN-LEFT: 0px=3B MARGIN-RIGHT: 0px">=
><FONT style=3D"FONT: 12px Helvetica=3B COLOR: rgb(0=2C0=2C0)" face=3DHelvet=
>ica color=3D#000000 size=3D3><B>Subject:<SPAN class=3DEC_EC_Apple-converted=
>-space>&nbsp=3B</SPAN></B></FONT><FONT style=3D"FONT: 12px Helvetica" face=
>=3DHelvetica size=3D3><B>Output from "cron" command</B></FONT></DIV>
><DIV style=3D"MIN-HEIGHT: 14px=3B MARGIN-BOTTOM: 0px=3B MARGIN-LEFT: 0px=3B=
> MARGIN-RIGHT: 0px"><BR></DIV></DIV>
><DIV>Your "cron" job on niagara.cs.purdue.edu<BR>$HOME/cm3/scripts/regressi=
>on/cron.sh<BR><BR>produced the following output:<BR><BR>TESTHOSTNAME=3Dniag=
>ara<BR>WS=3D/homes/hosking/work/cm3-ws/niagara-2008-12-17-11-30-04<BR>LASTR=
>EL=3D5.4.0<BR>INSTROOT_REL=3D/homes/hosking/work/cm3-inst/niagara/rel-5.4.0=
><BR>INSTROOT_POK=3D/homes/hosking/work/cm3-inst/niagara/prev-ok<BR>INSTROOT=
>_LOK=3D/homes/hosking/work/cm3-inst/niagara/last-ok<BR>INSTROOT_CUR=3D/home=
>s/hosking/work/cm3-inst/niagara/current<BR>CM3_OSTYPE=3DPOSIX<BR>CM3_TARGET=
>=3DSOLgnu<BR>BINDISTMIN=3D/homes/hosking/work/cm3-min-POSIX-SOLgnu-5.4.0.tg=
>z<BR>CM3CVSSERVER=3Dbirch.elegosoft.com<BR>CM3CVSROOT=3Dbirch.elegosoft.com=
>:/usr/cvs<BR>BINDISTMIN_NAME=3Dcm3-min-POSIX-SOLgnu-5.4.0.tgz<BR>BINDISTMIN=
>=3D/homes/hosking/work/cm3-min-POSIX-SOLgnu-5.4.0.tgz<BR>testing ssh birch.=
>elegosoft.com..<BR>ssh birch.elegosoft.com ok<BR>Building cm3.<BR>Tinderbox=
> Tree: &nbsp=3B&nbsp=3B"cm3"<BR>Buildname: &nbsp=3B&nbsp=3B&nbsp=3B&nbsp=3B=
>&nbsp=3B&nbsp=3B&nbsp=3B"SOLgnu SunOS 5.10 niagara release-build"<BR><BR>cr=
>eating log file /tmp/build-cm3-20081217-063006-fOaGeh/log.txt<BR><BR>---<BR=
>><BR>checkout=2C compile and test of cm3 ...<BR>2008.12.17 06:30:07 -- chec=
>kout in progress.<BR>[start checkout 2008.12.17 06:30:11]<BR>cd /tmp/build-=
>cm3-20081217-063006-fOaGeh/build<BR>cvs return value: 0<BR>[end checkout 20=
08.12.17 06:49:43]<BR>CHECKOUT_RETURN =3D 0<BR>--<BR>2008.12.17 06:49:45 --=
> compile in progress.<BR>[start compile 2008.12.17 06:49:45]<BR>compile ret=
>urn value: 0<BR>[end compile 2008.12.17 06:55:03]<BR>COMPILE_RETURN =3D 1<B=
>R>*** COMPILE FAILED<BR>removing build tree /tmp/build-cm3-20081217-063006-=
>fOaGeh ...<BR>cleaning CM3 workspaces...<BR>/homes/hosking/work/cm3-ws/niag=
>ara-*<BR><BR>cleaning regression test log files...<BR>/homes/hosking/tmp/cm=
>3/niagara/cm3-rlog-*<BR><BR>cleaning m3test log files...<BR>/homes/hosking/=
>tmp/cm3/niagara/m3tests-*.stdout<BR><BR>/homes/hosking/tmp/cm3/niagara/m3te=
>sts-*.stderr<BR><BR>/homes/hosking/tmp/cm3/niagara/m3tests-*.stderr.extract=
><BR><BR>cleaning snapshot files...<BR>/homes/hosking/tmp/cm3/niagara/cm3-mi=
>n-POSIX-SOLgnu-*-*.tgz<BR><BR>cleaning package reports...<BR>/tmp/cm3-pkg-r=
>eport-SOLgnu-*.html<BR><BR>TESTHOSTNAME=3Dniagara<BR>WS=3D/homes/hosking/wo=
>rk/cm3-ws/niagara-2008-12-17-11-57-02<BR>LASTREL=3D5.4.0<BR>INSTROOT_REL=3D=
>/homes/hosking/work/cm3-inst/niagara/rel-5.4.0<BR>INSTROOT_POK=3D/homes/hos=
>king/work/cm3-inst/niagara/prev-ok<BR>INSTROOT_LOK=3D/homes/hosking/work/cm=
>3-inst/niagara/last-ok<BR>INSTROOT_CUR=3D/homes/hosking/work/cm3-inst/niaga=
>ra/current<BR>CM3_OSTYPE=3DPOSIX<BR>CM3_TARGET=3DSOLgnu<BR>BINDISTMIN=3D/ho=
>mes/hosking/work/cm3-min-POSIX-SOLgnu-5.4.0.tgz<BR>CM3CVSSERVER=3Dbirch.ele=
>gosoft.com<BR>CM3CVSROOT=3Dbirch.elegosoft.com:/usr/cvs<BR>BINDISTMIN_NAME=
>=3Dcm3-min-POSIX-SOLgnu-5.4.0.tgz<BR>BINDISTMIN=3D/homes/hosking/work/cm3-m=
>in-POSIX-SOLgnu-5.4.0.tgz<BR>testing ssh birch.elegosoft.com..<BR>ssh birch=
>.elegosoft.com ok<BR>Building cm3.<BR>Tinderbox Tree: &nbsp=3B&nbsp=3B"cm3"=
><BR>Buildname: &nbsp=3B&nbsp=3B&nbsp=3B&nbsp=3B&nbsp=3B&nbsp=3B&nbsp=3B"SOL=
>gnu SunOS 5.10 niagara lastok-build"<BR><BR>creating log file /tmp/build-cm=
>3-20081217-065704-RGaGCn/log.txt<BR><BR>---<BR><BR>checkout=2C compile and =
>test of cm3 ...<BR>2008.12.17 06:57:04 -- checkout in progress.<BR>[start c=
>heckout 2008.12.17 06:57:06]<BR>cd /tmp/build-cm3-20081217-065704-RGaGCn/bu=
>ild<BR>cvs return value: 0<BR>[end checkout 2008.12.17 07:16:18]<BR>CHECKOU=
>T_RETURN =3D 0<BR>--<BR>2008.12.17 07:16:21 -- compile in progress.<BR>[sta=
>rt compile 2008.12.17 07:16:21]<BR>compile return value: 0<BR>[end compile =
>2008.12.17 08:01:31]<BR>COMPILE_RETURN =3D 0<BR>2008.12.17 08:01:38 -- test=
>s in progress.<BR>[start run-tests 2008.12.17 08:01:38]<BR>cd /tmp/build-cm=
>3-20081217-065704-RGaGCn/build<BR>[end run-tests 2008.12.17 08:01:38]<BR>TE=
>STS_RETURN =3D 0<BR>2008.12.17 08:01:38 -- checkout=2C compile and test run=
> done.<BR><BR>---<BR><BR>removing build tree /tmp/build-cm3-20081217-065704=
>-RGaGCn ...<BR>cleaning CM3 workspaces...<BR>/homes/hosking/work/cm3-ws/nia=
>gara-*<BR><BR>cleaning regression test log files...<BR>/homes/hosking/tmp/c=
>m3/niagara/cm3-rlog-*<BR><BR>cleaning m3test log files...<BR>/homes/hosking=
>/tmp/cm3/niagara/m3tests-*.stdout<BR><BR>/homes/hosking/tmp/cm3/niagara/m3t=
>ests-*.stderr<BR><BR>/homes/hosking/tmp/cm3/niagara/m3tests-*.stderr.extrac=
>t<BR><BR>cleaning snapshot files...<BR>/homes/hosking/tmp/cm3/niagara/cm3-m=
>in-POSIX-SOLgnu-*-*.tgz<BR><BR>cleaning package reports...<BR>/tmp/cm3-pkg-=
>report-SOLgnu-*.html<BR><BR>done.<BR></DIV></BLOCKQUOTE></DIV><BR></DIV></S=
>PAN><BR class=3DEC_EC_Apple-interchange-newline></BLOCKQUOTE></DIV><BR></DI=
>V></SPAN><BR class=3DEC_Apple-interchange-newline></BLOCKQUOTE></DIV><BR></=
>body>
></html>=
>
>--_90bb03af-9f51-49d3-a3e0-dadf1fa47719_--



More information about the M3devel mailing list