CLaSH is a tool-chain/language to translate subsets of Haskell to synthesizable VHDL. Haskell modules (example) written in a hardware-oriented subset of Haskell are translated into VHDL by the library. That is, you can design hardware directly in Haskell, and generate hardware designs from GHCi.
The Hackage package is now available in AUR.
Amongst other things, it provides a “:vhdl” extension to the GHCi command line, allowing you to generate hardware designs from the GHCi prompt. For more information about CLaSH, see the examples, sources and documentation project page, and the demo from the Haskell Workshop last year:
Other hardware-related libraries in Haskell in AUR:
- chalmers-lava2000 library: Hardware description library
- clash library: CAES Language for Synchronous Hardware (CLaSH)
- ForSyDe library: ForSyDe’s Haskell-embedded Domain Specific Language.
- Wired library: Wire-aware hardware description
- york-lava library: A library for digital circuit description.
Posted in Releases
berp, is an implementation of Python 3, written in Haskell. It is now available in AUR.
It provides a compiler and an interpreter. In both cases the input Python program is translated into Haskell code. The compiler turns the Haskell code into machine code. The interpreter runs the Haskell code immediately via the GHCi interpreter. The user interface of the interpreter imitates the one provided by CPython.
For more information:
ThreadScope is a graphical thread profiler and debugger for Haskell.
The Threadscope program attaches to a running Haskell program, allowing us to debug the parallel performance of Haskell programs. Using Threadscope we can check to see that work is well balanced across the available processors and spot performance issues relating to garbage collection or poor load balancing.
ThreadScope is now available pre-packaged for Arch Linux via AUR. It builds on the newly cabalized GTK libraries, such as haskell-cairo.
For information on how to use ThreadScope to improve the performance of your multicore Haskell programs, see the references:
Repa, a new library for multi-dimensional automatically-parallel arrays in Haskell, is now available in Arch Linux via AUR. Such arrays may be converted to and from bytestrings, and written out in various formats. Example algorithms are available, including fft2d, matmult, and laplace, along with an algorithm library. The library may prove useful for scientific and numerical computing, where high level languages, with good parallel performance, should shine.
More information about Repa is available:
The full set of packages are available in AUR:
GF, a programming language for multilingual grammar applications is
GF provides many tools for multi-language programming, and can be considered:
- a special-purpose language for grammars, like YACC, Bison, Happy, BNFC, but not restricted to programming languages
- a functional language, like Haskell, Lisp, OCaml, Scheme, SML, but specialized to grammar writing
- a natural language processing framework, like LKB, XLE, Regulus, but based on functional programming and type theory
- a categorial grammar formalism, like ACG, CCG, but different and equipped with different tools
- a logical framework, like Agda, Coq, Isabelle, but equipped with concrete syntax in addition to logic
GF can be used for building
GF is written in Haskell.