I just hate how the interviewer is insinuating ‘stuff’ about him. Is he on the spectrum? Who the fuck cares. Enjoy the interview, questions are not what I would ask Wall though!
I’m admittedly too ‘young’ for Perl, but I have written some programs in it: https://github.com/Chubek#perl — I especially like AllocPPx.
Larry’s webpage
Wow that TLD! Perl has a rich history. Wall is the ‘computer scientist of people’. He’s a linguist by accreditation, but he’s got a lot of his credits with compsci stuff. He’s the guy who people like Alan Kay hate. Perl is a language that’s more ‘soul’ than it is ‘science’. But it excels at that. I love Perl, and Perl-derived languages like Ruby and Python – who try and Kay-ize Perl by making it closer to Smalltalk, and I think Python might have succeeded given how popular it is! So in one camp, we have ultra-scientfic-y languages like Haskell. Simon Peyton-Jones has a tutorial on writing a functional language in Haskell (well Miranda but you get it!). But there’s no tutorial on how to write Perl: You have to have soul, and 40 years of spare time, to re-create Perl. That’s why there’s not much of re-implementations. Perl is just Perl. One and only. Perl6 got away from it. Tried to ‘specify’. But if I wanted specs, I’d go to Scheme! When I want soul, I come to Perl.
Matz described Ruby as Lisp with C semantics, and Perl convenience.
There’s a reason the CLI flags can put it in “perl mode”
I just learned about Perl mode in Ruby. You see I am writing a literate programming tool with Ruby and I initially started with AWK, but then I switched to Perl, then Ruby. I think Ruby is the ‘ultimate’ scripting tool! If Python is the modern Java, then Ruby is the modern Smalltalk! I’m really having fun with Ruby’s syntax. Here is what I have so far if you wanna have a look: https://pastebin.com/fHz3jP80 This is my first --serious-- project with Ruby. I got the syntax more-or-less understood. I am just testing things in
irb
and applying them. This description of ‘Lisp with C semantics, and Perl convenience’ is why I believe Ruby is such a good language — for scripting at least.Thanks.
Good luck with it!
It is “fun”, and there are lessons that Ruby has that should be taken elsewhere, like the principle of least surprise. The most important one is MINASWAN: Matz is nice and so we are nice.
Well I would not be dreaming of disrespecting the guy because he’s like years and years my senior :D (I’m 31). Back when I was a baby asshole on web, I used to disrespect elders. A lot. People who had years on me. I still disrespect their opinions. But I cannot help but wonder what they think of me now.
Thanks.
There’s a fine line between disrespecting a fallible opinion and disrespecting the person. In writing, it’s easy to cross that line. It’s ok to disagree with people, but it’s important to sometimes take the step back and remember that the person is larger than any singular decision. There’s likely context you’re missing that lead them to that decision.
The biggest thing to remember is that more likely than not, if you really and truly fuck up your job, chances are the worst you do is create extra work for your team. They probably won’t even be in danger of losing their jobs if you truly screw up. It’s not likely that people will die. The blast radius of most software engineering jobs is incredibly small.
Yeah true that. However the blast radius of the first big mistake (the whole FORTRAN lexing problem which ignored spaces) was so large that it shaped history… I wonder how Backus felt! I do wish I’d had more important jobs. Despite loving web as a concept, and having indulged in it for the past 20 years — ever since I was 12, I have never really developed a web application because I’m scared of getting ‘pigeonholed’ into web. The one web job I had destroyed my life, no kidding. But right now, I switched from the software I gave you, into making something like Pandoc. I want it feed it a reStructuredText-like syntax and get back HTML, PDF, LaTeX, Postscript, SVG, DVI! All in one file (that’s the power of scripting, portability). I want to make a blog. Because the one time I had a blog people bullied me and told me why I’m putting stuff there I don’t know about. It was a blog about OpenGL and low-level graphics :(
Sorry I rambled. Thanks.
Did you look into Raku at all? I’m fascinated with it but haven’t used it for anything serious.
I read through their engines. I think there’s 2? Their newest VM is really great. I learned a lot about interoperability from it. They have a whole protocol, using libffi. It’s called ParrotVM. Give it a look.