{
  "id": 17633064,
  "title": "A Specialised Haskell Processor on FPGA",
  "url": "https://urgent.news/2026/11/01/a-specialised-haskell-processor-on-fpga",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-11-01T16:13:20.000Z",
  "source": {
    "name": "Lobsters",
    "slug": "lobsters",
    "url": "https://bathtub-01.github.io/technical/ouros-demo/"
  },
  "original_language": "en",
  "account": "A team of researchers have developed a specialised Haskell processor that operates on an FPGA and communicates through a UART port. This processor, named Ouros, is a combinator-based graph reduction machine. Instead of executing a sequence of instructions, the Haskell program is compiled into combinator graphs and reduced repeatedly. Ouros supports automatic multi-threading, concurrent garbage collection, and IO capability. IO is introduced using the state-passing representation of the IO monad, allowing side effects without a software runtime. The processor can be programmed to read and write registers, which are connected to the outside world. The FPGA board used for demonstration is AUP-ZU3, donated by AMD, and the processor runs at 100 MHz. Its resource usage is approximately 27% of LUTs, 7% of registers, and 40% of BRAM. While the FPGA demo may run slower than a modern laptop in terms of wall-clock speed, the implementation technology, circuit size, and power consumption model are all different, making a direct comparison difficult. The researchers see potential in using Ouros as a standalone computer running Haskell as its bare-metal programming language.",
  "summary": null,
  "key_points": [
    "Ouros is a Haskell processor on FPGA",
    "Supports automatic multi-threading and concurrent garbage collection",
    "Demonstrated on AUP-ZU3 FPGA board at 100 MHz"
  ],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}