Hi. On an Intel Mac running Mac OS X 10.6.8, I followed the instructions to install a NativeBoost VM found here: http://code.google.com/p/nativeboost/wiki/Installation. I downloaded the latest Mac NBCog VM, and ran into an error after evaluating NBInstaller install.
I'm using the 4.3alpha-11636.image file. The 4.2 image gives a different set of errors but also wont install:
The progress bar window says: Compiling NativeBoost-Core-IgorStasenko.36
The window title is "Syntax error" with a split text field. The top field contains: nbExternalStructure Fields parsing spec parseFields:byte
The bottom field has a red error message embedded in this line:
stream peek == #Invalid literal character ->; ifTrue: [ stream next ]. ].
Help?
On 30 September 2011 11:42, Lawson English lenglish5@cox.net wrote:
Hi. On an Intel Mac running Mac OS X 10.6.8, I followed the instructions to install a NativeBoost VM found here: http://code.google.com/p/nativeboost/wiki/Installation. I downloaded the latest Mac NBCog VM, and ran into an error after evaluating NBInstaller install.
I'm using the 4.3alpha-11636.image file. The 4.2 image gives a different set of errors but also wont install:
The progress bar window says: Compiling NativeBoost-Core-IgorStasenko.36
The window title is "Syntax error" with a split text field. The top field contains: nbExternalStructure Fields parsing spec parseFields:byte
The bottom field has a red error message embedded in this line:
stream peek == #Invalid literal character ->; ifTrue: [ stream next ]. ].
Help?
I didn't tested an installation in squeak 4.2 images. It looks like there is a change in parser which don't likes the following syntax:
#( a; b ; c)
imo, this is correct syntax. a ';' should be converted to #; symbol.
On Fri, Sep 30, 2011 at 04:36:43PM +0200, Igor Stasenko wrote:
On 30 September 2011 11:42, Lawson English lenglish5@cox.net wrote:
Hi. On an Intel Mac running Mac OS X 10.6.8, I followed the instructions to install a NativeBoost VM found here: http://code.google.com/p/nativeboost/wiki/Installation. I downloaded the latest Mac NBCog VM, ??and ran into an error after evaluating NBInstaller install.
I'm using the 4.3alpha-11636.image file. The 4.2 image gives a different set of errors but also wont install:
The progress bar window says: Compiling NativeBoost-Core-IgorStasenko.36
The window title is "Syntax error" with a split text field. The top field contains: nbExternalStructure Fields parsing spec parseFields:byte
The bottom field has a red error message embedded in this line:
?? ?? ?? ??stream peek == #Invalid literal character ->; ifTrue: [ stream next ]. ?? ??].
Help?
I didn't tested an installation in squeak 4.2 images. It looks like there is a change in parser which don't likes the following syntax:
#( a; b ; c)
imo, this is correct syntax. a ';' should be converted to #; symbol.
Squeak 3.6: #( a; b ; c) ==> #(#a #; #b #; #c)
Squeak 3.8: #( a; b ; c) ==> #(#a #; #b #; #c)
Squeak trunk: #( a; b ; c) ==> #(#a #';' #b #';' #c)
PharoCore-1.3-13173: #( a; b ; c) ==> #(#a #';' #b #';' #c)
Dave
On 30 September 2011 18:11, David T. Lewis lewis@mail.msen.com wrote:
On Fri, Sep 30, 2011 at 04:36:43PM +0200, Igor Stasenko wrote:
On 30 September 2011 11:42, Lawson English lenglish5@cox.net wrote:
Hi. On an Intel Mac running Mac OS X 10.6.8, I followed the instructions to install a NativeBoost VM found here: http://code.google.com/p/nativeboost/wiki/Installation. I downloaded the latest Mac NBCog VM, ??and ran into an error after evaluating NBInstaller install.
I'm using the 4.3alpha-11636.image file. The 4.2 image gives a different set of errors but also wont install:
The progress bar window says: Compiling NativeBoost-Core-IgorStasenko.36
The window title is "Syntax error" with a split text field. The top field contains: nbExternalStructure Fields parsing spec parseFields:byte
The bottom field has a red error message embedded in this line:
?? ?? ?? ??stream peek == #Invalid literal character ->; ifTrue: [ stream next ]. ?? ??].
Help?
I didn't tested an installation in squeak 4.2 images. It looks like there is a change in parser which don't likes the following syntax:
#( a; b ; c)
imo, this is correct syntax. a ';' should be converted to #; symbol.
Squeak 3.6: #( a; b ; c) ==> #(#a #; #b #; #c)
Squeak 3.8: #( a; b ; c) ==> #(#a #; #b #; #c)
Squeak trunk: #( a; b ; c) ==> #(#a #';' #b #';' #c)
PharoCore-1.3-13173: #( a; b ; c) ==> #(#a #';' #b #';' #c)
Dave
ok, then problem is in something else. Lawson, could you please paste the full method source with problematic code?
This is what appeared in the Syntax Error window:
parseFields: fieldSpec byteAlignment: byteAlign structure: structClass
| stream type name gen | stream := fieldSpec readStream. gen := NBFFICallout new requestor: structClass.
fields := Dictionary new. totalSize := 0. [ stream atEnd ] whileFalse: [ type := gen resolveType: stream next. name := stream next. name isSymbol ifFalse: [ self error: 'invalid field name']. fields at: name ifPresent: [ self error: 'duplicate field name' ]. fields at: name put: { type. totalSize }.
totalSize := totalSize + type storageSize. totalSize \ byteAlign > 0 ifTrue: [ totalSize := totalSize \ byteAlign + byteAlign ].
stream peek == #Invalid literal character ->; ifTrue: [ stream next ]. ].
On 9/30/11 9:20 AM, Igor Stasenko wrote: [...]
ok, then problem is in something else. Lawson, could you please paste the full method source with problematic code?
On 30.09.2011 18:20, Igor Stasenko wrote:
On 30 September 2011 18:11, David T. Lewislewis@mail.msen.com wrote:
On Fri, Sep 30, 2011 at 04:36:43PM +0200, Igor Stasenko wrote:
On 30 September 2011 11:42, Lawson Englishlenglish5@cox.net wrote:
Hi. On an Intel Mac running Mac OS X 10.6.8, I followed the instructions to install a NativeBoost VM found here: http://code.google.com/p/nativeboost/wiki/Installation. I downloaded the latest Mac NBCog VM, ??and ran into an error after evaluating NBInstaller install.
I'm using the 4.3alpha-11636.image file. The 4.2 image gives a different set of errors but also wont install:
The progress bar window says: Compiling NativeBoost-Core-IgorStasenko.36
The window title is "Syntax error" with a split text field. The top field contains: nbExternalStructure Fields parsing spec parseFields:byte
The bottom field has a red error message embedded in this line:
?? ?? ?? ??stream peek == #Invalid literal character ->; ifTrue: [ stream next ]. ?? ??].
Help?
I didn't tested an installation in squeak 4.2 images. It looks like there is a change in parser which don't likes the following syntax:
#( a; b ; c)
imo, this is correct syntax. a ';' should be converted to #; symbol.
Squeak 3.6: #( a; b ; c) ==> #(#a #; #b #; #c)
Squeak 3.8: #( a; b ; c) ==> #(#a #; #b #; #c)
Squeak trunk: #( a; b ; c) ==> #(#a #';' #b #';' #c)
PharoCore-1.3-13173: #( a; b ; c) ==> #(#a #';' #b #';' #c)
Dave
ok, then problem is in something else. Lawson, could you please paste the full method source with problematic code?
#; inspect -> Syntax error though...
ps. stream peek == #;
sure it's not a typo and should be stream peek == $; ?
Cheers, Henry
On 1 October 2011 02:24, Henrik Sperre Johansen henrik.s.johansen@veloxit.no wrote:
On 30.09.2011 18:20, Igor Stasenko wrote:
On 30 September 2011 18:11, David T. Lewislewis@mail.msen.com wrote:
On Fri, Sep 30, 2011 at 04:36:43PM +0200, Igor Stasenko wrote:
On 30 September 2011 11:42, Lawson Englishlenglish5@cox.net wrote:
Hi. On an Intel Mac running Mac OS X 10.6.8, I followed the instructions to install a NativeBoost VM found here: http://code.google.com/p/nativeboost/wiki/Installation. I downloaded the latest Mac NBCog VM, ??and ran into an error after evaluating NBInstaller install.
I'm using the 4.3alpha-11636.image file. The 4.2 image gives a different set of errors but also wont install:
The progress bar window says: Compiling NativeBoost-Core-IgorStasenko.36
The window title is "Syntax error" with a split text field. The top field contains: nbExternalStructure Fields parsing spec parseFields:byte
The bottom field has a red error message embedded in this line:
?? ?? ?? ??stream peek == #Invalid literal character ->; ifTrue: [ stream next ]. ?? ??].
Help?
I didn't tested an installation in squeak 4.2 images. It looks like there is a change in parser which don't likes the following syntax:
#( a; b ; c)
imo, this is correct syntax. a ';' should be converted to #; symbol.
Squeak 3.6: #( a; b ; c) ==> #(#a #; #b #; #c)
Squeak 3.8: #( a; b ; c) ==> #(#a #; #b #; #c)
Squeak trunk: #( a; b ; c) ==> #(#a #';' #b #';' #c)
PharoCore-1.3-13173: #( a; b ; c) ==> #(#a #';' #b #';' #c)
Dave
ok, then problem is in something else. Lawson, could you please paste the full method source with problematic code?
#; inspect -> Syntax error though...
ps. stream peek == #;
sure it's not a typo and should be stream peek == $; ?
yes its not a typo. Since it is a stream from given array:
#( a ; b ; c ; ) readStream
stream peek at some moment could answer #; symbol.
perhaps i should write it like #';' ? but why it considered invalid?
Cheers, Henry
2011/10/1 Igor Stasenko siguctua@gmail.com:
On 1 October 2011 02:24, Henrik Sperre Johansen henrik.s.johansen@veloxit.no wrote:
On 30.09.2011 18:20, Igor Stasenko wrote:
On 30 September 2011 18:11, David T. Lewislewis@mail.msen.com wrote:
On Fri, Sep 30, 2011 at 04:36:43PM +0200, Igor Stasenko wrote:
On 30 September 2011 11:42, Lawson Englishlenglish5@cox.net wrote:
Hi. On an Intel Mac running Mac OS X 10.6.8, I followed the instructions to install a NativeBoost VM found here: http://code.google.com/p/nativeboost/wiki/Installation. I downloaded the latest Mac NBCog VM, ??and ran into an error after evaluating NBInstaller install.
I'm using the 4.3alpha-11636.image file. The 4.2 image gives a different set of errors but also wont install:
The progress bar window says: Compiling NativeBoost-Core-IgorStasenko.36
The window title is "Syntax error" with a split text field. The top field contains: nbExternalStructure Fields parsing spec parseFields:byte
The bottom field has a red error message embedded in this line:
?? ?? ?? ??stream peek == #Invalid literal character ->; ifTrue: [ stream next ]. ?? ??].
Help?
I didn't tested an installation in squeak 4.2 images. It looks like there is a change in parser which don't likes the following syntax:
#( a; b ; c)
imo, this is correct syntax. a ';' should be converted to #; symbol.
Squeak 3.6: #( a; b ; c) ==> #(#a #; #b #; #c)
Squeak 3.8: #( a; b ; c) ==> #(#a #; #b #; #c)
Squeak trunk: #( a; b ; c) ==> #(#a #';' #b #';' #c)
PharoCore-1.3-13173: #( a; b ; c) ==> #(#a #';' #b #';' #c)
Dave
ok, then problem is in something else. Lawson, could you please paste the full method source with problematic code?
#; inspect -> Syntax error though...
ps. stream peek == #;
sure it's not a typo and should be stream peek == $; ?
yes its not a typo. Since it is a stream from given array:
#( a ; b ; c ; ) readStream
stream peek at some moment could answer #; symbol.
perhaps i should write it like #';' ? but why it considered invalid?
Ah, all these behaviours were removed from Squeak #; -> #';' #1 -> 1 #$1 -> $1 The rationale was: 1) These were not defined in st80, nor in any formal Smalltalk syntax. # was only for literal symbols or literal arrays. 2) #';' 1 and $1 already are literals, so we don't need any other syntax or additional decoration. 3) This is not portable, no other dialect would accept it. 4) And there were plenty of oddities with doubled # or spaces inserted in between...
Now, Igor you seem to suggest that these extensions would be logical given how the inside of literal array is interpreted, is that it?
Nicolas
Cheers, Henry
-- Best regards, Igor Stasenko.
On 2 October 2011 19:35, Nicolas Cellier nicolas.cellier.aka.nice@gmail.com wrote:
2011/10/1 Igor Stasenko siguctua@gmail.com:
On 1 October 2011 02:24, Henrik Sperre Johansen henrik.s.johansen@veloxit.no wrote:
On 30.09.2011 18:20, Igor Stasenko wrote:
On 30 September 2011 18:11, David T. Lewislewis@mail.msen.com wrote:
On Fri, Sep 30, 2011 at 04:36:43PM +0200, Igor Stasenko wrote:
On 30 September 2011 11:42, Lawson Englishlenglish5@cox.net wrote: > > Hi. On an Intel Mac running Mac OS X 10.6.8, I followed the > instructions to > install a NativeBoost VM found here: > http://code.google.com/p/nativeboost/wiki/Installation. I downloaded > the > latest Mac NBCog VM, ??and ran into an error after evaluating > NBInstaller > install. > > I'm using the 4.3alpha-11636.image file. The 4.2 image gives a > different set > of errors but also wont install: > > The progress bar window says: Compiling > NativeBoost-Core-IgorStasenko.36 > > > The window title is "Syntax error" with a split text field. The top > field > contains: > nbExternalStructure Fields parsing spec parseFields:byte > > > The bottom field has a red error message embedded in this line: > > ?? ?? ?? ??stream peek == #Invalid literal character ->; ifTrue: [ > stream next > ]. > ?? ??]. > > > > Help? > I didn't tested an installation in squeak 4.2 images. It looks like there is a change in parser which don't likes the following syntax:
#( a; b ; c)
imo, this is correct syntax. a ';' should be converted to #; symbol.
Squeak 3.6: #( a; b ; c) ==> #(#a #; #b #; #c)
Squeak 3.8: #( a; b ; c) ==> #(#a #; #b #; #c)
Squeak trunk: #( a; b ; c) ==> #(#a #';' #b #';' #c)
PharoCore-1.3-13173: #( a; b ; c) ==> #(#a #';' #b #';' #c)
Dave
ok, then problem is in something else. Lawson, could you please paste the full method source with problematic code?
#; inspect -> Syntax error though...
ps. stream peek == #;
sure it's not a typo and should be stream peek == $; ?
yes its not a typo. Since it is a stream from given array:
#( a ; b ; c ; ) readStream
stream peek at some moment could answer #; symbol.
perhaps i should write it like #';' ? but why it considered invalid?
Ah, all these behaviours were removed from Squeak #; -> #';' #1 -> 1 #$1 -> $1 The rationale was:
- These were not defined in st80, nor in any formal Smalltalk syntax.
# was only for literal symbols or literal arrays. 2) #';' 1 and $1 already are literals, so we don't need any other syntax or additional decoration. 3) This is not portable, no other dialect would accept it. 4) And there were plenty of oddities with doubled # or spaces inserted in between...
Now, Igor you seem to suggest that these extensions would be logical given how the inside of literal array is interpreted, is that it?
No, i'm not suggesting that. :)
But as you noted, i agree that if array literals treating ';' inside as a #; literal, then it would be more consistent to allow #; syntax as well.
Anyways, it is easy to change the method to be correct even for more strict syntax rules.
2011/10/2 Igor Stasenko siguctua@gmail.com:
On 2 October 2011 19:35, Nicolas Cellier nicolas.cellier.aka.nice@gmail.com wrote:
2011/10/1 Igor Stasenko siguctua@gmail.com:
On 1 October 2011 02:24, Henrik Sperre Johansen henrik.s.johansen@veloxit.no wrote:
On 30.09.2011 18:20, Igor Stasenko wrote:
On 30 September 2011 18:11, David T. Lewislewis@mail.msen.com wrote:
On Fri, Sep 30, 2011 at 04:36:43PM +0200, Igor Stasenko wrote: > > On 30 September 2011 11:42, Lawson Englishlenglish5@cox.net wrote: >> >> Hi. On an Intel Mac running Mac OS X 10.6.8, I followed the >> instructions to >> install a NativeBoost VM found here: >> http://code.google.com/p/nativeboost/wiki/Installation. I downloaded >> the >> latest Mac NBCog VM, ??and ran into an error after evaluating >> NBInstaller >> install. >> >> I'm using the 4.3alpha-11636.image file. The 4.2 image gives a >> different set >> of errors but also wont install: >> >> The progress bar window says: Compiling >> NativeBoost-Core-IgorStasenko.36 >> >> >> The window title is "Syntax error" with a split text field. The top >> field >> contains: >> nbExternalStructure Fields parsing spec parseFields:byte >> >> >> The bottom field has a red error message embedded in this line: >> >> ?? ?? ?? ??stream peek == #Invalid literal character ->; ifTrue: [ >> stream next >> ]. >> ?? ??]. >> >> >> >> Help? >> > I didn't tested an installation in squeak 4.2 images. > It looks like there is a change in parser which don't likes the > following syntax: > > #( a; b ; c) > > > imo, this is correct syntax. a ';' should be converted to #; symbol. > Squeak 3.6: #( a; b ; c) ==> #(#a #; #b #; #c)
Squeak 3.8: #( a; b ; c) ==> #(#a #; #b #; #c)
Squeak trunk: #( a; b ; c) ==> #(#a #';' #b #';' #c)
PharoCore-1.3-13173: #( a; b ; c) ==> #(#a #';' #b #';' #c)
Dave
ok, then problem is in something else. Lawson, could you please paste the full method source with problematic code?
#; inspect -> Syntax error though...
ps. stream peek == #;
sure it's not a typo and should be stream peek == $; ?
yes its not a typo. Since it is a stream from given array:
#( a ; b ; c ; ) readStream
stream peek at some moment could answer #; symbol.
perhaps i should write it like #';' ? but why it considered invalid?
Ah, all these behaviours were removed from Squeak #; -> #';' #1 -> 1 #$1 -> $1 The rationale was:
- These were not defined in st80, nor in any formal Smalltalk syntax.
# was only for literal symbols or literal arrays. 2) #';' 1 and $1 already are literals, so we don't need any other syntax or additional decoration. 3) This is not portable, no other dialect would accept it. 4) And there were plenty of oddities with doubled # or spaces inserted in between...
Now, Igor you seem to suggest that these extensions would be logical given how the inside of literal array is interpreted, is that it?
No, i'm not suggesting that. :)
But as you noted, i agree that if array literals treating ';' inside as a #; literal, then it would be more consistent to allow #; syntax as well.
I see. Some kind of least surprise principle... But adding this syntax would immediately displace the problem one character further... ...and I'm not very sure how universal would the interpretation of multi non character symbols be: #(+/|!?&%,;;<>_.:=--^:*) -> #(#+/ #| #!?&%, #';' #';' #<> #'_' #'.' #':=' #-- #'^' #':' #*)
The delimitation seems arbitrary and hard to explain... how | is distinguished from other binary selectors... how := is handled specially ... To me, it's better to leave those behaviour as unspecified and reserve the right to perform additional cleanup later
Anyways, it is easy to change the method to be correct even for more strict syntax rules.
Sure
-- Best regards, Igor Stasenko.
I have a new sad thing to report: NativeBoost simply crashes squeak when I use a 4.1 image. I suspect this means that it loaded completely and then did something that Snow Leopard -Mac OS X 10.6.8- doesn't like, because it is fully 64-bit. I havent' tested it on Lion (10.7) but I suspect the same thing will happen.
Lawson
vm-dev@lists.squeakfoundation.org