[Flow] Problem [was: Re: Flow 2 alpha 1 released]

Stephan Rudlof sr at evolgo.de
Tue Aug 27 12:38:03 UTC 2002


Craig,

I've problems with
  Socket>>performExamples
: it fails for #echoBytes.

Initialising by
  TCPStream clientToPort: 7 atHostNamed: 'localhost'
works, but then it fails. The collection inst var of TCPStream hasn't been
initialized: or isn't it necessary?

Note: Before I had to open my echo port (Debian Linux) and set it from
'nowait' to 'wait' to avoid immediately closing the port. Probably I have to
do more there...

DebugLog attached.


Greetings,

Stephan

Craig Latta wrote:
> Hi--
> 
> 	Alrighty then... I just released Flow 2 alpha 1, a streaming framework
> for Squeak. It provides a handy interface for manipulating external
> resources of various stripes, and for writing services that use them
> (e.g., "clients and servers"). Please see http://netjam.org/flow for
> details.
> 
> 	This release features:
> 
> -	greatly simplified installation
> 
> 	Download a ZIP file and file-in the sole file within. After
> installation you're ready to go; you don't need to build a new VM or
> even restart your running Squeak. I've only tested this with the Squeak
> 3.2 final snapshot. For the next release, I'll test with subsequent
> updates loaded.
> 
> -	socket support (not new but worth mentioning :)
> 
> -	filesystem support
> 
> -	partial serial and parallel port support
> 
> -	the basic framework for other planned transports (MIDI, digital audio,
> IEEE 1394 ["FireWire"], IR)
> 
> 	I've tested on GNU/Linux, Windows 98SE, and WinCE. If you'd like to
> help test on other platforms, please let me know! MacOS X should be
> particularly straightforward, since it's allegedly FreeBSD underneath (I
> don't have access to a Mac). There's a Flow mailing list; details are at
> the website.
> 
> 
> 	thanks!
> 
> -C
> 
> p.s.
> 
> 	As I recall, there used to be a "Squeak announcements" list. It doesn't
> seem to be around anymore. Is it?
> 
> --
> Craig Latta
> improvisational musical informaticist
> craig at netjam.org
> www.netjam.org/resume
> Smalltalkers do: [:it | All with: Class, (And love: it)]
> 
> 


-- 
Stephan Rudlof (sr at evolgo.de)
   "Genius doesn't work on an assembly line basis.
    You can't simply say, 'Today I will be brilliant.'"
    -- Kirk, "The Ultimate Computer", stardate 4731.3
-------------- next part --------------
Error: UndefinedObject cannot have variable sized instances
27 August 2002 2:18:23 pm

