ru.primetalk:synapse-grid-slf4j

SynapseGrid is a framework for constructing reactive real-time immutable data flow systems. -core contains everything to run a single-threaded system, -akka contains everything to run systemsover Akka actors, -slf4j - enables logging, -examples - a few test systems.

Лицензия

Лицензия

Категории

Категории

SLF4J Библиотеки уровня приложения Logging
Группа

Группа

ru.primetalk
Идентификатор

Идентификатор

synapse-grid-slf4j
Последняя версия

Последняя версия

1.3.1
Дата

Дата

Тип

Тип

jar
Описание

Описание

SynapseGrid is a framework for constructing reactive real-time immutable data flow systems. -core contains everything to run a single-threaded system, -akka contains everything to run systemsover Akka actors, -slf4j - enables logging, -examples - a few test systems.
Ссылка на сайт

Ссылка на сайт

https://github.com/Primetalk/SynapseGrid
Система контроля версий

Система контроля версий

https://github.com/Primetalk/SynapseGrid

Скачать synapse-grid-slf4j

Как подключить последнюю версию

<!-- https://jarcasting.com/artifacts/ru.primetalk/synapse-grid-slf4j/ -->
<dependency>
    <groupId>ru.primetalk</groupId>
    <artifactId>synapse-grid-slf4j</artifactId>
    <version>1.3.1</version>
</dependency>
// https://jarcasting.com/artifacts/ru.primetalk/synapse-grid-slf4j/
implementation 'ru.primetalk:synapse-grid-slf4j:1.3.1'
// https://jarcasting.com/artifacts/ru.primetalk/synapse-grid-slf4j/
implementation ("ru.primetalk:synapse-grid-slf4j:1.3.1")
'ru.primetalk:synapse-grid-slf4j:jar:1.3.1'
<dependency org="ru.primetalk" name="synapse-grid-slf4j" rev="1.3.1">
  <artifact name="synapse-grid-slf4j" type="jar" />
</dependency>
@Grapes(
@Grab(group='ru.primetalk', module='synapse-grid-slf4j', version='1.3.1')
)
libraryDependencies += "ru.primetalk" % "synapse-grid-slf4j" % "1.3.1"
[ru.primetalk/synapse-grid-slf4j "1.3.1"]

Зависимости

compile (3)

Идентификатор библиотеки Тип Версия
ru.primetalk : synapse-grid-core jar 1.3.1
org.slf4j : slf4j-api jar 1.7.2
org.scala-lang : scala-library jar 2.10.3

test (2)

Идентификатор библиотеки Тип Версия
junit : junit jar 4.11
org.scalatest : scalatest_2.10 jar 1.9.1

Модули Проекта

Данный проект не имеет модулей.

SynapseGrid

Build Status

SynapseGrid is an original approach to implement functional reactive programming paradigm in Scala. The library is based on a solid foundation of Petri nets.

A few words about what SynapseGrid is:

  • framework for constructing systems that are:
    • reactive
    • event-driven
    • resilent
  • it resembles other modern event-driven architectures (ScalaRx, Akka Streams, Spark, etc.).

Blog about SynapseGrid

Feature highlights

  1. SynapseGrid allows function composition of "multifunctions" (functions with a few inputs and outputs). It is more flexible than monads composition of Kleisli Arrows.
  2. Strictly typed message handling in Akka actors (more natural than in Typed actors or Typed Channels).
  3. Multi input/multi output functions (multifunctions).
  4. Systems process portions of information ASAP. The grid can be the base of real time systems.
  5. It is possible to nest subsystems (like matreshkas) creating modular systems.
  6. Declarative composition in the form of DataFlow diagram.
  7. Easy to use DSL:
  val a = contact[String]("a")
  val b = contact[String]("b")
  val c = contact[Char]("c")
  a -> b flatMap (_.split("\\s+"))
  a -> c flatMap (_.toCharArray)
  inputs(a)
  outputs(b,c)
  1. Dependency injection replacement (accompanied with Scala traits).
  2. DataFlow diagram for a system can be created easily — system.toDot(): example1 system picture example2 system picture example3 system picture

For details see README in English.

Getting started

Add a dependency to your build:

  • gradle:

    compile ['ru.primetalk:synapse-grid-core_2.11:1.4.7', 'ru.primetalk:synapse-grid-akka_2.11:1.4.7']

    or compile ['ru.primetalk:synapse-grid-core_2.11:1.4.7', 'ru.primetalk:synapse-grid-akka_2.11:1.4.7']

  • sbt:

    libraryDependencies += "ru.primetalk" %% "synapse-grid-core" % "1.4.7" libraryDependencies += "ru.primetalk" %% "synapse-grid-akka" % "1.4.7"

(or any other build system: group: ru.primetalk, artifactId: synapse-grid-core, version: 1.4.7)

Travis build status

  • PR status: Build Status

See also (English)

  1. Walkthrough.
  2. Motivation for SynapseGrid.
  3. License (BSD-like).
  4. Subsystems.
  5. Blog about SynapseGrid
  6. Distrubuted systems
  7. Typed frames.

См. также (See also in Russian)

  1. README по-русски.
  2. Actors support (in Russian).
  3. Лицензия.
  4. Работа с подсистемами.
  5. Blog about SynapseGrid (en)
  6. Распределённые системы.
  7. Строго типизированные фреймы.
  8. Хабрахабр: Строго типизированное представление неполных данных

Версии библиотеки

Версия
1.3.1
1.3.0
1.2.0