HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
erlang
otp
Erlang2009–2026
erlang / otp

otp

Erlang/OTP

73Distinct people
93Mentions
1Explicit recommenders
12.4KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Erlang/OTP

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

It has built-in maps now! (like dicts or hashes in other languages). http://www.swi-prolog.org/pldoc/man?section=maps That is exciting. I'd want to play with it again. I like…

rdtsc used a recommendation phrase. One indexed comment matches. This is a phrase match, not a verdict.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 8–Nov 15 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/15/2026, 12:45:45 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year93 dated mentions

Observed mentions: 2009-11-25 17:20:26 UTC to 2026-05-11 21:10:48 UTC.

0510152009-01-01 00:00:00 UTC to 2010-01-01 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 comments20092010-01-01 00:00:00 UTC to 2011-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2011-01-01 00:00:00 UTC to 2012-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2012-01-01 00:00:00 UTC to 2013-01-01 00:00:00 UTC (exclusive): 2 mentions; 2 submissions, 0 comments2013-01-01 00:00:00 UTC to 2014-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2014-01-01 00:00:00 UTC to 2015-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2015-01-01 00:00:00 UTC to 2016-01-01 00:00:00 UTC (exclusive): 9 mentions; 0 submissions, 9 comments2016-01-01 00:00:00 UTC to 2017-01-01 00:00:00 UTC (exclusive): 13 mentions; 2 submissions, 11 comments2017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 11 mentions; 3 submissions, 8 comments20172018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 5 mentions; 2 submissions, 3 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 9 mentions; 0 submissions, 9 comments2020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 16 mentions; 5 submissions, 11 comments2021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 3 mentions; 1 submissions, 2 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 5 mentions; 0 submissions, 5 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 8 mentions; 1 submissions, 7 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 4 mentions; 1 submissions, 3 comments2026-01-01 00:00:00 UTC to 2027-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments. Incomplete calendar period.2026*

* An incomplete calendar period is marked with an outlined bar. Its count is not directly comparable with a full period.

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20092009-01-01 00:00:00 UTC2010-01-01 00:00:00 UTC110
20102010-01-01 00:00:00 UTC2011-01-01 00:00:00 UTC000
20112011-01-01 00:00:00 UTC2012-01-01 00:00:00 UTC000
20122012-01-01 00:00:00 UTC2013-01-01 00:00:00 UTC220
20132013-01-01 00:00:00 UTC2014-01-01 00:00:00 UTC202
20142014-01-01 00:00:00 UTC2015-01-01 00:00:00 UTC202
20152015-01-01 00:00:00 UTC2016-01-01 00:00:00 UTC909
20162016-01-01 00:00:00 UTC2017-01-01 00:00:00 UTC13211
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC1138
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC523
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC909
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC16511
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC312
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC211
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC505
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC817
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC413
2026 (partial)2026-01-01 00:00:00 UTC2027-01-01 00:00:00 UTC101

From the project README

An excerpt from the repository, fetched Nov 13, 2026.

Read the project’s introduction
Erlang/OTP Erlang is a programming language and runtime system for building massively scalable soft real-time systems with requirements on high availability. OTP is a set of Erlang libraries, which consists of the Erlang runtime system, a number of ready-to-use components mainly written in Erlang, and a set of design principles for Erlang programs. Learn more about Erlang and OTP. Learn how to program in Erlang. Examples There are several examples on the website to help you get started. The below example defines a function world/0 that prints "Hello, world" in the Erlang shell: -module(hello). -export([world/0]). world() -> io:format("Hello, world\n"). Save the file as hello.erl and run erl to enter the Erlang shell to compile the module. Erlang/OTP 24 [erts-12.2] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] [jit] Eshell V12.2 (abort with ^G) 1> c(hello). {ok,hello} 2> hello:world(). Hello, world ok Learn more about the Erlang syntax of modules, functions and expressions on Erlang.org. Installation Binary Distributions Erlang/OTP is available as pre-built binary packages by most OS package managers. apt-get install erlang Compiling from source To compile Erlang from source, run the following commands. The complete building and installation instructions can be found here. git clone https://github.com/erlang/otp.git cd otp Checkout the branch or tag of your choice git checkout maint-27 # current latest stable version Configure, build and install ./configure make make install Alternatively, you can use Kerl, a script that lets you easily build Erlang with a few commands. Bug Reports Please visit our GitHub Issues page for reporting bugs. The instructions for submitting bugs reports can be found here. Security Disclosure Please do not report security vulnerabilities through public channels, like GitHub issues, discussions, or pull requests. Please disclose the security issues following our SECURITY guidelines. Contributing We are grateful to the community for contributing bug fixes and improvements. Read below to learn how you can take part in improving Erlang/OTP. We appreciate your help! Contribution Guide Read our contribution guide to learn about our development process, how to propose fixes and improvements, and how to test your changes to Erlang/OTP before submitting a pull request. Help Wanted We have a list of Help Wanted bugs that we would appreciate external help from the community. This is a great place to get involved. Awesome-Erlang You can find more projects, tools and articles related to Erlang/OTP on the awesome-erlang list. Add your project there. License Erlang/OTP is released under the Apache License 2.0. For any license inquiry, please send an email to opensource@ericsson.com %CopyrightBegin% SPDX-License-Identifier: Apache-2.0 Copyright Ericsson AB 2010-2025. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. %CopyrightEnd%
Read the full README on GitHub

