Now you can use functions to make code more succinct and readable. We explored the different function forms that exist (does, has, func, and function), and the awesome power of do for evaluating and importing code. We learned to declare function arguments, refinements, and return values, giving them a type when appropriate. Functions should be documented, and we saw how to do this. We also explored some important techniques for performing error handling and writing recursive functions. Finally, we demonstrated how code in Red can be treated as data, making metaprogramming possible.
We also learned how to make objects with fields and methods, as well as how to make new objects from existing objects and how to explore the contents of an object.
In the next chapter, you'll learn how to read and store data in files, making a whole lot of new applications possible.
...