Computers

Programming Elixir ≥ 1.6

Author: Dave Thomas

Publisher: Pragmatic Bookshelf

ISBN:

Category: Computers

Page: 412

View: 777

This book is the introduction to Elixir for experienced programmers, completely updated for Elixir 1.6 and beyond. Explore functional programming without the academic overtones (tell me about monads just one more time). Create concurrent applications, butget them right without all the locking and consistency headaches. Meet Elixir, a modern, functional, concurrent language built on the rock-solid Erlang VM. Elixir's pragmatic syntax and built-in support for metaprogramming will make you productive and keep you interestedfor the long haul. Maybe the time is right for the Next Big Thing. Maybe it's Elixir. Functional programming techniques help you manage the complexities of today's real-world, concurrent systems; maximize uptime; and manage security. Enter Elixir, with its modern, Ruby-like, extendable syntax, compile and runtime evaluation, hygienic macro system, and more. But, just as importantly, Elixir brings a sense of enjoyment to parallel,functional programming. Your applications become fun to work with, and the language encourages you to experiment. Part 1 covers the basics of writing sequential Elixir programs. We'll look at the language, the tools, and the conventions. Part 2 uses these skills to start writing concurrent code-applications that use all the cores on your machine, or all the machines on your network! And we do it both with and without OTP. Part 3 looks at the more advanced features of the language, from DSLs and code generation to extending the syntax. This edition is fully updated with all the new features of Elixir 1.6, with a new chapter on structuring OTP applications, and new sections on the debugger, code formatter, Distillery, and protocols. What You Need: You'll need a computer, a little experience with another high-levellanguage, and a sense of adventure. No functional programmingexperience is needed.
Computers

Programming Elixir 1. 3

Author: Dave Thomas

Publisher: Pragmatic Bookshelf

ISBN:

Category: Computers

Page: 364

View: 592

Explore functional programming without the academic overtones (tell me about monads just one more time). Create concurrent applications, but get them right without all the locking and consistency headaches. Meet Elixir, a modern, functional, concurrent language built on the rock-solid Erlang VM. Elixir's pragmatic syntax and built-in support for metaprogramming will make you productive and keep you interested for the long haul. Maybe the time is right for the Next Big Thing. Maybe it's Elixir. This book is the introduction to Elixir for experienced programmers, completely updated for Elixir 1.3. Functional programming techniques help you manage the complexities of today's real-world, concurrent systems; maximize uptime; and manage security. Enter Elixir, with its modern, Ruby-like, extendable syntax, compile and runtime evaluation, hygienic macro system, and more. But, just as importantly, Elixir brings a sense of enjoyment to parallel, functional programming. Your applications become fun to work with, and the language encourages you to experiment. Part 1 covers the basics of writing sequential Elixir programs. We'll look at the language, the tools, and the conventions. Part 2 uses these skills to start writing concurrent code-applications that use all the cores on your machine, or all the machines on your network! And we do it both with and without OTP. Part 3 looks at the more advanced features of the language, from DSLs and code generation toextending the syntax. This edition is fully updated with all the new features of Elixir 1.3, with a new chapter on Tooling, covering testing (both conventional and property based), code and dependency exploration, and servermonitoring.By the end of this book, you'll understand Elixir, and know how to apply it to solve your complex, modern problems. What You Need: You'll need a computer, a little experience with another high-level language, and a sense of adventure. No functional programming experience is needed.
Computers

Introducing Erlang

Author: Simon St. Laurent

Publisher: "O'Reilly Media, Inc."

ISBN:

Category: Computers

Page: 212

View: 602

If you’re new to Erlang, 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. In this updated second edition, author Simon St.Laurent shows you how to write simple Erlang programs by teaching you one skill at a time. You’ll 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, you’ll understand why Erlang is ideal for concurrency and resilience. Get cozy with Erlang’s shell, its command line interface Define functions, using the fun tool, to represent repeated calculations Discover atoms, pattern matching, and guards: the foundations of your program structure Delve into the heart of Erlang 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 and the Mnesia database Learn about Open Telecom Platform, Erlang’s open source libraries and tools
Computers

Introducing Elixir

Author: Simon St. Laurent

Publisher: "O'Reilly Media, Inc."

ISBN:

Category: Computers

Page: 210

View: 248

Elixir is an excellent language if you want to learn about functional programming, and with this hands-on introduction, you’ll 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, you’ll understand why Elixir makes it easier to build concurrent and resilient programs that scale up and down with ease. Get comfortable with IEx, Elixir’s 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 Erlang’s Open Telecom Platform Define macros with Elixir’s metaprogramming tools
Computers

Elixir Cookbook

Author: Paulo A Pereira

Publisher: Packt Publishing Ltd

ISBN:

Category: Computers

Page: 236

View: 532

This book is intended for users with some knowledge of the Elixir language syntax and basic data types/structures. Although this is a cookbook and no sequential reading is required, the book’s structure will allow less advanced users who follow it to be gradually exposed to some of Elixir’s features and concepts specific to functional programming. To get the most out of this book, you need to be well versed with Erlang.
Computers

Functional Web Development with Elixir, OTP, and Phoenix