VM: unix - Squeak3.2gamma of 15 January 2002 [latest update: #4881]
Image: Squeak3.2 [latest update: #4952]

UndefinedObject class(Object)>>error:
	Receiver: UndefinedObject
	Arguments and temporary variables: 
		aString: 	'UndefinedObject cannot have variable sized instances'
	Receiver's instance variables: 
		superclass: 	Object
		methodDict: 	a MethodDictionary(#addDependent:->a CompiledMethod (396) #addSubcl...etc...
		format: 	2
		instanceVariables: 	nil
		organization: 	('copying' clone deepCopy shallowCopy veryDeepCopyWith:)
('printi...etc...
		subclasses: 	nil
		name: 	#UndefinedObject
		classPool: 	a Dictionary()
		sharedPools: 	nil
		environment: 	nil
		category: 	nil

UndefinedObject class(Behavior)>>basicNew:
	Receiver: UndefinedObject
	Arguments and temporary variables: 
		sizeRequested: 	8
	Receiver's instance variables: 
		superclass: 	Object
		methodDict: 	a MethodDictionary(#addDependent:->a CompiledMethod (396) #addSubcl...etc...
		format: 	2
		instanceVariables: 	nil
		organization: 	('copying' clone deepCopy shallowCopy veryDeepCopyWith:)
('printi...etc...
		subclasses: 	nil
		name: 	#UndefinedObject
		classPool: 	a Dictionary()
		sharedPools: 	nil
		environment: 	nil
		category: 	nil

UndefinedObject class(Behavior)>>new:
	Receiver: UndefinedObject
	Arguments and temporary variables: 
		sizeRequested: 	8
	Receiver's instance variables: 
		superclass: 	Object
		methodDict: 	a MethodDictionary(#addDependent:->a CompiledMethod (396) #addSubcl...etc...
		format: 	2
		instanceVariables: 	nil
		organization: 	('copying' clone deepCopy shallowCopy veryDeepCopyWith:)
('printi...etc...
		subclasses: 	nil
		name: 	#UndefinedObject
		classPool: 	a Dictionary()
		sharedPools: 	nil
		environment: 	nil
		category: 	nil

TCPStream(PositionableStream)>>next:
	Receiver: a non-binary TCPStream on an active OutgoingClientTCPSocket connected to port 7 at localho...etc...
	Arguments and temporary variables: 
		anInteger: 	8
		elements: 	nil
		index: 	nil
	Receiver's instance variables: 
		collection: 	nil
		position: 	nil
		readLimit: 	0
		writeLimit: 	0
		resource: 	an active OutgoingClientTCPSocket connected to port 7 at localhost (1...etc...
		binary: 	false
		indexOfLastDirtyElement: 	0
		readingPositionLock: 	a Semaphore()
		readingBufferSize: 	0
		scarcityThreshold: 	nil
		availability: 	nil
		scarcity: 	nil
		filling: 	nil
		indexOfFirstWritableField: 	0
		transcribeTraffic: 	false
		timeout: 	nil
		writingPosition: 	0

--- The rest of the stack ---
[] in TCPSocket class(Socket class)>>echoBytesOn:
BlockContext>>ensure:
TCPSocket class(Socket class)>>echoBytesOn:
TCPSocket class(Socket class)>>echoBytes
[] in Socket class>>performExamples
Array(SequenceableCollection)>>do:
[] in Socket class>>performExamples
Array(SequenceableCollection)>>do:
Socket class>>performExamples
Socket class>>DoIt
Compiler>>evaluate:in:to:notifying:ifFail:
[] in TextMorphEditor(ParagraphEditor)>>evaluateSelection
BlockContext>>on:do:
TextMorphEditor(ParagraphEditor)>>evaluateSelection
TextMorphEditor(ParagraphEditor)>>doIt
[] in TextMorphEditor(ParagraphEditor)>>doIt:
TextMorphEditor(Controller)>>terminateAndInitializeAround:
TextMorphEditor(ParagraphEditor)>>doIt:
TextMorphEditor(ParagraphEditor)>>dispatchOnCharacter:with:
TextMorphEditor(ParagraphEditor)>>readKeyboard
TextMorphEditor>>readKeyboard
[] in TextMorphForEditView(TextMorph)>>keyStroke:
TextMorphForEditView(TextMorph)>>handleInteraction:fromEvent:
TextMorphForEditView>>handleInteraction:fromEvent:
TextMorphForEditView(TextMorph)>>keyStroke:
TextMorphForEditView>>keyStroke:
TextMorphForEditView(TextMorph)>>handleKeystroke:
KeyboardEvent>>sentTo:
TextMorphForEditView(Morph)>>handleEvent:
TextMorphForEditView(Morph)>>handleFocusEvent:
[] in HandMorph>>sendFocusEvent:to:clear:
PasteUpMorph>>becomeActiveDuring:
HandMorph>>sendFocusEvent:to:clear:
HandMorph>>sendEvent:focus:clear:
HandMorph>>sendKeyboardEvent:
HandMorph>>handleEvent:
HandMorph>>processEvents
[] in WorldState>>doOneCycleNowFor:
Array(SequenceableCollection)>>do:
WorldState>>handsDo:
WorldState>>doOneCycleNowFor:
WorldState>>doOneCycleFor:
...etc...


More information about the Squeak-dev mailing list