AstonJ

AstonJ

Euruko Keynote: Beyond Ruby 3.0 (Yukihiro Matsumoto)

Includes talk about concurrency and performance topics:

Most Liked

ohm

ohm

Think of Matz as the “CEO” of Ruby. He’s not the one writing all the code. He’s not the one coming up with all the ideas. But he is the one, who have to be responsible for everything. He’s the face of Ruby. To that, yes, he’s playing with technology. He has to. He’s looking for what’s next for Ruby to pursue. That’s how we got Ractors. Matz started that project many years ago, by experimenting with different actor libraries and such.

You’ll see that the world disagrees with you here. Take a look at for example Shopify and GitHub. Both use Ruby extensively and both drive it forward, with for example Sorbet.

Why are people still using C? C was released almost 50 years ago. It doesn’t have garbage collection. You need to manage memory references yourself. There’s no classes or objects or anything. Different programming languages meet different needs. You want speed? Go for C. You want human-programmable? Go for Ruby.

If you go to your local grocery store, you’ll probably see a bunch of different brands of orange juice. Why do you think that is? I assume it’s because they each seek to fulfil a different need in their customers. Some are organic, some are with pulp, some without. Some are with sugar, some without. I see the different programming languages the same way. I would never use Ruby for making a stock trader, it’s not what the language is meant to be doing. A web app? Sure! I can even write one pretty fast with the current libraries and offerings.

Rewriting something just for the sake of having it written in some other language is, in my opinion, just as much a waste of time and energy. What’s wrong with MRI being written in C? Do you see many type errors or mutability errors in the interpreter itself?

That seem to be where we are headed. Especially with the # frozen_string_literal: true magic comments. However, as Matz discussed in the video, you can’t just say “From tomorrow all strings will be immutable” That would split the community in the same way we saw with Python2 and Python3.

I don’t think there’s such a thing as a “perfect language”. There’s no “one size fits all” solution to programming.

Yup. And still, we don’t see any other languages being so massively concurrent at its core. Why is that?

That’s exactly where it becomes important! If the language you use is unintuitive and unnatural, you’ll be making a ton more mistakes than if it wasn’t. Sure, if you want a job, where you have to write a thesis before you can start coding, you shouldn’t use Ruby, but Ruby is so intuitive that I believe I could have even my mom write most basic programs and understand what’s going on.

The beauty of civilised online debates. :heart: :tada:

Oh yes, indeed. I haven’t had the chance to fiddle with RBS or even Sorbet yet, but I am overjoyed that they exist and help make the world a (type) safer place :laughing:

I want in on the heart situation here: :black_heart::purple_heart::green_heart:And I hope that everybody reading this knows, that no ill intensions have ever been made. The internet and thus written communication can often be difficult, because you can’t convey tone and mimic. It gets even worse when the language you’re communicating in isn’t your own. (I tend to write more formel in English than I would in Danish)

dimitarvp

dimitarvp

Surely you mean 1400 and not 14, right? RIGHT?! :grin:

ohm

ohm

Argh, I’m so behind on all the conference videos! I still have 14 tabs open from RailsConf. :railway_track:

Where Next?

Popular Backend topics Top

New
First poster: bot
The Race to Replace C & C++. Three expert compiler writers sit down to discuss moving beyond C and C++ This thread...
New
AstonJ
Just finished doing a clean install of macOS (which I highly recommend btw!) and have updated my macOS Ruby & Elixir/Erlang dev env s...
New
AstonJ
Just listening to this now… Totally agree with @FrancescoC’s and @thompson_si’s comment “learn to learn” :sunglasses: In our talk we’...
New
First poster: bot
This post explains why Scala projects are difficult to maintain. Scala is a powerful programming language that can make certain small te...
New
First poster: brennan
The perspective of an ignorant computer science undergrad It’s likely that you read the title of this post and thought “what is this guy ...
New
New
AstonJ
This was posted on the Elixir Forum and thought it was worth sharing here! I love how the excitement of the author shines through and I ...
New
First poster: bot
Too long have we hustled to deploy Clojure websites. Too long have we spun up one server instance per site. Too long have reminisced abou...
New
brainlid
In episode 92 of Thinking Elixir, we talk with Mitchell Hanberg and learn about why he created the alternate Phoenix templating language ...
New

Other popular topics Top

brentjanderson
Bought the Moonlander mechanical keyboard. Cherry Brown MX switches. Arms and wrists have been hurting enough that it’s time I did someth...
New
DevotionGeo
I know that -t flag is used along with -i flag for getting an interactive shell. But I cannot digest what the man page for docker run com...
New
Rainer
My first contact with Erlang was about 2 years ago when I used RabbitMQ, which is written in Erlang, for my job. This made me curious and...
New
PragmaticBookshelf
Rust is an exciting new programming language combining the power of C with memory safety, fearless concurrency, and productivity boosters...
New
AstonJ
Thanks to @foxtrottwist’s and @Tomas’s posts in this thread: Poll: Which code editor do you use? I bought Onivim! :nerd_face: https://on...
New
New
hilfordjames
There appears to have been an update that has changed the terminology for what has previously been known as the Taskbar Overflow - this h...
New
First poster: bot
zig/http.zig at 7cf2cbb33ef34c1d211135f56d30fe23b6cacd42 · ziglang/zig. General-purpose programming language and toolchain for maintaini...
New
CommunityNews
A Brief Review of the Minisforum V3 AMD Tablet. Update: I have created an awesome-minisforum-v3 GitHub repository to list information fo...
New
PragmaticBookshelf
As digital systems increasingly run the world, mastery of the recurring patterns of software development risk is the key to fast and effe...
New