Yukihiro Matsumoto

Yukihiro Matsumoto
Yukihiro Matsumotois a Japanese computer scientist and software programmer best known as the chief designer of the Ruby programming language and its reference implementation, Matz's Ruby Interpreter. His demeanor has brought about a motto in the Ruby community: "Matz is nice and so we are nice," commonly abbreviated as MINASWAN...
complexity features
The orthogonal features, when combined, can explode into complexity.
directly people python ruby runs tries
Sometimes people jot down pseudo-code on paper. If that pseudo-code runs directly on their computers, it's best, isn't it? Ruby tries to be like that, like pseudo-code that runs. Python people say that too.
difference emphasize language main using
That's Ruby's main difference from other language designs. I emphasize the feeling, in particular, how I feel using Ruby.
aspects feature individual principle ruby surprised therefore
Everyone has an individual background. Someone may come from Python, someone else may come from Perl, and they may be surprised by different aspects of the language. Then they come up to me and say, ""I was surprised by this feature of the language, so therefore Ruby violates the principle of least surprise."" Wait. Wait. The principle of least surprise is not for you only.
language program quotes wants
Because of the Turing completeness theory, everything one Turing-complete language can do can theoretically be done by another Turing-complete language, but at a different cost. You can do everything in assembler, but no one wants to program in assembler anymore.
consists counting government money numbers pull tasks tax
Most of the tasks we do are for humans. For example, a tax calculation is counting numbers so the government can pull money out from my wallet, but government consists of humans.
built class daily hard language lives namely process regular strings text tried work
In our daily lives as programmers, we process text strings a lot. So I tried to work hard on text processing, namely the string class and regular expressions. Regular expressions are built into the language and are very tuned up for use.
believe consistency goal primary tools
I believe consistency and orthogonality are tools of design, not the primary goal in design.
bring claim design felt follows principle ruby saying
Actually, I didn't make the claim that Ruby follows the principle of least surprise. Someone felt the design of Ruby follows that philosophy, so they started saying that. I didn't bring that up, actually.
among choose encourage people tried
People are different. People choose different criteria. But if there is a better way among many alternatives, I want to encourage that way by making it comfortable. So that's what I've tried to do.
freedom hero inherited larry philosophy ruby users
Ruby inherited the Perl philosophy of having more than one way to do the same thing. I inherited that philosophy from Larry Wall, who is my hero actually. I want to make Ruby users free. I want to give them the freedom to choose.
almost differ languages power provide python quotes ruby viewpoint
From the viewpoint of what you can do, therefore, languages do differ - but the differences are limited. For example, Python and Ruby provide almost the same power to the programmer.
enjoy good job life purpose quickly
You want to enjoy life, don't you? If you get your job done quickly and your job is fun, that's good isn't it? That's the purpose of life, partly. Your life is better.
daily hello life magical meet problems public rules solve starting using void
I want to solve problems I meet in the daily life by using computers, so I need to write programs. By using Ruby, I want to concentrate the things I do, not the magical rules of the language, like starting with public void something something something to say, "print hello world." I just want to say, "print this!" I don't want all the surrounding magic keywords.