Going beyond JavaScript and Actor-Based Programming: an Interview with Douglas Crockford

preview_player
Показать описание
In this episode, we are going to meet someone who's been incredibly influential not only in the world of JavaScript, but in the de facto language of the Web, I'm talking about JSON. Douglas Crockford's book, "JavaScript the Good Parts" is a seminal book that rapidly moved the adoption of the JavaScript language forward.

Douglas shares a bit about his journey, and what he's working on next: actor-based programming.

Actor-based programming is a mathematical model of concurrent computation. In actor-based programming, an "actor" is an object that can receive and process messages, and can also create and manage other actors. Actors are completely independent of each other and interact through asynchronous messages.

Actor-based programming is different from object-oriented programming (OOP) because actors pass messages through time, while OOP passes messages through memory. Actors are stateful, meaning they have internal state.

Subscribe to @intelligence-ai for more content on innovation, intelligence, and collaborative systems design.
Рекомендации по теме
Комментарии
Автор

If you like the idea of actors passing messages in a dynamic language with concurrency baked in, you’re going to love Elixir. It inherits all of the features of Erlang with a more accessible syntax. 17:05

OwenBickford
Автор

I'm so glad I stumbled upon this video. I've had a loose idea in my head for the past two decades about the future of computing, and it looks exactly like the Actor system described by Crockford. I had no idea the concept was even formally defined, because I don't spend a lot of time researching theoretical systems.

Combine the notion of actors with a "work communication protocol" similar to smart contracts, and there's the possibility for massive, distributed, peer-based computing systems that use open marketplace negotiation principles to accomplish some truly amazing things! Such a system under the guidance of an AI control network could be confusing beyond human comprehension, but orders of magnitude more efficient than any scheme we could design ourselves.

DejayClayton
Автор

Great interview that allowed me to know more about actor-based programming. Thanks guys :) I'll surely also watch the other video on JSON-unify ;)

codeconcept
Автор

I love the proviso in description of of functional languages as "not gettting sloppy with mutation" and I also agree that there are circles in functional programming which are a bit too precious by half with the concept. However there *is* a form (in Elm and 'Elmish' in F#) where the immutable "model" maintains state and simply re-writes it as the state is updated. That may on its own be a bit too precious by half - gaining the benefits of mutability *without* mutable compute structures in memory. But it *does* have the benefit of preserving the "inner loop" of testability afforded by 'pure' functions and allowing dispatches out to *true* impure functions that manage the mutable state outside of the MVU loop.

htechsme
Автор

A couple thoughts:

First, does he know that the Pony programming language exists? It’s, by far, the purest actor-oriented language in existence today. If you don’t grok actors but want to, Pony is the best place to start.

Second, it’s sad that he typically presents actor-oriented programming in a networked context. It is also hugely helpful on a single machine with many CPU cores, especially when your language has “reference capabilities” built into the type system. Ref caps free the actor model from messaging constraints such as the need for messages to be immutable or copies.

AdrianBoyko
Автор

Alba, is an actor language from 1993.

johnp.johnson
Автор

One of my regrets is that there's only one "... The Good Parts" book. I can't think of a single programming language that couldn't benefit from a "... The Good Parts" book!

edgeeffect
Автор

Is anyone working on a replacement now?
I think paradigms are a trap.

cbbcbb
Автор

I'm interested how such message would look like. And how different actors find common language to speak. Wouldn't it need to specify in every program it's own API and modifying all existing APIs
like translating every existing languages to new language and without standard and adoption every programmer would build own language bridge
but i guess it's inevitable and the same as learning curve in everything new

that's why this lazy generation prefers groupthink and building new things on top of agreed least bad generally accepted thing being JavaScript

szymonbaranowski
Автор

javascript just needs to die off.. blazor and wasm need to be standard

faridguzman
Автор

REBOL & Red = best.

Javascript is crap. Crockford used REBOL to come up with JSON.

REBOL has supported actor based programming for the last 25 years!

johnp.johnson