[net.lang.st80] Orphaned Response

turner (03/01/83)

#R:watmath:-462600:ucbesvax:13700001:37777777600:524
ucbesvax!turner    Feb 24 07:44:00 1983


	Can't help you on that text, nor on those rumors.  I can add my
    own rumor, however: deep in the bowels of one of the most avant-garde
    AI labs in the country there's this machine with voice and kinetic
    input, the latter being a visual tracking system that follows your
    hands around while you wave them in the process of proving a point.
    Unfortunately, it doesn't seem convinced when you argue the correct-
    ness of a program of more than 100 lines, regardless of how much
    you wave your hands...

hmm@exunido.UUCP (10/06/86)

Oops, Mr Kubitzsch obviously didn't realize that there are non-local news
users, too :-)
Some explanation: GB IV/342 is located at the University of Dortmund,
West Germany.  I won't give Mr. Kubitzsch' phone number here, transatlantic
calls are a bit expensive...  If you want to contact him, you can do so
via electronic mail.  His address is ...!seismo!unido!kubitzsc.

	Hans-Martin Mosner

kubitzsc@exunido.UUCP@ndmce.uucp (10/17/86)

Here are the changes I had to add to the simulation
methods shown in the 'Blue Book'. I added then on a PCS 
Cadmus 9200. There occurred no further problems while
running the examples and implementing others.
   

!ProbabilityDistibution methodsFor: 'private'!

atEnd
	^false! !

!Simulation methodsFor: 'initialization'!

activate
	ProbabilityDistribution initialize.
	SimulationObject activeSimulation: self.
	Resource activeSimulation: self! !

!Simulation methosFor: 'scheduling'!

newProcessFor: aBlock
	self startProcess.
	[aBlock value.
	self stopProcess]
			forkAt: [Processor activePriority + 1]! !

!Simulation methodsFor: 'simulation control'!

proceed
	|eventProcess|
	[self readyToContinue] whileFalse: [Processsor yield].
	eventQueue isEmpty
		ifTrue: [^self finishUp]
		ifFalse:[eventProcess _ eventQueue removeFirst.
			currentTime _ eventProcess condition.
			eventProcess resume]! !

!Simulation methodsFor: 'run a simulation'!

run
	self startUp.
	[eventQueue isEmpty] whileFalse: [self proceed]!

runUntil: aTime
	self startUp.
	[self time <= aTime and: [eventQueue isEmpty not]]
			whileTrue: [self proceed]! !

   
After all you should not forget to close the files you opened for   
gathering your statistics. Therefor you need the following method
at least in this class:

    
!EventMonitor class methodsFor: 'accessing'!

file
	^file! !
     
   
If you don't close an open file, the last 512 bytes block will not
be written onto disk.
     
I hope you enjoy your simulation. 

Peter Kubitzsch
Vogelpothsweg 92/2
4600 Dortmund 50
Germany