Minor curiosity... I was wondering about the limits on the number of instance variables and class variables (particularly the latter regarding large FFI enumerations), so I produced a script to experiment with.Results:* Class Variables seem to have no practical limit. Although running 6C experiment a second time locks the image for about 3 minutes, but eventually completes.* Instance Variables limit is 255 or 256.�� This not clear since 256 works, but the error message** for 257 says the limit is 255.�� �� �� ��**��Error: genStorePopInstVarLong: index index 256 is out of range 0 to 255cheers -benHere is the fun script..."================================================" "The experiment has two parameters (select by changing the #at:��index):�� ��_RANGE - Range of variables assigned.�� Note variables are declared starting from 0001.�� ��_TYPE - (i)instance variable or (C)lass variable"_RANGE := {��1->9. "1. code validation"201->256. "2. instance variables limit"201->257. "3. instance variables Error: genStorePopInstVarLong: index index 256 is out of range 0 to 255"201->299. "4. class variables keep going"901->999. "5. class variables go extreme"9901->9999. "6. class variables go ultra extreme"} at: 1._TYPE := {
�� �� �� �� 'i'. �� �� "1. instance variables"�� �� �� �� 'C' �� ��"2. class variables" ��
} at: 1. ����"Choose experiment parameters above"start := _RANGE key.end := _RANGE value."DECLARE VARIABLES"vars := ''.1 to: end do: [:n| vars := vars, _TYPE, (n printPaddedWith: $0 to: 4), ' ��' ].vars.Object subclass: #TestinstanceVariableNames: ((_TYPE = 'i') ifTrue: [vars] ifFalse: [ '' ])classVariableNames: ((_TYPE = 'C') ifTrue: [vars] ifFalse: [ '' ])poolDictionaries: ''package: 'aaaa'."First run needs to execute above separately to create the class referred below""ASSIGN VARIABLES"body := ''.start to: end do: [ :n| body := body , _TYPE, (n printPaddedWith: $0 to: 4), ':=' , n printString , '.' ].body.#Test asClass compile: 'assign ' , body.��"INSPECT VARIABLES"body := '^{'.start to: end do: [ :n| body := body , _TYPE, (n printPaddedWith: $0 to: 4) , '. ' ].body.Test compile: 'inspect ' , body , '} inspect'.��Test new��assign��; inspect.