Author: Lance Halvorsen

Publisher: Pragmatic Bookshelf

ISBN:

Category: Computers

Page: 220

View: 148

Elixir and Phoenix are generating tremendous excitement as an unbeatable platform for building modern web applications. For decades OTP has helped developers create incredibly robust, scalable applications with unparalleled uptime. Make the most of them as you build a stateful web app with Elixir, OTP, and Phoenix. Model domain entities without an ORM or a database. Manage server state and keep your code clean with OTP Behaviours. Layer on a Phoenix web interface without coupling it to the business logic. Open doors to powerful new techniques that will get you thinking about web development in fundamentally new ways. Elixir and OTP provide exceptional tools to build rock-solid back-end applications that scale. In this book, you'll build a web application in a radically different way, with a back end that holds application state. You'll use persistent Phoenix Channel connections instead of HTTP's request-response, and create the full application in distinct, decoupled layers. In Part 1, start by building the business logic as a separate application, without Phoenix. Model the application domain with Elixir functions and simple data structures. By keeping state in memory instead of a database, you can reduce latency and simplify your code. In Part 2, add in the GenServer Behaviour to make managing in-memory state a breeze. Create a supervision tree to boost fault tolerance while separating error handling from business logic. Phoenix is a modern web framework you can layer on top of business logic while keeping the two completely decoupled. In Part 3, you'll do exactly that as you build a web interface with Phoenix. Bring in the application from Part 2 as a dependency to a new Phoenix project. Then use ultra-scalable Phoenix Channels to establish persistent connections between the stateful server and a stateful front-end client. You're going to love this way of building web apps! What You Need: You'll need a computer that can run Elixir version 1.5 or higher and Phoenix 1.3 or higher. Some familiarity with Elixir and Phoenix is recommended.
Computers

Elixir in Action

Author: Sasa Jurić

Publisher: Manning Publications

ISBN:

Category: Computers

Page: 375

View: 954

Erlang is a seasoned development platform that offers highly-efficient concurrency, scalability, and fault-tolerance. Elixir is a modern programming language that takes advantage of the Erlang Virtual Machine without the complex syntax and conventions of the Erlang language. Elixir offers Ruby-like elegance along with the power to develop bulletproof scalable, fault tolerant, distributed server systems that can handle massive numbers of simultaneous clients and run with almost no downtime. Elixir in Action shows how to use the Elixir programming language to solve practical problems associated with scalability, concurrency, fault-tolerance, and high-availability. It starts with a quick overview of Elixir, mapping familiar language concepts to the Elixir syntax. With a solid foundation, readers can confidently explore Elixir's seamless integration with the Erlang Virtual Machine and supporting OTP library that offers battle-tested, industry proven abstractions that can be used immediately in applications. Finally, the book provides guidance on creating deployable releases, distribute the system over multiple machines, and control the running system in production. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.
Computers

Phoenix Web Development

Author: Mike Voloz

Publisher: Packt Publishing Ltd

ISBN:

Category: Computers

Page: 406

View: 422

Learn to build a high-performance functional prototype of a voting web application from scratch using Elixir and Phoenix Key Features Build a strong foundation in Functional-Programming techniques while learning to build compelling web applications Understand the Elixir Concurrency and parallelization model to build high-performing blazingly fast applications Learn to test, debug and deploy your web applications using Phoenix framework Book Description Phoenix is a modern web development framework that is used to build API’s and web applications. It is built on Elixir and runs on Erlang VM which makes it much faster than other options. With Elixir and Phoenix, you build your application the right way, ready to scale and ready for the increasing demands of real-time web applications. This book covers the basics of the Phoenix web framework, showing you how to build a community voting application, and is divided into three parts. In the first part, you will be introduced to Phoenix and Elixir and understand the core terminologies that are used to describe them. You will also learn to build controller pages, store and retrieve data, add users to your app pages and protect your database. In the second section you will be able to reinforce your knowledge of architecting real time applications in phoenix and not only debug these applications but also diagnose issues in them. In the third and final section you will have the complete understanding of deploying and running the phoenix application and should be comfortable to make your first application release By the end of this book, you'll have a strong grasp of all of the core fundamentals of the Phoenix framework, and will have built a full production-ready web application from scratch. What you will learn Learn Phoenix Framework fundamentals and v1.3's new application structure Build real-time applications with channels and presence Utilize GenServers and other OTP fundamentals to keep an application stable Track users as they sign in and out of chat with Phoenix’s built-in presence functionality Write your own database interaction code that is safe, bug-free, and easy to work with Explore testing and debugging methodologies to understand a real software development lifecycle for a Phoenix application Deploy and run your Phoenix application in production Who this book is for This book is for people with a basic knowledge of Elixir, who want to start building web applications. Prior experience with web technologies is assumed.
Computers

Computer Systems Development

Author: Andrew L. Friedman

Publisher: John Wiley & Sons Incorporated

ISBN:

Category: Computers

Page: 420

View: 267

This book outlines the entire history of computer systems development. Based on surveys from Europe, Japan, Australia, and the United States, it emphasizes the rising concern with user relations as a major shift in systems development.