Re: Prolog not loading in 6.1 any more

Stéphane Rollandin <[email protected]>
Newsgroups gmane.comp.lang.smalltalk.squeak.general
Message-ID <[email protected]>
> The Prolog package (attached) does not load in the final 6.1, while it
> did some time before (at least in Squeak6.1alpha-22532, this is the last
> time I checked)
> 
> I get a SyntaxError. It is probably #compilerClass or #parserClass that
> is not taken into account at some point.
> 
> Any pointer about the possible culprit?
Ok I got it to load by implementing #preferredParserClass, no big deal.
Now I still have an error:

	Cannot compile -- stack including temps is too deep

(log is attached, along with the newly fixed Prolog package)

Stef

Squeak-dev mailing list -- [email protected]
To unsubscribe send an email to [email protected]
SqueakDebug.log (text/plain, 17 KB)
Error: Cannot compile -- stack including temps is too deep
12 August 2026 4:10:28.324237 pm

VM: Win32 - Smalltalk
Image: Squeak6.1 [latest update: #23976]

SecurityManager state:
Restricted: false
FileAccess: true
SocketAccess: true
Working Dir C:\devel\surmulot\squeak\__sandbox 6.1\Squeak6.1-23976-64bit-202606270913-Windows-x64
Trusted Dir C:\devel\surmulot\squeak\__sandbox 6.1\Squeak6.1-23976-64bit-202606270913-Windows-x64\hepta
Untrusted Dir C:\Users\hepta\Documents\My Squeak

CompiledMethod(Object)>>error:
	Receiver: (Chapter5>>nil "a CompiledMethod(4035748)")
	Arguments and temporary variables: 
		aString: 	'Cannot compile -- stack including temps is too deep'
	Receiver's instance variables: 
(Chapter5>>nil "a CompiledMethod(4035748)")
CompiledMethod(CompiledCode)>>needsFrameSize:
	Receiver: (Chapter5>>nil "a CompiledMethod(4035748)")
	Arguments and temporary variables: 
		newFrameSize: 	13
		largeFrameBit: 	131072
		header: 	nil
	Receiver's instance variables: 
(Chapter5>>nil "a CompiledMethod(4035748)")
EncoderForSistaV1(BytecodeEncoder)>>generateMethodOfClass:trailer:from:
	Receiver: {an EncoderForSistaV1}
	Arguments and temporary variables: 
		aCompiledMethodClass: 	CompiledMethod
		trailer: 	a CompiledMethodTrailer
		methodNode: 	logicCutoff assoc 
	| player move value d alpha beta moves position...etc...
		primErrNode: 	nil
		blkSize: 	456
		nLits: 	25
		locals: 	{{assoc} . ({player}) . ({move}) . ({value}) . ({d}) . ({alpha}) . ({be...etc...
		literals: 	{#newTerm: . #LogicRef=>LogicRef . 'BestMove' . 'Record' . 'Beta' . '...etc...
		header: 	-1152921504575389671
		method: 	(Chapter5>>nil "a CompiledMethod(4035748)")
		stack: 	a ParseStack at 57 of 69
		lit: 	26
	Receiver's instance variables: 
		comment: 	nil
		pc: 	nil
		scopeTable: 	a Dictionary('alpha'->{alpha} 'answer'->{answer} #assoc->{assoc} 'b...etc...
		nTemps: 	11
		supered: 	false
		requestor: 	a LParser
		class: 	Chapter5
		selector: 	nil
		literalStream: 	a WriteStream
		selectorSet: 	a Dictionary(#*->{*} #+->{+} #-->{-} #/->{/} #//->{//} #<->{<} #<=...etc...
		litIndSet: 	a Dictionary(#Association=>Association->{Association} #LogicRef=>LogicRef...etc...
		litSet: 	a PluggableDictionary('Alpha'->{'Alpha'} 'BestMove'->{'BestMove'} 'Beta...etc...
		sourceRanges: 	a Dictionary(size 152)
		globalSourceRanges: 	nil
		addedExtraLiterals: 	true
		optimizedSelectors: 	a Set(#ifTrue:ifFalse:)
		cue: 	a CompilationCue
		stream: 	a WriteStream
		position: 	1
		rootNode: 	logicCutoff assoc 
	| player move value d alpha beta moves position r...etc...
		blockExtentsToLocals: 	a Dictionary((0 to: 50)->{{assoc} . ({player}) . ({move})...etc...
		blockMethod: 	nil

MethodNode>>generate:using:
	Receiver: logicCutoff assoc 
	| player move value d alpha beta moves position record bestMove |
	bes...etc...
	Arguments and temporary variables: 
		trailer: 	a CompiledMethodTrailer
		aCompiledMethodClass: 	CompiledMethod
		method: 	nil
	Receiver's instance variables: 
		comment: 	nil
		pc: 	nil
		selectorOrFalse: 	#logicCutoff
		precedence: 	3
		arguments: 	{{assoc}}
		block: 	{[:assoc | 
| player move value d alpha beta moves position record bestM...etc...
		primitive: 	0
		encoder: 	{an EncoderForSistaV1}
		temporaries: 	{({player}) . ({move}) . ({value}) . ({d}) . ({alpha}) . ({beta}) ...etc...
		properties: 	an AdditionalMethodState (1875636)
		sourceText: 	a Text for 'logicCutoff

cutoff(Player,Move,Value,D,Alpha,Beta,Move...etc...
		locationCounter: 	51
		localsPool: 	an IdentitySet({alpha} {assoc} {bestMove} {beta} {d} {moves} {move}...etc...

MethodNode>>generate:
	Receiver: logicCutoff assoc 
	| player move value d alpha beta moves position record bestMove |
	bes...etc...
	Arguments and temporary variables: 
		trailer: 	a CompiledMethodTrailer
	Receiver's instance variables: 
		comment: 	nil
		pc: 	nil
		selectorOrFalse: 	#logicCutoff
		precedence: 	3
		arguments: 	{{assoc}}
		block: 	{[:assoc | 
| player move value d alpha beta moves position record bestM...etc...
		primitive: 	0
		encoder: 	{an EncoderForSistaV1}
		temporaries: 	{({player}) . ({move}) . ({value}) . ({d}) . ({alpha}) . ({beta}) ...etc...
		properties: 	an AdditionalMethodState (1875636)
		sourceText: 	a Text for 'logicCutoff

cutoff(Player,Move,Value,D,Alpha,Beta,Move...etc...
		locationCounter: 	51
		localsPool: 	an IdentitySet({alpha} {assoc} {bestMove} {beta} {d} {moves} {move}...etc...

CompiledMethodWithNode class>>generateMethodFromNode:trailer:
	Receiver: CompiledMethodWithNode
	Arguments and temporary variables: 
		aMethodNode: 	logicCutoff assoc 
	| player move value d alpha beta moves positio...etc...
		bytes: 	a CompiledMethodTrailer
	Receiver's instance variables: 
		superclass: 	Object
		methodDict: 	a MethodDictionary(#method->(CompiledMethodWithNode>>#method "a CompiledMethod...etc...
		format: 	65538
		instanceVariables: 	#('node' 'method')
		organization: 	('accessing' method node selector)
('private' method: node:)

		subclasses: 	nil
		name: 	#CompiledMethodWithNode
		classPool: 	nil
		sharedPools: 	nil
		environment: 	Smalltalk
		category: 	#'Compiler-Support'

Chapter5 class(ClassDescription)>>compileCue:classified:withStamp:logSource:
	Receiver: Chapter5
	Arguments and temporary variables: 
		compilationCue: 	a CompilationCue
		category: 	#'5.3 tic tac toe'
		changeStamp: 	'spfa 10/4/2022 15:42'
		logSource: 	true
		methodAndNode: 	nil
		methodNode: 	logicCutoff assoc 
	| player move value d alpha beta moves position...etc...
		selector: 	nil
	Receiver's instance variables: 
		superclass: 	FisherTutorial
		methodDict: 	a MethodDictionary(#logicAlphaBeta->(Chapter5>>#logicAlphaBeta "a CompiledMethod...etc...
		format: 	65543
		instanceVariables: 	nil
		organization: 	('5.3 tic tac toe' logicAlphaBeta logicC logicComment)

		subclasses: 	nil
		name: 	#Chapter5
		classPool: 	nil
		sharedPools: 	nil
		environment: 	Smalltalk
		category: 	#'Prolog-Documentation'
		LocalDatabase: 	nil
		Predicates: 	nil
		BinaryPredicates: 	a Dictionary(#,->#and #':-'->#rule #';'->#or #<->#lt #=->#unify...etc...

Chapter5 class(ClassDescription)>>compile:environment:classified:withStamp:notifying:logSource:
	Receiver: Chapter5
	Arguments and temporary variables: 
		text: 	a Text for 'logicCutoff

cutoff(Player,Move,Value,D,Alpha,Beta,Moves,Posi...etc...
		anEnvironment: 	Smalltalk
		category: 	#'5.3 tic tac toe'
		changeStamp: 	'spfa 10/4/2022 15:42'
		requestor: 	nil
		logSource: 	true
	Receiver's instance variables: 
		superclass: 	FisherTutorial
		methodDict: 	a MethodDictionary(#logicAlphaBeta->(Chapter5>>#logicAlphaBeta "a CompiledMethod...etc...
		format: 	65543
		instanceVariables: 	nil
		organization: 	('5.3 tic tac toe' logicAlphaBeta logicC logicComment)

		subclasses: 	nil
		name: 	#Chapter5
		classPool: 	nil
		sharedPools: 	nil
		environment: 	Smalltalk
		category: 	#'Prolog-Documentation'
		LocalDatabase: 	nil
		Predicates: 	nil
		BinaryPredicates: 	a Dictionary(#,->#and #':-'->#rule #';'->#or #<->#lt #=->#unify...etc...

Chapter5 class(ClassDescription)>>compile:classified:withStamp:notifying:logSource:
	Receiver: Chapter5
	Arguments and temporary variables: 
		text: 	a Text for 'logicCutoff

cutoff(Player,Move,Value,D,Alpha,Beta,Moves,Posi...etc...
		category: 	#'5.3 tic tac toe'
		changeStamp: 	'spfa 10/4/2022 15:42'
		requestor: 	nil
		logSource: 	true
	Receiver's instance variables: 
		superclass: 	FisherTutorial
		methodDict: 	a MethodDictionary(#logicAlphaBeta->(Chapter5>>#logicAlphaBeta "a CompiledMethod...etc...
		format: 	65543
		instanceVariables: 	nil
		organization: 	('5.3 tic tac toe' logicAlphaBeta logicC logicComment)

		subclasses: 	nil
		name: 	#Chapter5
		classPool: 	nil
		sharedPools: 	nil
		environment: 	Smalltalk
		category: 	#'Prolog-Documentation'
		LocalDatabase: 	nil
		Predicates: 	nil
		BinaryPredicates: 	a Dictionary(#,->#and #':-'->#rule #';'->#or #<->#lt #=->#unify...etc...

Chapter5 class(ClassDescription)>>compile:classified:withStamp:notifying:
	Receiver: Chapter5
	Arguments and temporary variables: 
		text: 	a Text for 'logicCutoff

cutoff(Player,Move,Value,D,Alpha,Beta,Moves,Posi...etc...
		category: 	#'5.3 tic tac toe'
		changeStamp: 	'spfa 10/4/2022 15:42'
		requestor: 	nil
	Receiver's instance variables: 
		superclass: 	FisherTutorial
		methodDict: 	a MethodDictionary(#logicAlphaBeta->(Chapter5>>#logicAlphaBeta "a CompiledMethod...etc...
		format: 	65543
		instanceVariables: 	nil
		organization: 	('5.3 tic tac toe' logicAlphaBeta logicC logicComment)

		subclasses: 	nil
		name: 	#Chapter5
		classPool: 	nil
		sharedPools: 	nil
		environment: 	Smalltalk
		category: 	#'Prolog-Documentation'
		LocalDatabase: 	nil
		Predicates: 	nil
		BinaryPredicates: 	a Dictionary(#,->#and #':-'->#rule #';'->#or #<->#lt #=->#unify...etc...

ClassCategoryReader>>scanFrom:
	Receiver: a ClassCategoryReader
	Arguments and temporary variables: 
		aStream: 	a MultiByteBinaryOrTextStream
		methodText: 	a Text for 'logicCutoff

cutoff(Player,Move,Value,D,Alpha,Beta,Move...etc...
	Receiver's instance variables: 
		class: 	Chapter5
		category: 	#'5.3 tic tac toe'
		changeStamp: 	'spfa 10/4/2022 15:42'

[] in [] in [] in MultiByteBinaryOrTextStream(PositionableStream)>>fileInFor:announcing:
	Receiver: a MultiByteBinaryOrTextStream
	Arguments and temporary variables: 
		client: 	nil
		announcement: 	'Loading Prolog-Documentation.st into change set ''Prolog-Documen...etc...
		val: 	a ClassCategoryReader
		bar: 	[closure] in SystemProgressMorph>>position:label:min:max:
		chunk: 	nil
		ch: 	'Chapter5 methodsFor: ''5.3 tic tac toe'' stamp: ''spfa 10/4/2022 15:42'''
	Receiver's instance variables: 
		collection: 	'SystemOrganization addCategory: #''Prolog-Documentation''!


Prolo...etc...
		position: 	5521
		readLimit: 	16983
		writeLimit: 	16983
		initialPositionOrNil: 	nil
		isBinary: 	false
		converter: 	an UTF8TextConverter

FullBlockClosure(BlockClosure)>>on:do:
	Receiver: [closure] in [] in [] in MultiByteBinaryOrTextStream(PositionableStream)>>fileInFor:announcing:...etc...
	Arguments and temporary variables: 
		exceptionOrExceptionSet: 	InMidstOfFileinNotification
		handlerAction: 	[closure] in [] in [] in MultiByteBinaryOrTextStream(PositionableStream...etc...
		handlerActive: 	true
		handlerRearmed: 	false
	Receiver's instance variables: 
		outerContext: 	[] in [] in MultiByteBinaryOrTextStream(PositionableStream)>>fileInFor:announcing:...etc...
		startpcOrMethod: 	([] in PositionableStream>>#fileInFor:announcing: "a CompiledBlock...etc...
		numArgs: 	0
		receiver: 	a MultiByteBinaryOrTextStream

[] in [] in MultiByteBinaryOrTextStream(PositionableStream)>>fileInFor:announcing:
	Receiver: a MultiByteBinaryOrTextStream
	Arguments and temporary variables: 
		client: 	nil
		announcement: 	'Loading Prolog-Documentation.st into change set ''Prolog-Documen...etc...
		val: 	a ClassCategoryReader
		bar: 	[closure] in SystemProgressMorph>>position:label:min:max:
	Receiver's instance variables: 
		collection: 	'SystemOrganization addCategory: #''Prolog-Documentation''!


Prolo...etc...
		position: 	5521
		readLimit: 	16983
		writeLimit: 	16983
		initialPositionOrNil: 	nil
		isBinary: 	false
		converter: 	an UTF8TextConverter

FullBlockClosure(BlockClosure)>>on:do:
	Receiver: [closure] in [] in MultiByteBinaryOrTextStream(PositionableStream)>>fileInFor:announcing:
	Arguments and temporary variables: 
		exceptionOrExceptionSet: 	InvalidUTF8
		handlerAction: 	[closure] in [] in MultiByteBinaryOrTextStream(PositionableStream...etc...
		handlerActive: 	true
		handlerRearmed: 	false
	Receiver's instance variables: 
		outerContext: 	[] in MultiByteBinaryOrTextStream(PositionableStream)>>fileInFor:announcing:...etc...
		startpcOrMethod: 	([] in PositionableStream>>#fileInFor:announcing: "a CompiledBlock...etc...
		numArgs: 	0
		receiver: 	a MultiByteBinaryOrTextStream

[] in MultiByteBinaryOrTextStream(PositionableStream)>>fileInFor:announcing:
	Receiver: a MultiByteBinaryOrTextStream
	Arguments and temporary variables: 
		client: 	nil
		announcement: 	'Loading Prolog-Documentation.st into change set ''Prolog-Documen...etc...
		val: 	a ClassCategoryReader
		bar: 	[closure] in SystemProgressMorph>>position:label:min:max:
	Receiver's instance variables: 
		collection: 	'SystemOrganization addCategory: #''Prolog-Documentation''!


Prolo...etc...
		position: 	5521
		readLimit: 	16983
		writeLimit: 	16983
		initialPositionOrNil: 	nil
		isBinary: 	false
		converter: 	an UTF8TextConverter

[] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
	Receiver: a MorphicUIManager
	Arguments and temporary variables: 
		titleString: 	'Loading Prolog-Documentation.st into change set ''Prolog-Document...etc...
		aPoint: 	695@508
		minVal: 	0
		maxVal: 	16983
		workBlock: 	[closure] in MultiByteBinaryOrTextStream(PositionableStream)>>fileInFor:announcing:...etc...
		progress: 	[closure] in SystemProgressMorph>>position:label:min:max:
		result: 	nil
	Receiver's instance variables: 
		builderClass: 	MorphicToolBuilder

FullBlockClosure(BlockClosure)>>on:do:
	Receiver: [closure] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
	Arguments and temporary variables: 
		exceptionOrExceptionSet: 	ProgressNotification
		handlerAction: 	[closure] in [] in MorphicUIManager>>displayProgress:at:from:to:during:...etc...
		handlerActive: 	true
		handlerRearmed: 	false
	Receiver's instance variables: 
		outerContext: 	[] in MorphicUIManager>>displayProgress:at:from:to:during:
		startpcOrMethod: 	([] in MorphicUIManager>>#displayProgress:at:from:to:during: "...etc...
		numArgs: 	0
		receiver: 	a MorphicUIManager

[] in MorphicUIManager>>displayProgress:at:from:to:during:
	Receiver: a MorphicUIManager
	Arguments and temporary variables: 
		titleString: 	'Loading Prolog-Documentation.st into change set ''Prolog-Document...etc...
		aPoint: 	695@508
		minVal: 	0
		maxVal: 	16983
		workBlock: 	[closure] in MultiByteBinaryOrTextStream(PositionableStream)>>fileInFor:announcing:...etc...
		progress: 	[closure] in SystemProgressMorph>>position:label:min:max:
		result: 	nil
	Receiver's instance variables: 
		builderClass: 	MorphicToolBuilder


--- The full stack ---
CompiledMethod(Object)>>error:
CompiledMethod(CompiledCode)>>needsFrameSize:
EncoderForSistaV1(BytecodeEncoder)>>generateMethodOfClass:trailer:from:
MethodNode>>generate:using:
MethodNode>>generate:
CompiledMethodWithNode class>>generateMethodFromNode:trailer:
Chapter5 class(ClassDescription)>>compileCue:classified:withStamp:logSource:
Chapter5 class(ClassDescription)>>compile:environment:classified:withStamp:notifying:logSource:
Chapter5 class(ClassDescription)>>compile:classified:withStamp:notifying:logSource:
Chapter5 class(ClassDescription)>>compile:classified:withStamp:notifying:
ClassCategoryReader>>scanFrom:
[] in [] in [] in MultiByteBinaryOrTextStream(PositionableStream)>>fileInFor:announcing:
FullBlockClosure(BlockClosure)>>on:do:
[] in [] in MultiByteBinaryOrTextStream(PositionableStream)>>fileInFor:announcing:
FullBlockClosure(BlockClosure)>>on:do:
[] in MultiByteBinaryOrTextStream(PositionableStream)>>fileInFor:announcing:
[] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
FullBlockClosure(BlockClosure)>>on:do:
[] in MorphicUIManager>>displayProgress:at:from:to:during:
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FullBlockClosure(BlockClosure)>>ensure:
MorphicUIManager>>displayProgress:at:from:to:during:
ProgressInitiationException>>defaultResumeValue
ProgressInitiationException(Exception)>>resume
ProgressInitiationException>>defaultAction
UndefinedObject>>handleSignal:
ProgressInitiationException(Exception)>>signal
ProgressInitiationException>>display:at:from:to:during:
ProgressInitiationException class>>display:at:from:to:during:
ByteString(String)>>displayProgressAt:from:to:during:
ByteString(String)>>displayProgressFrom:to:during:
MultiByteBinaryOrTextStream(PositionableStream)>>fileInFor:announcing:
MultiByteBinaryOrTextStream(PositionableStream)>>fileInAnnouncing:
[] in SARInstaller class>>fileIntoChangeSetNamed:fromStream:
[] in SARInstaller class>>withCurrentChangeSetNamed:do:
FullBlockClosure(BlockClosure)>>ensure:
SARInstaller class>>withCurrentChangeSetNamed:do:
SARInstaller class>>fileIntoChangeSetNamed:fromStream:
SARInstaller>>fileInMemberNamed:
SARInstaller>>fileInPackageNamed:
SARInstaller>>DoIt
Compiler>>evaluateCue:ifFail:logged:
Compiler>>evaluate:in:to:notifying:ifFail:logged:
Compiler class>>evaluate:for:notifying:logged:
Compiler class>>evaluate:for:logged:
[] in [] in [] in MultiByteBinaryOrTextStream(PositionableStream)>>fileInFor:announcing:
FullBlockClosure(BlockClosure)>>on:do:
[] in [] in MultiByteBinaryOrTextStream(PositionableStream)>>fileInFor:announcing:
FullBlockClosure(BlockClosure)>>on:do:
[] in MultiByteBinaryOrTextStream(PositionableStream)>>fileInFor:announcing:
[] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
FullBlockClosure(BlockClosure)>>on:do:
[] in MorphicUIManager>>displayProgress:at:from:to:during:
FullBlockClosure(BlockClosure)>>ensure:
MorphicUIManager>>displayProgress:at:from:to:during:
ProgressInitiationException>>defaultResumeValue
ProgressInitiationException(Exception)>>resume
ProgressInitiationException>>defaultAction
UndefinedObject>>handleSignal:
ProgressInitiationException(Exception)>>signal
ProgressInitiationException>>display:at:from:to:during:
ProgressInitiationException class>>display:at:from:to:during:
-- and more not shown --
Prolog.sar (application/octet-stream, 80.9 KB) - not displayed
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.