Hannes Mehnert

About

Research Interest

  • Network protocols
  • Security
  • Operating systems
  • Software verification
  • Programming languages
  • Type Systems

Publications (reverse chronological order) (bibtex bibliography)

Selected projects

  • Not quite so broken protocol implementations
  • BTC Piñata
  • TLS demonstration server
  • (now maintained by Alexander Faithfull) Coqoon Eclipse plugin providing a feature-complete development environment for Coq proof scripts
  • (now maintained by Alexander Faithfull) Kopitiam Eclipse plugin for side-by-side development of Java code and Coq proofs (source on GitHub)
  • (no longer maintaining) Dylan compiler hacker and maintainer (Open Dylan) An object-centered dynamically typed programming language. Related to LISP, but with an ALGOL syntax and a clear separation of compile and run time. Dylan supports higher order functions, multiple inheritance, multiple dispatch, meta programming, exceptions, optional keyword arguments, …

    There are two open source implementations, both written in Dylan: Gwydion Dylan (originally developed at CMU) which compiles Dylan to C, but has no thread support; and Open Dylan (formerly Functional Developer, developed at Harlequin), which compiles Dylan to either x86 assembly or C code. Open Dylan has an IDE (currently only on Windows) which supports debugging, REPL, etc.

  • (no longer maintained) Live control and data flow visualization for the Open Dylan compiler short demo Served as a debug tool for my Diplom thesis (to see what is going on during compilation) visualization front-end compiler source compiler source with advanced typing
  • (no longer maintained) Network night vision - network protocol analyzer and TCP/IP stack (including GUI)

    gui-sniffer-small.png

  • (no longer maintained) KPortage - Gentoo package management KDE frontend
  • (no longer maintained) Buddha - DNS and DHCP configuration management (used in 2005/2006 for 4000 people network)
  • (no longer maintained) Sputnik - RFID tracking middleware (used in 2006/2007 to track 1000 people during 4 days at a conference)

Teaching (chronological order)

Created: 2016-10-20 Thu 00:29

Validate