Book description
ReasonML is a new, type-safe, functional language that compiles to efficient, readable JavaScript. ReasonML interoperates with existing JavaScript libraries and works especially well with React, one of the most popular front-end frameworks. Learn how to take advantage of the power of a functional language while keeping the flexibility of the whole JavaScript ecosystem. Move beyond theory and get things done faster and more reliably with ReasonML today.
ReasonML is a new syntax for OCaml, a battle-tested programming language used in industry for over 20 years. Designed to be familiar to JavaScript programmers, ReasonML code compiles to highly readable JavaScript. With ReasonML, you get OCaml's powerful functional programming features: a strong static type system with an excellent type inference engine, pattern matching, and features for functional programming with immutable variables. ReasonML also allows flexibility with opt-in side effects, mutation, and object-oriented programming. ReasonML hits the sweet spot between the pure theoretical world and the laissez-faire approach of JavaScript.
Start using ReasonML's powerful type system as you learn the essentials of the language: variables and arithmetic operations. Gain expressive power as you write functions with named parameters and currying. Define your own data types, and integrate all these capabilities into a simple web page. Take advantage of ReasonML's functional data structures with map and reduce functions. Discover new ways to write algorithms with ReasonML's recursion support. Interoperate with existing JavaScript libraries with bindings, and write reactive web applications using ReasonML in tandem with React. Reinforce concepts with examples that range from short, tightly focused functions to complete programs, and practice your new skills with exercises in each chapter.With ReasonML, harness the awesome power of a functional language while retaining the best features of JavaScript to produce concise, fast, type-safe programs.What You Need:
You'll need to have node.js (version 10.0 or above) and npm (version 5.6 or above). Once you install the bs-platform package and fire up a text editor, you're ready to go. (There are plugins for many popular editors that will make editing easier.)
Publisher resources
Table of contents
- Introduction
- 1. Make Your First ReasonML Project
-
2. Writing Functions
- Defining Functions
- Using Labeled Parameters
- Providing Default Values for Labeled Parameters
- Shortening Code with bsrefmt
- Specifying Parameter Types
- Writing Functions without Parameters or Return Values
- Currying: Handling One Argument at a Time
- Currying and Labeled Parameters
- It’s Your Turn
- Summing Up
- 3. Creating Your Own Data Types
- 4. Interacting with Web Pages
- 5. Using Collections
- 6. Repeating with Recursion
- 7. Structuring Data with Records and Modules
- 8. Connecting to JavaScript
- 9. Making Applications with Reason/React
- A1. Understanding the ReasonML Ecosystem
- A2. Miscellaneous Topics
Product information
- Title: Web Development with ReasonML
- Author(s):
- Release date: March 2019
- Publisher(s): Pragmatic Bookshelf
- ISBN: 9781680506334
You might also like
book
Head First Design Patterns, 2nd Edition
You know you don’t want to reinvent the wheel, so you look to design patterns—the lessons …
book
Building Microservices, 2nd Edition
Distributed systems have become more fine-grained as organizations shift from code-heavy monolithic applications to smaller, self-contained …
book
Fundamentals of Software Architecture
Salary surveys worldwide regularly place software architect in the top 10 best jobs, yet no real …
book
Grokking Algorithms
Grokking Algorithms is a friendly take on this core computer science topic. In it, you'll learn …