Minutes of the Special GEnie Forth RT Conference with Dean Sanderson, software engineer with FORTH Inc.. Dean's topic was "Addressing Management Concerns over use of Forth as an Applications Platform". Entire contents of this transcript copyright (c) 1991 GEnie Forth RoundTable. The contents may be freely copied and distributed in whole or in part provided origination credit is included. Date: 02/21/91 Time: 22:23EST Attendees: [[Dean] FIGGUEST] [GARY-S] [[Len] NMORGENSTERN] [[doug] D.GARRETT] [[Dennis] D.RUFFER] [[Wil] W.BADEN1] [GILES] [LRWEBBER] Minutes: The GEnie Forth RoundTable is please to welcome as tonight's ... special guest, Dean Sanderson, of FORTH Inc. .... Dean discovered FORTH and FORTH Inc. in '75 when using mini's for... real time systems development for the Post Office. From '76 to... present he has worked at FORTH Inc. beginning with development of... microFORTH. Since that time his efforts have been split between... product and applications development. He's been involved with FORTH.. standards efforts from '77 through the present ANS X3J14 committee. His application experience includes load-scale automation, peach... sorters, network development, baggage sorting, distributed control.. analog coprocessors and servo-control systems. He is the... architect of FORTH Inc's Event Management and Control System. .. Tonight Dean is joining us to discuss methods of dealing with ... management reluctance to accept FORTH as a viable platform. Please welcome Mr. Dean Sanderson. <[Dean] FIGGUEST> Because of the power that Forth has given us (to keep <[Dean] FIGGUEST> projects small and quick), we have been able to avoid <[Dean] FIGGUEST> learning what others have had to about software developmnt. <[Dean] FIGGUEST> Those that have grown up with Forth, do management by <[Dean] FIGGUEST> intuition. We have trouble communicating with those who've <[Dean] FIGGUEST> been successful using FORTRAN, C or Assembler. Its as if we <[Dean] FIGGUEST> speak different languages. As projects escalate, we find we <[Dean] FIGGUEST> have not killed the dragon, only maimed him. As we ready for <[Dean] FIGGUEST> battle we find our pride has left us with few new weapons. <[Dean] FIGGUEST> For Forth to survive as a respected language, it must <[Dean] FIGGUEST> prove its adaptability and change enough to support the <[Dean] FIGGUEST> concerns of management. These include: Integration, <[Dean] FIGGUEST> Maintenance, Documentation, Declining cost, Q.A., Config- <[Dean] FIGGUEST> uration and Scheduling. Though we've started late, we can <[Dean] FIGGUEST> survive by capitalizing on what others have learned. <[Dennis] D.RUFFER> well since no one else jumped in at that... <[Dennis] D.RUFFER> and to give them time to let it sink in... <[Dennis] D.RUFFER> why not tell us about some of the ideas... <[Dennis] D.RUFFER> you've been playing with at Forth, Inc. <[Dean] FIGGUEST> Well module scoping is one important idea.. <[Dean] FIGGUEST> Another would be Version management Returning to your opening remarks - ... maintenance of Forth code is constantly raised as an issue ... How _do_ you overcome this fear that your one and only keeper... of the magic code will pack up and leave you sans support ? <[Dean] FIGGUEST> You must not let less than two people _understand_ the system please elaborate - I am addressing the fearful manager now. <[Dean] FIGGUEST> You have to force an environment where <[Dean] FIGGUEST> people "read prgmrs" must communicate in writing.. <[Dean] FIGGUEST> Also you must provide for inforced interfaces.. <[Dean] FIGGUEST> and audit trail. These can be supported at the language level. is here. <[Len] NMORGENSTERN> To do all the things that you mention in your introduction. <[Len] NMORGENSTERN> takes a lot of time. Does Forth have the manpower to.. <[Len] NMORGENSTERN> accomplish all those goals?.. <[Dean] FIGGUEST> Forth who? Forth Inc or the comunity? <[Len] NMORGENSTERN> The community in general <[Dean] FIGGUEST> I see several ways... <[Dean] FIGGUEST> As i think longer some get cheeper.. <[Dean] FIGGUEST> I am now trying to deal with a potential.. <[Dean] FIGGUEST> cust who has to answer to FDA... <[Dean] FIGGUEST> This means that if a batch of drug is made <[Dean] FIGGUEST> A someone croaks.. <[Dean] FIGGUEST> You can reproduce the source and database _and_ control... <[Dean] FIGGUEST> signals that where used in production... <[Dean] FIGGUEST> with development proceding Good eve, Dean. Glad u could make it. (smile) I'd... like to ask about the project 4th Inc... had at th airport w/ all th sensors... & 15 programmers. Were u one? <[Dean] FIGGUEST> Yes.. You have a ?? Yes...how were 15 4th programmers co-ordinated? <[Dean] FIGGUEST> I could fill pages on that proj... <[Dean] FIGGUEST> Mostly by themselves and politics actually... <[Dean] FIGGUEST> We tried to get the best and let them fight for... <[Dean] FIGGUEST> their own enlightened interrests Could u tell me how to get a reprint of Ms. Rather's article on it? <[Dean] FIGGUEST> If i have an address, we could send it. do that in e-mail to d.ruffer, giles <[Dennis] D.RUFFER> yes giles...send me email with your address... <[Dennis] D.RUFFER> and I will make sure a copy is sent to you... <[Dennis] D.RUFFER> dean... <[Dennis] D.RUFFER> for version control... <[Dennis] D.RUFFER> what techniques do you have in mind?... <[Dennis] D.RUFFER> date stamping blocks... <[Dennis] D.RUFFER> auditing chage blocks... <[Dennis] D.RUFFER> etc. <[Dean] FIGGUEST> Ahh.. well... <[Dean] FIGGUEST> I thought a while on this and it seemed.... <[Dean] FIGGUEST> that if the programmer did not send any block #s to LOAD or... <[Dean] FIGGUEST> LIST then we R going the right way... <[Dean] FIGGUEST> Specifically... <[Dean] FIGGUEST> Modules have names given by the system designer.. <[Dean] FIGGUEST> The exact block range is set in a persistent place but.. <[Dean] FIGGUEST> controled by system... <[Dean] FIGGUEST> when you want to edit or load you use the name... <[Dean] FIGGUEST> In addition, and this is important... <[Dean] FIGGUEST> Each module will DECLARE which other modules (perhaps vers# too)... <[Dean] FIGGUEST> It is dependant on... <[Dean] FIGGUEST> This leads right into Module scoping... <[Dean] FIGGUEST> Public, Private etc. <[Len] NMORGENSTERN> Tell us more about... <[Len] NMORGENSTERN> FORTH Inc's Event Management and Control System. .. <[Len] NMORGENSTERN> which you mentioned earlier... <[Dean] FIGGUEST> Object structure and encapsulation are at the core... <[Dean] FIGGUEST> Also is a cleaver [I think] way to pass control... <[Dean] FIGGUEST> to processes.. <[Dean] FIGGUEST> Event driven is also at the core.. messages map to events... <[Dean] FIGGUEST> There is a hirarchy of controll processes... <[Dean] FIGGUEST> each increaingly more abstract.. <[Dean] FIGGUEST> each talks only to Boss or subordinates... <[Dean] FIGGUEST> or hardware events. _NEVER_ to peers. This solves race <[Dean] FIGGUEST> condition control Dean - if we can I would like very much to continue to explore the Forth phobia... The Astro Physics Dept at the Univ here has moved to C to avoid disputes.. with the Comp Sci people who object vehemently to 'bastard' languages.. like APL and Forth. .. How, in your estimation do "we" avoid such migrations (stampeeds) <[Dean] FIGGUEST> hmm... <[Dean] FIGGUEST> I dont think we can stop them.. <[Dean] FIGGUEST> but we can "avoid" them.. <[Dean] FIGGUEST> I think we have to address compatibility somehow... <[Dean] FIGGUEST> or just keep showing success at our special streangths . <[Len] NMORGENSTERN> If I may comment. The modular scoping of names <[Len] NMORGENSTERN> and the Event Control System were two of the <[Len] NMORGENSTERN> big hits at Asilomar last November comment dean ? <[Dean] FIGGUEST> Thanx.. I worked hard on them. ga Have you managed to recently 'open' a shop to Forth - and what was the success ? <[Dean] FIGGUEST> I have to think back on that.. <[Dean] FIGGUEST> most work seems to come in from outside.. <[Dean] FIGGUEST> either word of mouth or people move.. <[Dean] FIGGUEST> like our class just brought in a project, ... <[Dean] FIGGUEST> but that can't count. My Q is for U, Gair...how can u call 4th a 'bastard'?? I'm not the guest - however,the quote is from a Comp Sci dept head. <[Wil] W.BADEN1> your solution to mgt problems is not confined to just Forth. Other languages have the same requirements for documentation. Forth has special needs for documenting beyond the standard ones. How should they be handled so the profane world can comprehend? <[Dean] FIGGUEST> Two issues.. <[Dean] FIGGUEST> One is that first of all we are even playing with a full <[Dean] FIGGUEST> ... <[Dean] FIGGUEST> deck as far as management is concerned... <[Dean] FIGGUEST> Secnd is, what do you see as being special needs? ... <[Dean] FIGGUEST> The vissiblity of the stack... <[Dean] FIGGUEST> a mutable language...( no debuggers work for long) wil has a follow <[Wil] W.BADEN1> Point of interest: Do you think Forth version control version #s can be linear, or must you provide for .. <[Wil] W.BADEN1> branches from earlier versions? <[Dean] FIGGUEST> Must support branches... <[Dean] FIGGUEST> but I need to research whats out there on that subject. <[Wil] W.BADEN1> Damn. <[Wil] W.BADEN1> Oh well, back to the drawing board. <[Wil] W.BADEN1> Branches could be woven in. <[Dean] FIGGUEST> The need to branch is because... <[Dean] FIGGUEST> you sell stuff but continue to develop. Then an old cust... <[Dean] FIGGUEST> comes in to top off tank. <[Wil] W.BADEN1> I have linear version control which is good for all I do. len you have the last question of the evening <[Len] NMORGENSTERN> Do you think that the presence of Forth on <[Len] NMORGENSTERN> Sun work stations will have an effect on <[Len] NMORGENSTERN> some of the problems you mention? <[Dean] FIGGUEST> If you meen in the boot ROM, NO.... <[Dean] FIGGUEST> If you meen the Forth written in C, Perhaps.... <[Dean] FIGGUEST> Compatiblity is the key here... <[Dean] FIGGUEST> We will contintue to look stupid if we can _NEVER_... <[Dean] FIGGUEST> stand on the shoulders of giants... <[Dean] FIGGUEST> And yes, there are some out there, not writing FORTH. -closing comments please dean <[Dean] FIGGUEST> That last one comes close to a closing comment... <[Dean] FIGGUEST> I actually dont have one prepared.. <[Dean] FIGGUEST> And Im beginnig to burn out at the keyboard. Dean, on behalf of the GEnie Forth RoundTable, thank you for an interesting discussion. Obviously, some thoughts got provoked. All may stay and chat but this conference is officially closed. === End of Steno notes. ===