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

An introduction to the draw dialect

Draw is a Red dialect created to make it easy to draw two-dimensional geometrical shapes such as circles, rectangles, and animations. It makes use of VID, so the needs 'view has to appear in the header. To start with a simple example, here is how to draw a circle:

;-- see Chapter09/first-draw-example.red:
view
[
base 100x100 cyan draw [
line 20x0 75x50
pen red
circle 35x50 20
]
]

We draw on a base face and start a draw block. In it, we draw a line from a starting point at 20 x 0 to an end point at 75 x 50. Then, we define a pen with the color red and use it to draw a circle with a radius of 20 and center at 35 x 50:

=> Now answer question 9 from the Questions section.

Instead of a base, you can also add drawings on an existing image.

The draw dialect is very elaborate, here are some of the things you can try...