Need advice about which tool to choose?Ask the StackShare community!

Erlang

1.3K
739
+ 1
327
Orleans

59
126
+ 1
41
Add tool

Erlang vs Orleans: What are the differences?

What is Erlang? A programming language used to build massively scalable soft real-time systems with requirements on high availability. Some of Erlang's uses are in telecoms, banking, e-commerce, computer telephony and instant messaging. Erlang's runtime system has built-in support for concurrency, distribution and fault tolerance. OTP is set of Erlang libraries and design principles providing middle-ware to develop these systems.

What is Orleans? An approach to building distributed applications in .NET. Orleans is a framework that provides a straightforward approach to building distributed high-scale computing applications, without the need to learn and apply complex concurrency or other scaling patterns. It was created by Microsoft Research and designed for use in the cloud.

Erlang can be classified as a tool in the "Languages" category, while Orleans is grouped under "Concurrency Frameworks".

Erlang and Orleans are both open source tools. Erlang with 7.75K GitHub stars and 2.1K forks on GitHub appears to be more popular than Orleans with 5.12K GitHub stars and 1.24K GitHub forks.

Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Erlang
Pros of Orleans
  • 60
    Concurrency Support
  • 60
    Real time, distributed applications
  • 56
    Fault tolerance
  • 35
    Soft real-time
  • 31
    Open source
  • 21
    Functional programming
  • 20
    Message passing
  • 15
    Immutable data
  • 13
    Works as expected
  • 5
    Facebook chat uses it at backend
  • 4
    Practical
  • 4
    Knowledgeable community
  • 3
    Bullets included
  • 5
    Akka.net alternative
  • 5
    Async/Await
  • 4
    Open source
  • 4
    Distributed ACID Transactions
  • 4
    Scalable
  • 4
    Distributed high-scale computing applications
  • 4
    Virtual Actor Model
  • 3
    Objects
  • 3
    Cross Platform
  • 3
    Distributed Locking
  • 2
    Fast

Sign up to add or upvote prosMake informed product decisions

What is Erlang?

Some of Erlang's uses are in telecoms, banking, e-commerce, computer telephony and instant messaging. Erlang's runtime system has built-in support for concurrency, distribution and fault tolerance. OTP is set of Erlang libraries and design principles providing middle-ware to develop these systems.

What is Orleans?

Orleans is a framework that provides a straightforward approach to building distributed high-scale computing applications, without the need to learn and apply complex concurrency or other scaling patterns. It was created by Microsoft Research and designed for use in the cloud.

Need advice about which tool to choose?Ask the StackShare community!

What companies use Erlang?
What companies use Orleans?
See which teams inside your own company are using Erlang or Orleans.
Sign up for StackShare EnterpriseLearn More

Sign up to get full access to all the companiesMake informed product decisions

What tools integrate with Erlang?
What tools integrate with Orleans?

Sign up to get full access to all the tool integrationsMake informed product decisions

What are some alternatives to Erlang and Orleans?
Elixir
Elixir leverages the Erlang VM, known for running low-latency, distributed and fault-tolerant systems, while also being successfully used in web development and the embedded software domain.
Haskell
It is a general purpose language that can be used in any domain and use case, it is ideally suited for proprietary business logic and data analysis, fast prototyping and enhancing existing software environments with correct code, performance and scalability.
Golang
Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.
Clojure
Clojure 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. Clojure is a dialect of Lisp, and shares with Lisp the code-as-data philosophy and a powerful macro system.
Akka
Akka is a toolkit and runtime for building highly concurrent, distributed, and resilient message-driven applications on the JVM.
See all alternatives