Generally, re-using code instead of copying is a good approach.
If you do so, then the whole code of Mail is imported in News. Possible but perhaps there is even a better approach to re-use code.
What about this: try to separate all common code in an own module (e.g call it Communication.Mod or MsgBase.Mod or Utilities.Mod or so) and import this new module in Mail and in News.
br
Jörg
> Am 14.06.2023 um 19:53 schrieb peter(a)easthope.ca:
>
> Hello again,
>
> Several procedures in Mail are used in Oberon News. Rg.:
> Mail.ParseContent(), Mail.DecodeMessage() & Mail.GetSetting().
>
> Is export of SendCmd() and use in News objectionable?
> Ie. in Mail, change PROCEDURE SendCmd(...) to PROCEDURE SendCmd*(...).
>
> Thanks, ... P.
>
> -
> mobile: +1 778 951 5147
> VoIP: +1 604 670 0140
>
> --
> Oberon(a)lists.inf.ethz.ch mailing list for ETH Oberon and related systems
> https://lists.inf.ethz.ch/mailman/listinfo/oberon
From: Chris Burrows <cfbsoftware(a)gmail.com>
Date: Mon, 13 Jan 2025 10:56:42 +1030
> We've been too busy having a lot of fun working on Oberon software and
> releasing new versions of Astrobe to spend much time chatting here ;-)
Good to hear.
> https://xkcd.com/292/
>
> But for a more serious observation (from 20 years ago!) refer to Section
> 4.2. *The GO TO statement* in *Good Ideas, Through the Looking Glass*,
> Niklaus Wirth, 2005:
>
> https://people.inf.ethz.ch/wirth/Articles/GoodIdeas_origFig.pdf
Probably nobody here argues with prohibition of GOTO. I wondered
whether someone might comment on techniques for the difficulties
alluded to.
https://lists.dyne.org/lurker/message/20241102.144628.9f84c05a.en.html
(1) "... recursively wander around the incomplete LR automaton ..."
I know about recursion. Automaton (abstract machine,
https://en.wikipedia.org/wiki/Abstract_machine) was covered briefly in
CS 220. LR = left-to-right. I don't catch meaning beyond that.
(2) "... two independent sets of nested searches ..." I guess that
means one loop inside another. Two loops not really independent.
I imagine a flag or return value which the inner search sets or returns.
After completion of the inner search, the outer loop branches
according to the flag or return value. No particular difficulty?
(3) "... Modula 3's exceptions ..." I haven't encountered Modula 3. I
guess these exceptions don't exist in the other Oberon languages. A
flag is declared where needed?
Regards, ... P.
--
VoIP: +1 604 670 0140
work: https://en.wikibooks.org/wiki/User:PeterEasthope
On Mon, Jan 13, 2025 at 4:34 AM <peter(a)easthope.ca> wrote:
> Hi,
>
> Happy New Year! The list has become very quiet.
>
We've been too busy having a lot of fun working on Oberon software and
releasing new versions of Astrobe to spend much time chatting here ;-)
At the beginning of last November I noticed a discussion of GOTO in
> the DNG list. I don't have programming experience to make a
> significant response. Some of you may be interested.
>
> I like xkcd's typical humorous comment on the subject:
https://xkcd.com/292/
But for a more serious observation (from 20 years ago!) refer to Section
4.2. *The GO TO statement* in *Good Ideas, Through the Looking Glass*,
Niklaus Wirth, 2005:
https://people.inf.ethz.ch/wirth/Articles/GoodIdeas_origFig.pdf
Regards,
Chris
--
Chris Burrows
https://www.astrobe.com