Synopses & Reviews
Smooth, powerful, and small, Elixir is an excellent language for newcomers who want to learn about functional programming. If you're new to Elixir, its functional style can seem difficult, but with help from this hands-on introduction, you'll scale the learning curve and discover how enjoyable, powerful, and fun this language can be. Elixir combines the robust functional programming of Erlang with an approach that looks more like Ruby and reaches toward metaprogramming with powerful macro features.
Authors Simon St. Laurent and J. David Eisenberg show you how to write simple Elixir programs by teaching you one skill at a time. Youll learn about pattern matching, recursion, message passing, process-oriented programming, and establishing pathways for data rather than telling it where to go. By the end of your journey, youll understand why Elixir is ideal for concurrency and resilience.
- Get comfortable with IEx, Elixir's command line interface
- Become familiar with Elixirs basic structures by working with numbers
- Discover atoms, pattern matching, and guards: the foundations of your program structure
- Delve into the heart of Elixir processing with recursion, strings, lists, and higher-order functions
- Create processes, send messages among them, and apply pattern matching to incoming messages
- Store and manipulate structured data with Erlang Term Storage (ETS) and the Mnesia database
- Build resilient applications with the Open Telecom Platform (OTP)
- Define macros with Elixir's meta-programming tools.
Synopsis
Elixir is an excellent language if you want to learn about functional programming, and with this hands-on introduction, youll discover just how powerful and fun Elixir can be. This language combines the robust functional programming of Erlang with a syntax similar to Ruby, and includes powerful features for metaprogramming.
This book shows you how to write simple Elixir programs by teaching one skill at a time. Once you pick up pattern matching, process-oriented programming, and other concepts, youll understand why Elixir makes it easier to build concurrent and resilient programs that scale up and down with ease.
- Get comfortable with IEx, Elixirs command line interface
- Discover atoms, pattern matching, and guards: the foundations of your program structure
- Delve into the heart of Elixir with recursion, strings, lists, and higher-order functions
- Create processes, send messages among them, and apply pattern matching to incoming messages
- Store and manipulate structured data with Erlang Term Storage and the Mnesia database
- Build resilient applications with Erlangs Open Telecom Platform
- Define macros with Elixirs metaprogramming tools
About the Author
Simon St. Laurent is Senior Editor at O'Reilly Media, Inc., focusing primarily on JavaScript and web-related projects. He is co-chair of the Fluent conference. He's authored or co-authored books including Introducing Elixir, Introducing Erlang, Learning Rails 3, XML Pocket Reference, 3rd, XML: A Primer, and Cookies.
You can find more of his writing on technology, Quakerism, and the Town of Dryden at simonstl.com.
J. David Eisenberg is a programmer and instructor living in San Jose, California. David has a talent for teaching and explaining. He has developed courses for CSS, JavaScript, CGI, and beginning XML. He also teaches C and Perl at De Anza Community College in Cupertino. David has written articles for xml.com and alisapart.com on topics such as Javascript and the Document Object Model, XML validation, XSL Transformations and Formatting Objects, and (surprise) SVG. His on-line courses provide introductory tutorials for Korean, Modern Greek, and Russian. David has also been developing education software since 1975, when he worked with the Modern Foreign Language project at the University of Illinois to develop computer-assisted instruction on the PLATO system. He co-authored several of the in-box tutorials shipped with the venerable Apple II computer. David did the programming for the multimedia CD-ROM version of a series of children's stories, and the programming for beginning Algebra and Spanish discs. When not programming, David enjoys digital photography, reading science fiction, and riding his bicycle.