VAST Documentation: Executing scripted Smalltalk code during image start up / Example broken ?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

VAST Documentation: Executing scripted Smalltalk code during image start up / Example broken ?

Norbert Schlemmer
Hello
the example seems to be incorrect.

Smalltalk at: #TEMP put: OrderedCollection new!
 
TEMP add
: '1'!
TEMP add
: '2'!
TEMP add
: '3'!
TEMP add
: '!!'! "Exclamation marks in the Smalltalk code must be doubled to avoid being interpreted as the end of a code chunk"
 
Transcript cr; show: 'This message will not show up because the system is not fully initialized yet.'!
 
PostStartup!
 
Transcript cr; show: 'TEMP = ', TEMP printString!
Smalltalk removeKey: #TEMP!

Tested with 9.2 / Output :

--
You received this message because you are subscribed to the Google Groups "VA Smalltalk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/va-smalltalk/cba865c7-114f-4956-ac9c-722b5e47390e%40googlegroups.com.
Reply | Threaded
Open this post in threaded view
|

Re: VAST Documentation: Executing scripted Smalltalk code during image start up / Example broken ?

Bob Brodd
Hi Norbert,

Maybe I am missing something, but not sure what you think is broken?  

Bob

On Thursday, December 5, 2019 at 3:45:56 AM UTC-5, Norbert Schlemmer wrote:
Hello
the example seems to be incorrect.

Smalltalk at: #TEMP put: OrderedCollection new!
 
TEMP add
: '1'!
TEMP add
: '2'!
TEMP add
: '3'!
TEMP add
: '!!'! "Exclamation marks in the Smalltalk code must be doubled to avoid being interpreted as the end of a code chunk"
 
Transcript cr; show: 'This message will not show up because the system is not fully initialized yet.'!
 
PostStartup!
 
Transcript cr; show: 'TEMP = ', TEMP printString!
Smalltalk removeKey: #TEMP!

Tested with 9.2 / Output :

--
You received this message because you are subscribed to the Google Groups "VA Smalltalk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/va-smalltalk/d1475c7d-1198-4e15-b06c-6a3f5f63566e%40googlegroups.com.
Reply | Threaded
Open this post in threaded view
|

Re: VAST Documentation: Executing scripted Smalltalk code during image start up / Example broken ?

Norbert Schlemmer
Hi Bob
each statement has to end with an exclamation point.
regards, Norbert

--
You received this message because you are subscribed to the Google Groups "VA Smalltalk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/va-smalltalk/6686ca6d-0c3a-4092-8396-5d96922e90e1%40googlegroups.com.
Reply | Threaded
Open this post in threaded view
|

Re: VAST Documentation: Executing scripted Smalltalk code during image start up / Example broken ?

Bob Brodd
Ah .. each statement does not have to end with an exclamation point, but each code chunk in this file does need to as it uses the FileIn protocol for 'compiling/executing' the code.  You can choose to create code chunks in whatever manner you need. The prestartup section as written does require two code chunks, as each code chunk needs to be a compilable chunk of code. The creation of TEMP needs to be in its own chunk because the direct references to it that follow  would cause a compiler error (TEMP would not be known until after the code was executed).   It could be written in this manner though:

 Smalltalk at: #TEMP put: OrderedCollection new!
 
 TEMP add
: '1'.
 TEMP add
: '2'.
 TEMP add
: '3'.
 TEMP add
: '!!'.
 Transcript cr; show: 'This message will not show up because the system is not fully initialized yet.'!

 PostStartup!
 
 Transcript cr; show: 'TEMP = ', TEMP printString.
 Smalltalk removeKey: #TEMP!

 Bob



On Friday, December 6, 2019 at 3:44:42 AM UTC-5, Norbert Schlemmer wrote:
Hi Bob
each statement has to end with an exclamation point.
regards, Norbert

--
You received this message because you are subscribed to the Google Groups "VA Smalltalk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/va-smalltalk/05bf0a35-3f94-4a6b-82af-dbbc6805bfa1%40googlegroups.com.
Reply | Threaded
Open this post in threaded view
|

Re: VAST Documentation: Executing scripted Smalltalk code during image start up / Example broken ?

Bob Brodd
btw ... here is a link to some documentation about the abt.cnf file you may find useful: 

https://www.instantiations.com/docs/92/wwhelp/wwhimpl/js/html/wwhelp.htm#href=sg/stug515.html

On Friday, December 6, 2019 at 1:36:52 PM UTC-5, Bob Brodd wrote:
Ah .. each statement does not have to end with an exclamation point, but each code chunk in this file does need to as it uses the FileIn protocol for 'compiling/executing' the code.  You can choose to create code chunks in whatever manner you need. The prestartup section as written does require two code chunks, as each code chunk needs to be a compilable chunk of code. The creation of TEMP needs to be in its own chunk because the direct references to it that follow  would cause a compiler error (TEMP would not be known until after the code was executed).   It could be written in this manner though:

 Smalltalk at: #TEMP put: OrderedCollection new!
 
 TEMP add
: '1'.
 TEMP add
: '2'.
 TEMP add
: '3'.
 TEMP add
: '!!'.
 Transcript cr; show: 'This message will not show up because the system is not fully initialized yet.'!

 PostStartup!
 
 Transcript cr; show: 'TEMP = ', TEMP printString.
 Smalltalk removeKey: #TEMP!

 Bob



On Friday, December 6, 2019 at 3:44:42 AM UTC-5, Norbert Schlemmer wrote:
Hi Bob
each statement has to end with an exclamation point.
regards, Norbert

--
You received this message because you are subscribed to the Google Groups "VA Smalltalk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/va-smalltalk/1b111b0d-9d4e-4190-8ab2-17ea981ab018%40googlegroups.com.