Crafting Interpreters

┬╖ Genever Benning
4.8
12рмЯрм┐ рм╕рморнАрмХрнНрм╖рм╛
рмЗрммрнБрмХрнН
640
рмкрнГрм╖рнНрмарм╛рмЧрнБрнЬрм┐рмХ
рмпрнЛрмЧрнНрнЯ
рм░рнЗрмЯрм┐рмВ рмУ рм╕рморнАрмХрнНрм╖рм╛рмЧрнБрнЬрм┐рмХрнБ рмпрм╛рмЮрнНрмЪ рмХрм░рм╛рмпрм╛рмЗрмирм╛рм╣рм┐рмБ ┬армЕрмзрм┐рмХ рмЬрм╛рмгрмирнНрмдрнБ

рмПрм╣рм┐ рмЗрммрнБрмХрнН рммрм┐рм╖рнЯрм░рнЗ

Despite using them every day, most software engineers know little about how programming languages are designed and implemented. For many, their only experience with that corner of computer science was a terrifying "compilers" class that they suffered through in undergrad and tried to blot from their memory as soon as they had scribbled their last NFA to DFA conversion on the final exam.

That fearsome reputation belies a field that is rich with useful techniques and not so difficult as some of its practitioners might have you believe. A better understanding of how programming languages are built will make you a stronger software engineer and teach you concepts and data structures you'll use the rest of your coding days. You might even have fun.

This book teaches you everything you need to know to implement a full-featured, efficient scripting language. You'll learn both high-level concepts around parsing and semantics and gritty details like bytecode representation and garbage collection. Your brain will light up with new ideas, and your hands will get dirty and calloused.

Starting from main(), you will build a language that features rich syntax, dynamic typing, garbage collection, lexical scope, first-class functions, closures, classes, and inheritance. All packed into a few thousand lines of clean, fast code that you thoroughly understand because you wrote each one yourself.

рморнВрм▓рнНрнЯрм╛рмЩрнНрмХрми рмУ рм╕рморнАрмХрнНрм╖рм╛

4.8
12рмЯрм┐ рм╕рморнАрмХрнНрм╖рм╛

рм▓рнЗрмЦрмХрмЩрнНрмХ рммрм┐рм╖рнЯрм░рнЗ

Bob Nystrom is a senior software engineer at Google working on the Dart programming language. Before discovering a love of programming languages, he developed games at Electronic Arts. He is the author of the best-selling book "Game Programming Patterns".

рмПрм╣рм┐ рмЗрммрнБрмХрнНтАНрмХрнБ рморнВрм▓рнНрнЯрм╛рмЩрнНрмХрми рмХрм░рмирнНрмдрнБ

рмЖрмкрмг рмХрмг рмнрм╛рммрнБрмЫрмирнНрмдрм┐ рмдрм╛рм╣рм╛ рмЖрмормХрнБ рмЬрмгрм╛рмирнНрмдрнБред

рмкрнЭрм┐рммрм╛ рмкрм╛рмЗрмБ рмдрмернНрнЯ

рм╕рнНрморм╛рм░рнНрмЯрмлрнЛрми рмУ рмЯрм╛рммрм▓рнЗрмЯ
Google Play Books рмЖрмкрнНрмХрнБ, Android рмУ iPad/iPhone рмкрм╛рмЗрмБ рмЗрмирм╖рнНрмЯрм▓рнН рмХрм░рмирнНрмдрнБред рмПрм╣рм╛ рм╕рнНрм╡рмЪрм╛рм│рм┐рмд рмнрм╛рммрнЗ рмЖрмкрмгрмЩрнНрмХ рмЖрмХрм╛рмЙрмгрнНрмЯрм░рнЗ рм╕рм┐рмЩрнНрмХ рм╣рнЛтАНрмЗрмпрм┐рмм рмПрммрмВ рмЖрмкрмг рмпрнЗрмЙрмБрмарм┐ рмерм╛рмЖрмирнНрмдрнБ рмирм╛ рмХрм╛рм╣рм┐рмБрмХрм┐ рмЖрмирм▓рм╛рмЗрмирнН рмХрм┐рморнНрммрм╛ рмЕрмлрм▓рм╛рмЗрмирнНтАНрм░рнЗ рмкрнЭрм┐рммрм╛ рмкрм╛рмЗрмБ рмЕрмирнБрмормдрм┐ рмжрнЗрммред
рм▓рм╛рмкрмЯрмк рмУ рмХрморнНрмкрнНрнЯрнБрмЯрм░
рмирм┐рмЬрм░ рмХрморнНрмкрнНрнЯрнБрмЯрм░рнНтАНрм░рнЗ рмерм┐рммрм╛ рн▒рнЗрммрнН рммрнНрм░рм╛рмЙрмЬрм░рнНтАНрмХрнБ рммрнНрнЯрммрм╣рм╛рм░ рмХрм░рм┐ Google Playрм░рнБ рмХрм┐рмгрм┐рмерм┐рммрм╛ рмЕрмбрм┐рмУрммрнБрмХрнНтАНрмХрнБ рмЖрмкрмг рм╢рнБрмгрм┐рмкрм╛рм░рм┐рммрнЗред
рмЗ-рм░рм┐рмбрм░рнН рмУ рмЕрмирнНрнЯ рмбрм┐рмнрм╛рмЗрм╕рнНтАНрмЧрнБрнЬрм┐рмХ
Kobo eReaders рмкрм░рм┐ e-ink рмбрм┐рмнрм╛рмЗрм╕рмЧрнБрмбрм╝рм┐рмХрм░рнЗ рмкрмврм╝рм┐рммрм╛ рмкрм╛рмЗрмБ, рмЖрмкрмгрмЩрнНрмХрнБ рмПрмХ рмлрм╛рмЗрм▓ рмбрм╛рмЙрмирм▓рнЛрмб рмХрм░рм┐ рмПрм╣рм╛рмХрнБ рмЖрмкрмгрмЩрнНрмХ рмбрм┐рмнрм╛рмЗрм╕рмХрнБ рмЯрнНрм░рм╛рмирнНрм╕рмлрм░ рмХрм░рм┐рммрм╛рмХрнБ рм╣рнЗрммред рм╕рморм░рнНрмерм┐рмд eReadersрмХрнБ рмлрм╛рмЗрм▓рмЧрнБрмбрм╝рм┐рмХ рмЯрнНрм░рм╛рмирнНрм╕рмлрм░ рмХрм░рм┐рммрм╛ рмкрм╛рмЗрмБ рм╕рм╣рм╛рнЯрмдрм╛ рмХрнЗрмирнНрмжрнНрм░рм░рнЗ рмерм┐рммрм╛ рм╕рммрм┐рм╢рнЗрм╖ рмирм┐рм░рнНрмжрнНрмжрнЗрм╢рм╛рммрм│рнАрмХрнБ рмЕрмирнБрм╕рм░рмг рмХрм░рмирнНрмдрнБред