Erlang Programming Language - Computerphile

preview_player
Показать описание
Introducing Erlang - with Francesco Cesarini Technical Director of Erlang Solutions.


This video was filmed and edited by Sean Riley.


Рекомендации по теме
Комментарии
Автор

The animation for pattern matching and recursion is major milestone in computer science education

linz
Автор

Absolutely love Erlang and all of the material Joe Armstrong has online. Anybody interested in computer science in general should watch Joe's online talks.
RIP Joe, you are a hero to me and countless others.

armin_hammer_studios
Автор

I'm starting to love this language more each day.
On the other hand, my teacher handed us an assignment to make an industrial elevator lift (without doors or human safety checks) simulation through Erlang.
It is quite easy to wrap your head around this problem:
The elevator requires a motor, the motor can only go at one speed in two directions and can only sense when it reaches the top or bottom.
The elevator also requires a single sensor for each floor. Basically, each sensor is its own process, and talks to a supervisor which then talks to the motor.
The elevator also requires a button cabinet. Imagine that each button when pressed, sens a signal, to the elevator master supervisor. Then, the master supervisor can light on or off the button. There is also a display because why not.
The motor is easy to implement with a finite-state machine, and the master sensor will have to distribute its slave sensors.
Can you see now? With what you learned from this video it is quite simple to get a grasp on how the process tree looks like. Erlang is so fun!

StickySli
Автор

I met this man at ElixirConfLA 2019, I've gotta say he is a genius in terms of Erlang.

shotovar
Автор

Ericsson really made impressive progress all over Telecom, from mechanical switch modules through Erlang to Bluetooth.

mellertid
Автор

Haven't done erlang but just recently learned elixir. Elixir is erlangs child basically. It's awesome, if you haven't tried it yet try it now.

leedeffebach
Автор

I worked on a system written in C# with 120 threads (don't ask!) and Erlang would have been brilliant for that. Great video.

cawsha
Автор

We had to use this language in university to write algorithms and datastructures. At first I was like wtf, but then after a while I really started to dig it.
The ability to write implicit if-cases just with function headers makes it very elegant imo.

AnaximanderA
Автор

Douglas Adams:

Click, click, hum.
Click, hum, click, hum, click, hum.
Click, click, click, click, click, hum.
Hmmm.
A low level supervising program woke up a slightly higher level supervising program deep in the ship's semi-somnolent cyberbrain and reported to it that whenever it went click all it got was a hum.

The higher level supervising program asked it what it was supposed to get, and the low level supervising program said that it couldn't remember exactly, but thought it was probably more of a sort of distant satisfied sigh, wasn't it? It didn't know what this hum was. Click, hum, click, hum. That was all it was getting.

The higher level supervising program considered this and didn't like it. It asked the low level supervising program what exactly it was supervising and the low level supervising program said it couldn't remember that either, just that it was something that was meant to go click, sigh every ten years or so, which usually happened without fail. It had tried to consult its error look-up table but couldn't find it, which was why it had alerted the higher level supervising program to the problem.

The higher level supervising program went to consult one of its own look-up tables to find out what the low level supervising program was meant to be supervising.

It couldn't find the look-up table.

Odd.

KlojoVidjo
Автор

So it's encouraged to skip error checking?
_I was born for this_

kalebbruwer
Автор

I've been learning Erlang over the last two weeks and I love it. It's so weird, but so damned fast to code in.

KentHambrock
Автор

This was brilliant! I had always wondered what made Erlang so special!

unvergebeneid
Автор

By the way, it's funny that Elixir/Erlang are considered functional languages (which they indeed are), but by implementing the actor model with message passing, they actually adhere more closely to the original OOP concept as Alan Kay intended it than many 'modern' OOP languages like Java.

jsonkody
Автор

Erlang got my curiosity because it reminds of a city called Erlangen, but after watching this video - Erlang has my attention.

borntolose_livetowin
Автор

I was blown away by the brilliance of Erlang when I heard Joe Armstrongs presentations about it.

Before that, Casey Muratoris criticism of OOP made me overreact a bit: I became very sceptical of systems that advocated abstractions and focused on “maintainability”, because, very often, “maintainability” just meant arbitrary idea of simplicity and willing blindness towards the actual complexity of the system.

But Erlang ACTUALLY addresses those issues by doing something radically different. And the approach of it shows perfectly what is wrong with OOP.

If you are writing a program that will be one process and one binary, you are fundamentally unable to handle errors and achieve structures like erlang is. So why are we hellbend on writing “provably safe” and “modular” code based on “frameworks” - when none of those are true for anyone else than the single developer?

The overall binary is not provably safe, nor is the source code as a whole is. Erlang as a system can be.

The application is not modular, as long as it runs as a single process. Erlang is naturally capable of distributed computation.

And the “framework” is just code in your binary you most likely didn’t bother reading (and which might be amount too big to physically read by single human, in a month). That’s not a true framework, because that’s not a true structure. Erlang, being distributed on multiple physical machines, multiple VMs and multiple processes is a true framework.

In comparison, the “frameworks” modern developers use is just copy-pasting code we might or might not have read, composed of copy-pasted code we most definitely did not read.

Now that consumer processors no longer see as rapid growth in processing power - as while definitely very possible, such devices would be impractical to cool down in consumer devices, I really hope there is some big shift in culture of software and OS development.

catcatcatcatcatcatcatcatcatca
Автор

I have a question. What are we doing? Why have I learned object oriented programming? This is awesome. This is next level

hereallyfast
Автор

This is surprisingly easy to wrap one's head around. Rad.

contingenceBoston
Автор

Can we please have another video with source code for a simple working program, and see it in action? I'm really impressed and intrigued by Erlang and want to know more.

cawsha
Автор

Declarative programing
Let the code fail (No guard clauss)
Runs on virtual machine
Seperate process for every task
Fault tolerance
Scalability
Can run in a cluster of machines and pass messages

ankk
Автор

please ask this man to create a full course

benouattara