[Oberon] Re (2): Re (2): Re (2): The Out module.
Jörg
joerg.straube at iaeth.ch
Tue Jan 15 19:17:43 CET 2019
This one IF does not harm much compared to the code for Write() or Append()
Jörg
-----Original Message-----
From: Oberon <oberon-bounces at lists.inf.ethz.ch> On Behalf Of
peter at easthope.ca
Sent: Tuesday, January 15, 2019 7:10 PM
To: oberon at lists.inf.ethz.ch
Subject: [Oberon] Re (2): Re (2): Re (2): The Out module.
From: =?utf-8?Q?J=C3=B6rg_Straube?= <joerg.straube at iaeth.ch>
Date: Tue, 15 Jan 2019 17:04:11 +0100
> I use Out in all my programs in ProjectOberon.
Thanks. I was beginning to wonder whether I was off on a wild-goose chase.
> This is the reason why I found out, that the huge amount of
> Texts.Append() in the original implementation will eat up a lot of
> memory.
Noted. Thanks.
> BTW: I added printf() to my Out.Mod to further simplify output capability.
Had to dig out the C Language Programmers Reference purchased about 1987.
printf (format, arg1, arg2, ...)
format = %[flags] [size] [.prec] [l] type
Implementing all of those parameters would be quite ambitious. Multiple
arguments is appealing.
> I used a BOOLEAN variable and the different output procedures follow this
example:
>
> PROCEDURE String(s: ARRAY OF CHAR);
> BEGIN Texts.WriteString(W, s); Append END String;
Append must contain IF or CASE, increasing time more than memory.
Seems right considering that the module is switched off by IMPORT ... Out =
OutStub ... .
Thanks again, ... Lyall E.
--
Message composed and transmitted by software designed to avoid the
complication, overhead and vulnerability of antivirus software.
123456789 123456789 123456789 123456789 123456789 123456789 123456789
Tel: +1 360 639 0202 +1
http://easthope.ca/Peter.html Bcc: peter at easthope. ca
--
Oberon at lists.inf.ethz.ch mailing list for ETH Oberon and related systems
https://lists.inf.ethz.ch/mailman/listinfo/oberon
More information about the Oberon
mailing list