Articles

Whiley v0.3.37 Released!

Another big update to Whiley landed today, and includes a whole raft of changes. In particular, various algorithms in the automated theorem prover have been reworked to improve performance (though more still needs to be done here). A rough summary of the changes in this version is:

Performance Improvements for Automated Theorem Prover.  In . . . → Read More: Whiley v0.3.37 Released!

Encoding C Strings in Whiley

In this post, we’re going to consider representing the classic C string in Whiley. This turns out to be useful as we can then try to verify properties about functions which operate on C strings (e.g. strlen(), strcpy(), etc). If you’re not familiar with C strings, then the main points are:

Roughly speaking, C . . . → Read More: Encoding C Strings in Whiley

Verifying Software with Whiley

A couple of weeks back, I gave a presentation to the Wellington Java User Group. The talk provides a useful introduction to verifying software in Whiley, and shows a bunch of interesting examples. Anyway, you can see the presentation here:

Wellington Java User Group Presentation from John Hurst on Vimeo.

. . . → Read More: Verifying Software with Whiley

Introductory Lecture on Verification in Whiley

We’ve started using Whiley again in my second year course Formal Foundations of Programming. The aim of this course is to introduce students into a range of techniques related to software correctness. So far, we’ve looked at some static analysis and model checking tools.

Anyway, last week I gave an introductory lecture on writing . . . → Read More: Introductory Lecture on Verification in Whiley

Whiley v0.3.36 Released!

The next version of Whiley is upon us.  Whilst predictably late, this release packs quite a punch and contains a range of changes to the language syntax, and critical updates to the verifier.  Certainly, this version is capable of verifying more programs than any previous version.  The summary of changes includes:

Update list to . . . → Read More: Whiley v0.3.36 Released!

Whiley v0.3.35 Released!

Finally, a release of Whiley that is on schedule!  This includes some fairly significant updates to the syntax of the language itself:

Removal of set and map data types (#471).  These data types have been entirely removed from both the source language (Whiley), and the bytecode language (WyIL).  This is a pretty radical change, . . . → Read More: Whiley v0.3.35 Released!

Whiley v0.3.34 Released!

Finally, after almost two months of effort, the next version of Whiley is released.  This release has taken a long time, not because it contains so much, but simply because I have been truly busy with teaching my second year paper SWEN221.  Nevertheless, this release does contain some interesting additions:

Refactored Test Cases.  The . . . → Read More: Whiley v0.3.34 Released!

Whiley v0.3.33 Released!

The next release of Whiley is upon us!! Work got a little bogged down with the start of term, but should hopefully now pick up a little.  The main component of this release is the removal of the string and char data types from the language. This is quite a big change, but is . . . → Read More: Whiley v0.3.33 Released!

Whiley v0.3.32 released!

Well, it is with some trepidation that I have released the next version of Whiley. This incorporates a very large number of changes and, unfortunately, should be considered extremely unstable at this time (at least, from the perspective of verification). In particular, the main list of changes includes:

Updated syntax for function and method . . . → Read More: Whiley v0.3.32 released!

My ATtiny85 Games Console

One my goals for Whiley in 2015 is to focus more on embedded systems (see here for more). A recent project of ours was compiling Whiley code to run on a QuadCopter and this identified several challenges here.  In particular, Whiley does not provide good memory management for such resource constrained environments. My plan . . . → Read More: My ATtiny85 Games Console