What Hacker News says

9 sources
IMHO when Ericsson decided to remove "experimental pmods" support from Erlang in version 16, the compiler magic in ChicagoBoss turned from "oh cool" into a liability. Ericsson's development team did release a workaround example, but the whole process how this went down left a sour taste in my mouth. My wish is that Ericsson's Erlang development team became more transparent to the outside world, shared their bug tracker, code reviews (Go team does this wonderfully) and did all development in the open. Then we would not have these situations https://github.com/erlang/otp/pull/687 and it would save me ton of time couple years ago chasing after ssl bugs.
In Elixir vs. Erlang: a question of momentum
I agree that worrying about the time complexity of the non-parallel portions of pmap is unlikely to be an issue for most use cases. It's still interesting to think about the tradeoffs though. Hitting the degenerate case depends on the function you're computing in question. It's quite possible that the tasks will complete in the given order. I think you're giving too much credit to Erlang's task scheduler. Also I'm not sure how one would even implement a tail recursive map function on a singly linked list. The cons operation can only add elements to the front of the list. I looked up how the map operation is implemented in Erlang. It isn't tail recursive: https://github.com/erlang/otp/blob/172e812c491680fbb175f56f7... I'm interested to know how you'd implement a tail-recursive version of map (continuations aren't allowed).
In Parallel Map in Elixir
> Did I say otherwise? Yes you did, you said "It's let me down". I just assumed t was something more serious like major design flaw, or periodic segfaults in the runtime, and not "bugs go in the mailing list" vs "no Github issues". > > What do you want Ericsson to bake a cake for you? > Yes. And they will. Throw in a couple of millions their way in there and they'll take a few engineers off from building their product and you might get a delicious cake. > > There is a bug mailing list (http://erlang.org/pipermail/erlang-bugs/), > Presumably you bring this up because I pointed out there is not a public bug tracker. A mailing list is not a substitue for a bug tracker. It is not but they are the ones who pay their developers to work on this and they have a bug mailing list. You can still issue pull requests if you want. There are plenty here
Read the rest
: https://github.com/erlang/otp/pulls File the bug, submit a patch and discuss there. Some pull requests have 20+ comments. > there are regular bug fixes, pull requests, frequent releases. New features added (like maps). Yes, and? And it is not exactly a "throw over the wall. It is like getting a free car from someone but complaining that the seats are the wrong color.And the car has now failed you. > Where do I go to see the status of, I don't know, native processes? Ask on the mailing list. Comment on the pull request or go on #erlang on IRC. > Lastly, I'd ask you to consider what your response has done to improve and grow the Erlang community. But what has your response done to hurt it? Here someone shared a cool project, and someone else commented how cool it is. And you are complaining that it is a "throw over the all" and it is a failure because they didn't set up Github issues properly. If you are going to spread fud then, well, be prepared to get nasty comments back.
In Solving the Go Challenge 1 in Erlang
> What do you mean throw it over the wall? It's more closed than it is open. > It has been solid and running large, reliable, industrial system for many years. Did I say otherwise? > What do you want Ericsson to bake a cake for you? Yes. > It is open source (https://github.com/erlang/otp), some have forked it and updated as needed (for example WhatsApp). I know it is open source. I have contributed to it. > There is a bug mailing list (http://erlang.org/pipermail/erlang-bugs/), Presumably you bring this up because I pointed out there is not a public bug tracker. A mailing list is not a substitue for a bug tracker. > there are regular bug fixes, pull requests, frequent releases. New features added (like maps). Yes, and? Where do I go to see the status of, I don't know, native processes? (Assuming that's still being worked on.) How about a
Read the rest
list of bugs in the ssh or ssl apps? (This is not an esoteric thing: http://erlang.org/pipermail/erlang-questions/2015-March/0837...) Lastly, I'd ask you to consider what your response has done to improve and grow the Erlang community.
In Solving the Go Challenge 1 in Erlang
What do you mean throw it over the wall? It has been solid and running large, reliable, industrial system for many years. What do you want Ericsson to bake a cake for you? It is open source (https://github.com/erlang/otp), some have forked it and updated as needed (for example WhatsApp). There is a bug mailing list (http://erlang.org/pipermail/erlang-bugs/), there are regular bug fixes, pull requests, frequent releases. New features added (like maps).
In Solving the Go Challenge 1 in Erlang
You fell victim to the confusion in the original post and this thread between what the original poster describes as popping, and what they were apparently actually doing (which involved taking the length, which is O(N) for the reasons explained here and in the documentation). erlang's queue's pop ("out") is amortized O(1), worst case O(N) just like every other immutable double headed queue. Here's the source code: https://github.com/erlang/otp/blob/172e812c491680fbb175f56f7...
In Memory matters, even in Erlang (2010)

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.