Hello,

I am returning to some work in Pharo after about ~2.5 years and reminding
myself of what I was working on before I got sidetracked. It appears

I had mostly finished for release a dynamic contracts library for run time
type checking based on Racket's contract library.[1] However, it relied on
some hackery to interact well with the TestCoverage class, since both the
contract and the TestCoverage wanted to replace the method during the run
of a test. However, since it seems in Pharo 8 the TestCoverage class is no
longer present, this seems like a good time to re-evaluate the project
before I go in to see what needs to be patched up. I therefore have three
questions:

1) Are there now any existing libraries for dynamic contracts that I should
use instead of patching my old library?

2) Is MetaLinks the preferred way to intercept messages, and if so can
someone point me to the repo (I can't seem to find it on Github)?

3) If 2, does MetaLinks play well with whatever is the current TestCoverage
alternative that I assume still does some form of message interception,
e.g. will the test coverage function still work properly on a MetaLink'ed
message, or will that require further hackery (I discovered MetaLinks after
the first version, so I used the more basic message replacement apis)?

Thank you,
Evan


[1] https://docs.racket-lang.org/reference/contracts.html

Reply via email to