Skip to content

PacktPublishing/Learn-Type-Driven-Development

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 

Repository files navigation

Learn Type Driven Development

Learn Type Driven Development

This is the code repository for Learn Type Driven Development, published by Packt.

Benefit from type systems to build reliable and safe applications using ReasonML 3

What is this book about?

Type-driven development is the approach to programming that has types as the foundation of code. Dependent types are utilized to express relationships and other assumptions directly in the code, and these assumptions are checked by the compiler. This book will cover Type Driven Development and how to leverage the power of the type system to write future code consistent with your past design decisions.

This book covers the following exciting features:

  • Explore the type-driven concepts, with simple and compelling examples.
  • Understand how to get quick wins in safety by just starting to use basic types
  • Create modules and module types, apply module types (signatures) to modules
  • Enforce sophisticated logic using product and sum types as building blocks.
  • Capture interesting and useful information using static types to make a program safer and faster.
  • Arrive at the best way to express your rules about your system by exploring design space using static typing.
  • Use static types and the dynamic runtime in harmony to write even safer, faster code.

If you feel this book is for you, get your copy today!

https://www.packtpub.com/

Instructions and Navigations

All of the code is organized into folders. For example, Ch02.

The code will look like the following:

let sumOfSquares(x: int, y: int) = { /* (1) */
  let xSq = x * x;
  let ySq = y * y;
  xSq + ySq
};

Following is what you need for this book: If you’re a programmer working with dynamically typed languages and are looking for ways to mitigate production runtime errors, Learn Type-Driven Development is for you. You’ll also find this book helpful if you’re a programmer working with statically typed languages looking for increased safety and improved performance.

With the following software and hardware list you can run all code files present in the book (Chapter 1-10).

Software and Hardware List

Chapter Software required OS required
1-10 NodeJS Windows, Mac OS X, and Linux (Any)
1-10 Visual Studio Code Windows, Mac OS X, and Linux (Any)
1-10 ReasonML Windows, Mac OS X, and Linux (Any)

Related products

Get to Know the Author

Yawar Amin is a software engineer working in Toronto, Canada. He has worked on data science-based recommendation systems, customer-facing applications, and large data engineering projects. In his spare time, he likes to read, write, and use the Oxford comma whenever he can.

Kamon Ayeva is a web developer/DevOps engineer working with a variety of tools. He spends most of his time building projects using Python's powerful scripting capabilities, add-on libraries, and web frameworks such as Django or Flask. Kamon has been using Python in professional contexts for more than 12 years. Based on his recent experience of using the type system that was added to Python 3, as well as developing a user interface using the React framework, latterly, he has started exploring type-driven development in JavaScript.

Other books by the authors

Suggestions and Feedback

Click here if you have any feedback or suggestions.

Download a free PDF

If you have already purchased a print or Kindle version of this book, you can get a DRM-free PDF version at no cost.
Simply click on the link to claim your free PDF.

https://packt.link/free-ebook/9781788838016

About

Learn-Type-Driven-Development, published by Packt

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5

Languages