CampSmalltalk/Cypress

STIG outputs "type":"objects" in properties.json. Pharo cannot interpret.

Opened this issue · 7 comments

I was attempting to port Andres Valloud's MIT licensed hash analysis tool using Cypress. When I write it using STIG everything works great but in the properties file of his HashAnalysisToolDictionary the type is 'objects' The ClassBuilder>>#computeFormat:instSize:forSuper:ccIndex in Pharo does not know what to do with that. It expects one of #(#normal #bytes #words #variable #weak).

I'd guess that it could be "type":"normal" because that is what FileTree emits for Dictionary and its subclasses.

Possible values for 'type' from VW are:

illegal, bytes, immediate, weak, objects, ephemeron, none

GemStone will eventually have some non-standard types.

I suppose we should use some defensive programming and have default type when we hit an unknown type .... although at some point in time, direct editing of the packages will be the preferred solution ... we're not necessarily trying to make it a completely smooth transition, but if there are obvious (non-complex) solutions, we can incorporate them into FileTree ... the fewer barriers to sharing code the better ...

I think that what I'll do is throw a warning if a type is not recognized ...the odds are that the class will have additional loading issues, but at least this will give you a chance to find out ...

Did we address this sufficiently with last year's specification update that says that type: must be dialect specific, i.e. carry a dialect prefix (_squeak_type, _vw_type, ...)?

Latest STIG makes the change and emits the class type as _vw_type. Note also that this attribute is only emitted if the class type is not the usual fixed-size pointer type (as we agreed)

Yeah that sounds right ... I'm going to have to get busy here and update my FileTree implementation to keep pace with you:)

and just as an FYI, there might be a port of Cypress to Ruby (actually MagLev):)

Dale

----- Original Message -----
| From: "Martin Kobetic" notifications@github.com
| To: "CampSmalltalk/Cypress" Cypress@noreply.github.com
| Sent: Wednesday, April 10, 2013 6:19:53 PM
| Subject: Re: [Cypress] STIG outputs "type":"objects" in properties.json. Pharo cannot interpret. (#14)
|
| Latest STIG makes the change and emits the class type as _vw_type. Note also
| that this attribute is only emitted if the class type is not the usual
| fixed-size pointer type (as we agreed)
|
| ---
| Reply to this email directly or view it on GitHub:
| #14 (comment)
|