The second section gives an overview of Functional Programming. You’ll learn how to use imperative and declarative programming styles to create functional programs that build upon themselves. You will also gain knowledge about type systems, type classes, pattern matching, and type inference.
You will see how to make use of the ternary, par, if-else, switch, and curried patterns in your programming in this functional style. You will also learn how to combine imperative-style code for both read-only and write-only code and how to use type extensions to add compile-time constraints to your programs.
The third section of the Ring Programming book focuses on concurrency. You’ll learn how to construct concurrency with streams, message passing, actor models, fibers, futures, and multiplexers. This section is also helpful because it gives you a good overview of what type systems are and why they are important. A type system is one way to express the concept of “what kind of program it is possible to write.”
The fourth section of this Ring Programming book introduces you to functional style languages such as: Scala, Groovy, OCaml, and F#. In this chapter, you will learn how to write an imperative-style program in each of these functional languages. You’ll also learn how to write read-only and write-only programs in these languages.
The fifth section of this Ring Programming book teaches you how to build a concurrent network using Java. You will learn how to create a simple network using a queue and a TCP connection. In addition, you will learn how to use the Java threading API to run multiple threads concurrently on a single work piece of data. You will also learn how to create an event-driven network using message passing.
The sixth section of this Ring Programming book explains how to build distributed services. You will learn how to write and maintain highly scalable, fault-tolerant distributed systems using a number of message queues and message brokers. You will also learn how to send messages and events between different distributed servers, and clients.
The last section of the Ring Programming book shows you how to develop distributed systems using the Java Servlet API. You will learn how to write client-server applications using the Servlets API and how to use the Ajax or XML streaming features to publish your Web pages.
This Ring Programming book contains a comprehensive set of exercises for you to complete. These exercises will not only help you learn how to use the Ring programming language but also help you practice your own skills by helping you determine which features and language features you need to master before you consider starting a full-fledged web application.
The book also includes a chapter that offers an introduction to the theory behind the Ring programming language. The authors provide a brief outline of the theory and practice problems related to the Ring Programming language, so that you can gain experience with the language before you get started using it on your own projects. This book also includes a chapter that introduces you to the different types of concurrency constructs and how to use them. If you are unfamiliar with the concepts covered in the earlier sections of the Ring Programming book, the following chapter can be a great source of information.
Finally, the last part of this Ring Programming book explains various ways that you can apply the Ring programming language to different types of applications. The chapters in this part of the book cover the application of the Ring Programming Language to several different types of problems. This chapter gives an overview of streaming, event-driven, and actor-oriented programming. In addition, you will learn how to use the Java concurrency model to solve problems using the Ring Programming Language.
As with any programming book, the book has some good parts and bad parts. Some people may feel that the focus on imperative programming and concurrency is a little limiting. Others may find the material in the previous sections of the book overwhelming. However, it should be said that most people have benefited from the information provided.
The authors of the Ring Programming book make it clear that this book is written for beginners. If you are a beginner and have some experience with the Java programming language, you should find this book useful.