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: 9781680506891
You might also like
book
The Joy of JavaScript
Whether building interactive browser-based applications or creating server-side applications in Node, JavaScript is the most widely …
book
Web Development with Clojure, 3rd Edition
Today, developers are increasingly adopting Clojure as a web-development platform. See for yourself what makes Clojure …
book
The CLI Book: Writing Successful Command Line Interfaces with Node.js
Learn everything that makes command line clients such as Git and npm so successful, and how …
book
CSS in Depth
CSS in Depth exposes you to a world of CSS techniques that range from clever to …