Lisp's Influence on Ruby

(blog.tacoda.dev)

117 points | by tacoda 3 days ago

4 comments

  • dismalaf 4 minutes ago
    I love Ruby, use it for most of my projects that don't require performance.

    Nothing I would love more than a Ruby with a Common-Lisp like compiler and runtime. Unboxed types, native compilation, partial compilation, live image (Ruby has this but "faster Rubies" like Crystal don't), etc...

  • pjmlp 1 hour ago
    That is actually Lisp influence on Smalltalk, and Perl, that eventually influenced Ruby.
    • 0xpgm 42 minutes ago
      From the article

      > Matz has said as much. He’s described Ruby’s design as starting from a simple Lisp, stripping out macros and s-expressions, then adding an object system, blocks, and Smalltalk-style methods. The features most Rubyists fall in love with aren’t the object-oriented ones. They’re the functional ones, dressed in friendlier clothes.

      • wglb 27 minutes ago
        But macros and s-expressions are two of my favorites parts of lisp!
        • dismalaf 23 minutes ago
          Funny enough Lisp was originally meant to be written in a higher level syntax (with infix operators and everything).

          But yeah, macros and S-expressions make it easier to write your own DSLs.

    • Smalltalker-80 48 minutes ago
      Totalle agree, I just googled it: "Yukihiro 'Matz' Matsumoto heavily credits Smalltalk as the deepest structural inspiration behind Ruby’s object model. He combined Smalltalk’s beautiful object-oriented architecture and message-passing system with features from other languages to create a tool designed primarily for developer happiness." Including the closures and collection operations.
    • dragonwriter 49 minutes ago
      No, its actual influence from Lisp-family languages (including Scheme). Yes, Lisp also influenced Perl and Smalltalk, but Matz was not ignorant of Lisp with the only influence om Ruby from Lisp being indirect through those other languages.
  • DonHopkins 25 minutes ago
    What have the Lisps ever done for us?

    https://www.youtube.com/watch?v=Qc7HmhrgTuQ

  • tug2024 58 minutes ago
    [dead]