mryndzionek / trace-decoder

Decoder for lightweight, application-aware trace format for embedded systems

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

trace-decoder

A decoder for esm tracing subsystem. Basically replacement for this Python script. Haskell is my language of choice for those kind of things these days. Here are the reasons:

  • Haskell is more "dataflowy" due to laziness and that's a huge win for stream processing systems (deterministic concurrency, very important for embedded system testing)
  • many libraries/frameworks available providing yet more useful streaming semantics (streamly)
  • strong static typing is very important for codebases that grow/change a lot (most code used for testing)
  • many modules available and easy C/C++ interoperability

There is a default.nix file provided for builiding with static-haskell-nix (Nix needs to be installed).

$(nix-build --no-link -A fullBuildScript)

⚠️ The compilation from scratch takes hours. On a i3-4330 CPU @ 3.50GHz it took around 7h.

Compiled binaries can be found in releases section.

About

Decoder for lightweight, application-aware trace format for embedded systems

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:Haskell 82.9%Language:Nix 17.1%