This release is a total rewrite, and so will only include a list of high-level, major changes in the release notes.
Major Changes
- [NetKAT](http://www.cs.cornell.edu/~jnfoster/papers/frenetic-netkat.pdf) is the new policy language, replacing NetCore.
- The controller uses the async backend provided by [ocaml-openflow](https://github.com/frenetic-lang/ocaml-openflow)—Lwt is no longer supported.
- Frenetic applications are written in an event-based style rather than a callback style.
frenetic.1.0.2
We offer Frenetic in several formats:
Frenetic Tutorial VM
A VirtualBox appliance with Frenetic, and some other useful tools such as Mininet and Wireshark. If you're working through the tutorial, we strongly recommend using this virtual machine.
- Download and install the [VirtualBox](https://www.virtualbox.org) virtualization platform, if you don't have it.
- Download [frenetic.ova](http://www.cs.umass.edu/~arjun/download/frenetic.ova).
**md5:** `fe96ad2a5127ec4d9d58f9da72383978`
- Import _frenetic.ova_ into VirtualBox.
- Update the VM to the latest version of Frenetic. Within a terminal, enter the following commands:
$ opam update
$ opam upgrade
Executable (64-bit Linux systems)
The file _frenetic.1.0.2.linux_ below is the standalone Frenetic binary. You can use it to do the Frenetic programming exercises in the tutorial, if you have Mininet setup on your own machine.
OPAM
If you have OCaml and OPAM installed, you can get frenetic from OPAM:
$ opam update
$ opam install frenetic
If you're working through the OpenFlow programming tutorial using Ox, you can get Ox from OPAM too:
$ opam update
$ opam install ox
pldi2013-tutorial
This is the version of Frenetic we used at the PLDI 2013 tutorial on Frenetic.