Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
Developing a Language Help us caption & translate this video! http://amara.org/v/FNkF/
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 titled "Developing a Language" features Evan Phoenix as a speaker at the LA RubyConf 2011. The talk explores the conceptual and practical aspects of creating programming languages, delving into the philosophical underpinnings of language and abstract ideas. The session is interactive, inviting audience engagement and emphasizing learning through implementation. Here are the key points discussed throughout the talk: - **Introduction & Ground Rules**: Evan begins by thanking the audience and organizers and sets the stage for an interactive session, encouraging questions throughout the presentation rather than saving them for the end. - **The Purpose of Creating Programming Languages**: He poses philosophical questions about language and thought, discussing how ideas and language are intertwined. A good programming language can facilitate better expression of ideas. - **Learning Through Creation**: Evan emphasizes that the best way to learn about programming languages is by actually creating one. He introduces "Prattle", a Smalltalk-inspired language that he and the audience will begin to develop collaboratively. - **Key Concepts from Smalltalk**: Evan mentions four fundamental concepts from Smalltalk (self, true, false, nil) and explains their similarities with Ruby. He introduces parsing as a key step in language development. - **Parsing Logic**: The audience is walked through the process of writing parsers for various data types and constructs within the new language, including numbers, logical values, and strings. - **Building the REPL**: He discusses the importance of implementing a Read-Eval-Print Loop (REPL) for immediate feedback when testing the language code. - **Method Calls and Sending**: He expands the language's functionality by adding method sending features and explains how to manage arguments in method calls, reflecting Smalltalk syntax. - **Incremental Development**: The session emphasizes the necessity of validating each additional feature through testing, underscoring the importance of structure and order in building a language. - **Final Thoughts and Encouragement**: Evan wraps up by motivating the audience to explore programming language development, reassured that challenges are manageable and resources for learning are accessible.
Suggest modifications
Cancel