stc-lang: A library for implicit, monadic dataflow parallelism

[ bsd3, concurrency, development, library, program ] [ Propose Tags ]

See the readme


[Skip to Readme]
Versions [faq] 1.0.0
Dependencies abstract-par (>=0.3.3), aeson (>=1.2.3.0), base (>=4.7 && <5), BoundedChan (>=1.0.3.0), bytestring (>=0.10.8.2), clock (>=0.7.2), deepseq (>=1.4.3.0), hashable (>=1.2.6.1), hashtables (>=1.2.2.1), hedis (>=0.9.12), hw-kafka-client (>=2.6.0), microlens (>=0.4.8.3), microlens-aeson (>=2.2.0.2), monad-par (>=0.3.4.8), monad-par-extras (>=0.3.3), mtl (>=2.2.1), random (>=1.1), stc-lang, text (>=1.2.2.2), transformers (>=0.5.2.0), uuid-types (>=1.0.3), vector (>=0.12.0.1), yaml (>=0.8.28) [details]
License BSD-3-Clause
Copyright 2017-2019 Norman Rink, Sebastian Ertel, Justus Adam
Author Norman Rink, Sebastian Ertel, Justus Adam
Maintainer justus.adam@tu-dresden.de
Revised Revision 1 made by justus at Thu Aug 1 12:03:20 UTC 2019
Category Concurrency, Development
Home page https://github.com/ohua-dev/stc-lang#readme
Source repo head: git clone https://github.com/ohua-dev/stc-lang
Uploaded by justus at Thu Aug 1 11:58:19 UTC 2019
Distributions NixOS:1.0.0
Executables ohua-stream-bench
Downloads 41 total (12 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs not available [build log]
All reported builds failed as of 2019-08-01 [all 3 reports]

Modules

  • Control
    • Monad
      • Control.Monad.Generator
      • Control.Monad.SD
      • Control.Monad.Stream
        • Control.Monad.Stream.Chan
        • Control.Monad.Stream.Par
        • Control.Monad.Stream.PinnedChan
  • Data
    • Data.Dynamic2
    • Data.StateElement
  • Type
    • Type.Magic

Flags

NameDescriptionDefaultType
debug-sched

Enable the debuggable scheduler

DisabledManual

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

For package maintainers and hackage trustees


Readme for stc-lang-1.0.0

[back to package description]

STCLang: A library for implicit monadic dataflow parallelism

STCLang is a library that enables stateful, implicit, monadic parallel computation in Haskell. The core ideas come from the ohua project.

STCLang lets you create parallel dataflows with stateful nodes without having to explicitly wire complex graph structures. Instead the program is written with an embedded, monadic DSL and automatically transformed into a graph and executed in parallel.

On top of the base abstraction we have also built an FRP (functional reactive programming) interface. This allows you to run reactive programs on sequential streams of values and leverage pipeline parallelism to peed up computation.

We also published the theory and concepts behind this library.

Publication

We documented the principles in this library in a paper at Haskell'2019.

A link to the publication will appear here once we have one, e.t.a. is 22th of August (date of the conference). Should it be after this date now, but there's still no link, I probably forgot. In that case open an issue, shoot me an email or tweet me @justusadam_.