内容简介:
Learn from the award-winning programming series that inspired the Elixir language. Hear how other programmers across broadly different communities solve problems important enough to compel language development. Expand your perspective, and learn to solve multicore and distribution problems.
In each language, you’ll solve a non-trivial problem, using the techniques that make that language special. Write a fully functional game in Elm, without a single callback, that compiles to JavaScript so you can deploy it in any browser. Write a logic program in Clojure using a programming model, MiniKanren, that is as powerful as Prolog but much better at interacting with the outside world. Build a distributed program in Elixir with Lisp-style macros, rich Ruby-like syntax, and the richness of the Erlang virtual machine. Build your own object layer in Lua, a statistical program in Julia, a proof in code with Idris, and a quiz game in Factor.
When you’re done, you’ll have written programs in five different programming paradigms that were written on three different continents. You’ll have explored four languages on the leading edge, invented in the past five years, and three more radically different languages, each with something significant to teach you.
作者简介:
Bruce Tate, CTO of icanmaketibetter.com, is a mountain biker, climber, and father of two from Austin, Texas. He is the author of more than ten books, including Seven Languages in Seven Weeks, and is the series editor of the Seven in Seven series.
By day, Ian Dees slings code, tests, and puns at a Portland-area test equipment manufacturer. By night, he converts espresso into programming books, including Cucumber Recipes. Ian tweets as @undees.
Fred Daoud is a truly passionate developer who loves functional programming. He coauthored Seven Web Frameworks in Seven Weeks with Jack Moffitt.
Jack Moffitt falls in love with languages easily. He is a senior research engineer at Mozilla Research and works on Servo, an experimental browser engine written in Mozilla’s new Rust language.
目录:
This book is currently in beta, so the contents and extracts will change as the book is developed.
Foreword
Introduction
The Lay of the Land
Bruce Tate (Elixir and Elm)
Fred Daoud (Factor)
Ian Dees (Lua, Idris)
Jack Moffit (Julia, miniKanren)
Who Should Read This Book
A Final Charge
Online Resources
Lua
Day 1: The Call to Adventure
Day 2: Tables All the Way Down
Day 3: Lua and the World
Wrapping Up Lua
Factor
Day 1: Stack On, Stack Off
Day 2: Painting the Fence
Day 3: Balancing on a Boat
Wrapping Up Factor
Elm
Day 1: Handling the Basics
Day 2: Taming Callbacks excerpt
Day 3: It’s All a Game
Wrapping Up Elm
Elixir
Day 1: Laying a Great Foundation excerpt
Day 2: Controlling Mutations
Day 3: Spawning and Respawning
Wrapping Up Elixir
Julia
miniKanren
Day 1: Unified Theories of Code
Day 2: Mixing the Logical and Functional
Day 3: Writing Stories with Logic excerpt
Wrapping Up miniKanren
Idris
Wrapping Up