Book Image

Learn Red ? Fundamentals of Red

By : Ivo Balbaert
Book Image

Learn Red ? Fundamentals of Red

By: Ivo Balbaert

Overview of this book

A key problem of software development today is software bloat, where huge toolchains and development environments are needed in software coding and deployment. Red significantly reduces this bloat by offering a minimalist but complete toolchain. This is the first introductory book about it, and it will get you up and running with Red as quickly as possible. This book shows you how to write effective functions, reduce code redundancies, and improve code reuse. It will be helpful for new programmers who are starting out with Red to explore its wide and ever-growing package ecosystem and also for experienced developers who want to add Red to their skill set. The book presents the fundamentals of programming in Red and in-depth informative examples using a step-by-step approach. You will be taken through concepts and examples such as doing simple metaprogramming, functions, collections, GUI applications, and more. By the end of the book, you will be fully equipped to start your own projects in Red.
Table of Contents (13 chapters)
11
Assessments

Basic contacts app

Let's now combine some of the things we have learned so far and start building a maintenance app for the contacts we used throughout Chapters 5, Working with Series and Blocks, and Chapter 7, Working with Files. Our data store is a text file named contacts. Each line has the contact's name, the contact's address, and a telephone number, all fields separated by a semicolon (;).

Here's an example:

John Smith;123 Tomline Lane Forest Hills, NJ;555-1234
Paul Thompson;234 Georgetown Pl. Grove, AL;555-2345

Here is the application screen:

The names of our contacts are shown in the text-list face. When a name is selected, this contact's details appear in the fields in the panel on the right. A new contact can be filled in and added to the list. When the Save button is pressed, all contacts are saved to the contacts file.

Here is the code. By...