This is cool. Having contract is really something I always wanted.

I do not know if Ice refers to Eiffel compiler mode but this is nice.

Le 25/2/16 23:48, Alain Rastoul a écrit :
Hi,

I have downloaded a first version of IceCompiler, a small tool who allow run time checks embedding in pharo classes on Smalltalkhub at

http://smalltalkhub.com/#!/~AlainRastoul/IceCompiler

If some interested pharoers are willing to give me feedback on this package I would greatly appreciate. This is not an announce but a request for feedback to advanced pharo users , since it is an alpha version with probably killing side effects. There is no ConfigurationOf as of today(there will be), but there is no dependency and the package loads well in a fresh standard Pharo 5.0.


Checks are written in standard smalltalk methods with design-by-contract style pragmas like

<contract: invariant>
<contract: #ensured appliedTo: #( #add: )>
<contract: #required appliedTo: #( #add: )>

Contract method calls are compiled in specified classes (with subclasses) in order to make bullet-proofing run test phases of Pharo code/image
 and to help in hard bug cases.


Before trying this package, please read the comments on smalltalk hub page, because if misused it may break your image, and do not use on standard important classes (Array, String, Dictionary, Collection etc.) ... unless you like danger :)


Many thanks in advance


regards,

Alain


Reply via email to