Skip to content

Releases: graninas/cpp_stm_free

Optimization

Choose a tag to compare

@graninas graninas released this 24 Jul 16:22

'Stupid GUID' replaced by int.
Boost x2 in single threaded, x10 in multithreaded.

New engine & combinators

Choose a tag to compare

@graninas graninas released this 23 Jul 21:03
  • New engine: Church-encoded Free monad instead of Free monad. Both engines are available, but Church is now main.
  • New engine: optimization. Quadratic complexity of binding is eliminated. Now, it's linear.
  • New project structure.
  • std::optional-aware STML combinators.
  • More new combinators.
  • Several small optimizations and tunings.

Interface and structure improvements

Choose a tag to compare

@graninas graninas released this 20 May 08:20
  • License changed to BSD 3.
  • Removed dependency from cpp_functional_core.
  • Code structure improved and cleaned up.
  • Unused stuff removed.
  • Combinators interface updated.
  • Small fixes and improvements.

Bugfix release

Choose a tag to compare

@graninas graninas released this 18 May 19:29
  • Concurrency bug fixed. Now, only modified TVars would be merged on commit.
  • Tiny performance improvements.

Cleanup release

Choose a tag to compare

@graninas graninas released this 18 May 19:36
  • Code cleanups
  • New combinators
  • Tiny behavior improvements

STM: initial version

Choose a tag to compare

@graninas graninas released this 18 May 19:34

First working version of STM with free monad.

  • Monadic STM: core mechanics
  • Combinators
  • Simple Context