Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
by Ryan Davis Ruby is a fantastic language, but it could be better. While it has done a terrific job of taking ideas from languages like smalltalk, lisp, and (to an extent) perl, it hasn’t done nearly enough of it. Big thinkers like Alan Kay & Dan Ingalls (smalltalk), David Ungar (self), Guy Steele & Gerald Sussman (scheme), and Matthias Felleisen (racket) have paved the way for so many programming language ideas that we should plunder the treasures that they’ve thought up. You might not know their names, but you’ve certainly used their technology. I will survey a vast minority of these ideas and how they could help ruby. Ideas including: self-bootstrapping implementations and extensive collection and magnitude hierarchies from smalltalk, instance-based inheritance and JIT compilation from self, TCO and the overarching importance of lambdas from racket/scheme, and finally object level pattern matching and the combined object/lambda architecture from the View Points Research Institute. Ruby is at its best when borrowing great ideas from other languages, but lately it has fallen behind in this. It’s time for ruby to step up and do more with these ideas, to keep pushing forward, to stand upon the shoulders of giants. Help us caption & translate this video! http://amara.org/v/GVgj/
Date
Summarized using AI?
If this talk's summary was generated by AI, please check this box. A "Summarized using AI" badge will be displayed in the summary tab to indicate that the summary was generated using AI.
Show "Summarized using AI" badge on summary page
Summary
Markdown supported
The video "Standing on the Shoulders of Giants" by Ryan Davis at the MountainWest RubyConf 2015 discusses the importance of learning from the innovations of foundational programming languages to enhance Ruby. Davis emphasizes that while Ruby is a capable language, it has not sufficiently incorporated ideas from other influential programming languages. He surveys innovative concepts from languages such as Smalltalk, Self, Racket, and Cola, presenting their potential contributions to the evolution of Ruby. Key points discussed include: - **Historical Context**: Davis refers to the quote, "If I've seen further, it is by standing on the shoulders of giants," to illustrate how innovation builds on past knowledge. - **Overview of Ruby**: Ruby, created by Matz in 1993, is noted for its complexity and focus on developer happiness, with features that have mostly stabilized since version 1.0. - **Borrowing Innovations**: Davis advocates for Ruby to adopt advanced principles from other languages: - **Smalltalk**: Highlights its fully immersive development environment and simple syntax, along with its emphasis on object orientation. - **Self**: Introduced concepts like prototype-based design and Just-In-Time (JIT) compilation, which can improve performance. - **Racket**: Known for its extensive libraries, efficient design for both beginners and experts, and structural pattern matching which surpasses Ruby's capabilities. - **Cola**: Emphasizes simplification of complex systems through a combined object and lambda architecture that promotes efficient programming. - **Execution Performance**: Davis underscores the performance gaps between Ruby and these languages, particularly in method calls and dynamic features. - **Conclusion**: He calls for Ruby to embrace innovative ideas and concepts from other programming languages to prevent stagnation and to keep advancing in complexity and functionality, ultimately positioning it alongside its more evolved counterparts. Davis' talk is both a critique and a rallying call for the Ruby community to tap into the rich history of programming language development, leveraging foundational ideas to enrich Ruby's future. He believes that Ruby can restore its status as a powerful language if it learns from and stands on the shoulders of the giants who have come before. In summary, this discussion is a critical exploration of Ruby's potential trajectory, urging developers to integrate and innovate based upon the successes of past programming paradigms.
Suggest modifications
Cancel