Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/puniverse/pulsar
Fibers, Channels and Actors for Clojure
https://github.com/puniverse/pulsar
actors clojure concurrency fibers jvm
Last synced: about 1 month ago
JSON representation
Fibers, Channels and Actors for Clojure
- Host: GitHub
- URL: https://github.com/puniverse/pulsar
- Owner: puniverse
- License: other
- Created: 2013-04-10T09:03:02.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2020-02-05T08:27:44.000Z (almost 5 years ago)
- Last Synced: 2024-09-29T17:22:43.087Z (about 1 month ago)
- Topics: actors, clojure, concurrency, fibers, jvm
- Language: Clojure
- Homepage: http://docs.paralleluniverse.co/pulsar/
- Size: 3.84 MB
- Stars: 909
- Watchers: 51
- Forks: 53
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: COPYING
Awesome Lists containing this project
README
# *Pulsar*
Fibers, Channels and Actors for Clojure
[![Build Status](https://travis-ci.org/puniverse/pulsar.svg?branch=master)](https://travis-ci.org/puniverse/pulsar) [![Dependency Status](https://www.versioneye.com/user/projects/52b019ccec137505ee00002e/badge.png?style=flat)](https://www.versioneye.com/user/projects/52b019ccec137505ee00002e) [![Version](http://img.shields.io/badge/version-0.7.9-blue.svg?style=flat)](https://github.com/puniverse/pulsar/releases) [![License](http://img.shields.io/badge/license-EPL-blue.svg?style=flat)](https://www.eclipse.org/legal/epl-v10.html) [![License](http://img.shields.io/badge/license-LGPL-blue.svg?style=flat)](https://www.gnu.org/licenses/lgpl.html)Pulsar wraps the [Quasar](https://github.com/puniverse/quasar) library with a Clojure API that's very similar to Erlang.
## Requirements
Java 7 and up and Clojure 1.5 and up are required to run Pulsar.
## Getting started
Add the following dependencies to [Leiningen](http://github.com/technomancy/leiningen/)'s project.clj:
```clojure
[co.paralleluniverse/quasar-core "0.7.9"]
[co.paralleluniverse/pulsar "0.7.9"]
```Then, the following must be added to the project.clj file:
~~~ clojure
:java-agents [[co.paralleluniverse/quasar-core "0.7.9"]]
~~~or, add the following to the java command line:
~~~ sh
-javaagent:path-to-quasar-jar.jar
~~~Alternatively, to build Pulsar from the source, clone the repository and run:
```
lein midje
```You can run the examples like this:
```
lein -o run -m co.paralleluniverse.pulsar.examples.pingpong
```For benchmarks, you should use `lein trampoline`, like so:
```
lein trampoline run -m co.paralleluniverse.pulsar.examples.ring-benchmark 1000 1000
```## Usage
Documentation and examples can be found [here](http://docs.paralleluniverse.co/pulsar/).
You can also read the introductory [blog post](http://blog.paralleluniverse.co/post/49445260575/quasar-pulsar).
When running code that uses Pulsar, the instrumentation agent must be run by adding the following
to the `java` command line
or to the `:jvm-opts` section in project.clj:```
-javaagent:path-to-quasar-jar.jar
```## Documentation
* [User Guide](http://docs.paralleluniverse.co/pulsar/)
* [API](http://docs.paralleluniverse.co/pulsar/api/)
* [Marginalia](http://docs.paralleluniverse.co/pulsar/uberdoc.html) (of tests and examples)## Community
* [Google group](https://groups.google.com/forum/?fromgroups#!forum/quasar-pulsar-user).
## Contributions (including Pull Requests)
Please have a look at some brief [information for contributors](https://github.com/puniverse/quasar/blob/master/CONTRIBUTING.md).
## License
Pulsar is free software published under the following license:
```
Copyright © 2013-2017 Parallel UniverseThis program and the accompanying materials are dual-licensed under
either the terms of the Eclipse Public License v1.0 as published by
the Eclipse Foundationor (per the licensee's choosing)
under the terms of the GNU Lesser General Public License version 3.0
as published by the Free Software Foundation.
```[![githalytics.com alpha](https://cruel-carlota.gopagoda.com/6f172ebdf11f5b084127c9470cc7c887 "githalytics.com")](http://githalytics.com/puniverse/pulsar)