13 Oct 2021
Plenty of things to talk about in this update. I’ll get right to it.
In version 0.0.18, CrossHair can generate counterexample strings in full unicode. Until now, unicode support was probably the most glaring omission in CrossHair’s capability list.
It also has expanded symbolic support for regexes and various string methods. (full release notes)
CrossHair can now check contracts written in deal! Check out the details here.
One neat thing about deal in particular: it encourages you to tag side-effects of your functions. CrossHair uses some of these tags to avoid unintended side effects while checking contracts.
All of the EuroPython recordings have been released!
I shared a talk about contracts, and you can skip ahead to my CrossHair section if you like.
One of the neat things about this section of the talk is that I get into some of the design consequences of developing with contracts specifically (as opposed to related strategies like fuzzing and property-based testing, which can also be CrossHair-facilitated).
CrossHair has a few open issues marked for Hacktoberfest.
That said, one of the biggest ways to help CrossHair is to:
Watching Python take the leader position this month in the TIOBE index, I am filled with optimism. Python, the language, has some properties that are particularly suited to the strengths of SMT solvers. (arbitrary size integers, for one)
We just need to wield that strength.
Let’s get to work.