From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,a8d137db7a5f6c81 X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!postnews.google.com!f14g2000cwb.googlegroups.com!not-for-mail From: "per" Newsgroups: comp.lang.ada Subject: Re: OO problem: Performing actions on messages (very long, sorry) Date: 10 Jan 2005 08:24:31 -0800 Organization: http://groups.google.com Message-ID: <1105374271.190657.191560@f14g2000cwb.googlegroups.com> References: <1103723394.299024.314670@c13g2000cwb.googlegroups.com> <13465377.hrn0RlrJV7@linux1.krischik.com> <1103737351.196460.85450@f14g2000cwb.googlegroups.com> <1qdvdjid4u58v.1xz6j5ec6nfcy$.dlg@40tude.net> <1104755823.837077.74630@z14g2000cwz.googlegroups.com> <8oknh024yb43$.71qlyp6g8y2x$.dlg@40tude.net> <1104840326.160879.132400@c13g2000cwb.googlegroups.com> <1ogeykubpns90.2jnblmdu1wg2.dlg@40tude.net> <1104852099.054703.265080@f14g2000cwb.googlegroups.com> <1104926478.797780.7830@c13g2000cwb.googlegroups.com> <1odpvi9429wrb.r854wtzbr1qm$.dlg@40tude.net> <1104940745.420814.235130@f14g2000cwb.googlegroups.com> <1rall0nftkcsj$.1e5jj6uwwwezc.dlg@40tude.net> <1105346564.204857.53640@c13g2000cwb.googlegroups.com> <1gsktm8wimsc$.1o2yngarlww9s$.dlg@40tude.net> NNTP-Posting-Host: 138.14.239.132 Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" X-Trace: posting.google.com 1105374275 1421 127.0.0.1 (10 Jan 2005 16:24:35 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Mon, 10 Jan 2005 16:24:35 +0000 (UTC) In-Reply-To: <1gsktm8wimsc$.1o2yngarlww9s$.dlg@40tude.net> User-Agent: G2/0.2 Complaints-To: groups-abuse@google.com Injection-Info: f14g2000cwb.googlegroups.com; posting-host=138.14.239.132; posting-account=e84-wQ0AAADeDLnjH5yWqnRMVsJLfQJg Xref: g2news1.google.com comp.lang.ada:7610 Date: 2005-01-10T08:24:31-08:00 List-Id: >>>How do you plan to maintain data consistency of a message if the user may >>>arbitrarily override its fields? I would try to do it more OO. To think > >> Well, that's the user's problem. Or rather, that's the point, sort of. >> See, this is a test equipment and shall enable modification of messages >> in "any" way in order to test how the test object (a computer) reacts. > >The reaction could be "Access violation" (:-)) It is utterly untyped, or >non-OO, I should say. So it looks not very promising to to solve it using >OO. I still have an impression that you should return back to domain >analysis and find better objects than mysterious actions and messages. At >least there should be no place for the word "any". Hehe, you never give up, do you? ;) OK, "any way" = any way the message can be modified in: If M1.A is an Integer, then the user shall be able to put any Integer in M1.A (at a specified time in the message M1 that happen to exist at that time). A Message is a record and an Action is a way to manipulate the Message. Not very mysterious to me. >> How would you create a schedule of actions before any messages exist? >> (Schedule = Plan of what actions should be taken to what type of >> messages and when, created *before* any message instances exist) > >So you schedule actions on something that even does not exist. It is a bit >strange. Normally scheduling depends on some state of *existing* scheduled >items. I disagree. All message *types* are known. The message *instances* flows through the system (having the time of their life so to speak;). Some of them untouched, and some of them manipulated in a predefined way. An action is that predefined way. And a bunch of actions programmed to occur at certain times constitutes an action schedule. >Probably this unconventional use of terms message and action is the >source of the misunderstanding. Aren't messages used to invoke actions? >Aren't scheduled actions invoked by messages from a scheduler? No, my messages and actions do not have that relationship. (I see no absolute semantic in the terms Action and Message, that's why I've tried to explain what they mean in this system.) Actions are invoked from a scheduler. The actions are performed on the instances that happen to exist (at the time each action is activated and if there is an action for that message type). Messages then go to different devices an mean whatever they are supposed to these devices. The actions just do stuff with the messages before they (the messages) are passed on.