system (git-annex assistant). Linspire Linux chose Haskell for system tools development. Pandoc is a tool to convert one markup format into another. Pugs is a compiler and interpreter for the Raku programming language (formerly Perl 6). TidalCycles is a domain special language for live coding musical patterns, embedded in Haskell. Xmonad is a window manager for the X Window System, written fully in Haskell. Industry Bluespec SystemVerilog (BSV) is a language for semiconductor design that is an extension of Haskell. Also, Bluespec, Inc.'s tools are implemented in Haskell. Cryptol, a language and toolchain for developing and verifying cryptography algorithms, is implemented in Haskell. Facebook implements its anti-spam programs in Haskell, maintaining the underlying data access library as open-source software. The Cardano blockchain platform is implemented in Haskell. GitHub implemented Semantic, an open-source library for analysis, diffing, and interpretation of untrusted source code, in Haskell. Standard Chartered's financial modelling language Mu is syntactic Haskell running on a strict runtime. seL4, the first formally verified microkernel, used Haskell as a prototyping language for the OS developer. At the same time, the Haskell code defined an executable specification with which to reason, for automatic translation by the theorem-proving tool. The Haskell code thus served as an intermediate prototype before final C refinement. Target stores' supply chain optimization software is written in Haskell. Web Notable web frameworks written for Haskell include: IHP Yesod Servant Snap Criticism Jan-Willem Maessen, in 2002, and Simon Peyton Jones, in 2003, discussed problems associated with lazy evaluation while also acknowledging the theoretical motives for it. In addition to purely practical considerations such as improved performance, they note that lazy evaluation makes it more difficult for programmers to reason about the performance of their code (particularly its space use). Bastiaan Heeren, Daan Leijen, and Arjan van IJzendoorn in 2003 also observed some stumbling blocks for Haskell learners: "The subtle syntax and sophisticated type system of Haskell are a double edged sword – highly appreciated by experienced programmers but also a source of frustration among beginners, since the generality of Haskell often leads to cryptic error messages." To address these, researchers from Utrecht University developed an advanced interpreter called Helium, which improved the user-friendliness of error messages by limiting the generality of some Haskell features, and in particular removing support for type classes. Ben Lippmeier designed Disciple as a strict-by-default (lazy by explicit annotation) dialect of Haskell with a type-and-effect system,