2013
2011
Concurrence — Concurrence Framework v0.3.1 documentation
by jpcaruanaConcurrence is a framework for creating massively concurrent network applications in Python.
It takes a Lightweight-tasks-with-message-passing approach to concurrency.
The goal of Concurrence is to provide an easier programming model for writing high performance network applications than existing solutions (Multi-threading, Twisted, asyncore etc).
Concurrence uses Lightweight tasks in combination with libevent to expose a high-level synchronous API to low-level asynchronous IO.
Eventlet Networking Library
by jpcaruanaEventlet is a concurrent networking library for Python that allows you to change how you run your code, not how you write it.
2010
2009
Erik Engbrecht's Blog: Pondering Actor Design Trades
by jpcaruana (via)# Why is the standard Scala actor implementation so complex when others have done it in a such simpler fashion?
# Is it better to have one, big actor library that supports a wide variety of use cases, or a bunch of smaller ones targeted at specific niches and programming styles?
# If there are to be a bunch, should they just be conceptually similar (e.g. all based on the actor model), or should there be interoperability among them?
scalacheck - Google Code
by jpcaruanaScalaCheck is a powerful tool for automatic unit testing of Scala and Java programs. It features automatic test case generation and minimization of failing test cases. ScalaCheck started out as a Scala port of the Haskell library QuickCheck, and has since evolved and been extended with features not found in Haskell QuickCheck.
The Pragmatic Bookshelf | Programming Scala
by jpcaruana (via)Scala is an exciting, modern, multi-paradigm language for the JVM. You can use it to write traditional, imperative, object-oriented code. But you can also leverage its higher level of abstraction to take full advantage of modern, multicore systems. Programming Scala will show you how to use this powerful functional programming language to create highly scalable, highly concurrent applications on the Java Platform.
Java to Scala with the Help of Experts | The Scala Programming Language
by jpcaruanaJava to Scala with the Help of Experts
The Scala Programming Language
by jpcaruana & 3 othersScala is a general purpose programming language designed to express common programming patterns in a concise, elegant, and type-safe way. It smoothly integrates features of object-oriented and functional languages, enabling Java and other programmers to be more productive. Code sizes are typically reduced by a factor of two to three when compared to an equivalent Java application
scalaris - Google Code
by jpcaruana (via)Scalaris is a scalable, transactional, distributed key-value store. It can be used for building scalable Web 2.0 services.
Clojure - home
by jpcaruana & 1 other (via)Clojure is a dynamic programming language that targets the Java Virtual Machine. It is designed to be a general-purpose language, combining the approachability and interactive development of a scripting language with an efficient and robust infrastructure for multithreaded programming. Clojure is a compiled language - it compiles directly to JVM bytecode, yet remains completely dynamic. Every feature supported by Clojure is supported at runtime. Clojure provides easy access to the Java frameworks, with optional type hints and type inference, to ensure that calls to Java can avoid reflection.
mojombo's erlectricity at master - GitHub
by jpcaruana (via)Erlectricity allows a Ruby program to receive and respond to Erlang messages sent over the Erlang binary protocol.
Ruby / EventMachine - Trac
by jpcaruana (via)EventMachine is a library for Ruby, C , and Java programs. It provides event-driven I/O using the Reactor pattern. EventMachine is designed to simultaneously meet two key needs:
* Extremely high scalability, performance and stability for the most demanding production environments; and
* An API that eliminates the complexities of high-performance threaded network programming, allowing engineers to concentrate on their application logic.
This unique combination makes EventMachine a premier choice for designers of critical networked applications, including web servers and proxies, email and IM production systems, authentication/authorization processors, and many more.
dramatis - Dramatis - Dramatis
by jpcaruana & 1 otherDramatis - An actor library for Ruby and Python
plists - Google Code
by jpcaruanaplists is a drop-in replacement for the Erlang module lists, making most list operations parallel. It can operate on each element in parallel, for IO-bound operations, on sublists in parallel, for taking advantage of multi-core machines with CPU-bound operations, and across erlang nodes, for parallizing inside a cluster. It handles errors and node failures. It can be configured, tuned, and tweaked to get optimal performance while minimizing overhead.