Articles

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

Looking Forward to 2015

It’s scary to think that 2014 has been and gone, and that I still haven’t released the next major version of Whiley!  Despite this, I have been busy improving the compiler and language and I thought it would be helpful for me to recap what was achieved last year, and what the goals going . . . → Read More: Looking Forward to 2015

Verification with Data from Untrusted Sources

Recently, I was listening to the latest edition of the Illegal Argument podcast, and it turns out they were discussing Whiley! (about 103:16 minutes in). The discussion was about how verification interacts with data from an untrusted source (e.g. from a database, network connection, etc). In particular, whether or not we can safely feed . . . → Read More: Verification with Data from Untrusted Sources

Whiley v0.3.31 Released!

The latest release is upon us, after a short break whilst I was holidaying in Europe!  This includes a few simple bug fixes and updates (see #433 and #392), along with one significant feature:

Improved Context Information for Verification Errors (#435).  When a verification error occurred, it was often difficult to tell which part . . . → Read More: Whiley v0.3.31 Released!

Whiley v0.3.30 Released!

The next release of Whiley is now ready to be downloaded.  This includes a small number of bug fixes and two more significant changes:

#418 — Removal of implicit coercions.  This has some consequences for how you write Whiley programs, and there are probably some follow-on changes needed. #427 — Improved disambiguation of cast . . . → Read More: Whiley v0.3.30 Released!

A Story of Cast Expressions

Issue #427 “Bug with Dereferencing Array Types” seemed like just another bug.  Submitted by a user last week (@Matt–), I didn’t think too much of it.  But, as sometimes happens, appearances can be deceiving.  In this case, the bug identified a flaw in the syntax of Whiley with respect to the treatment of cast . . . → Read More: A Story of Cast Expressions

Whiley v0.3.29 Released!

The next release of Whiley is now ready to be downloaded.  This includes a number of bug fixes, along with a change in the WyIL bytecode format.  The latter is ahead of further planned changes to improve the bytecode format and verification.  The list of changes is:

#423 — Bug fix related to parsing . . . → Read More: Whiley v0.3.29 Released!

Introducing the Whiley Cheat Sheet!

Recently, I created a Whiley Cheat Sheet for use in our SWEN224 course and I thought it was useful enough to share! The goal of the cheat sheet is to provide some simple examples to help you get going, rather than provide a comprehensive reference. I tried to cram as much as I could . . . → Read More: Introducing the Whiley Cheat Sheet!

Whiley v0.3.28 Released!

The next release of Whiley is already upon us, after only a week or so since the last.  This release consists of a slew of minor bug fixes, many of which have been discovered through students using the system in practice.  The main items are:

Problem Generating JVM Bytecode (#415).  This related to compiling . . . → Read More: Whiley v0.3.28 Released!