[Oberon] Re (2): Re (2): Re (2): The Out module.

peter at easthope.ca peter at easthope.ca
Tue Jan 15 19:09:49 CET 2019


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


More information about the Oberon mailing list