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

Downloading currency exchange rates

At the end of the Reading and writing files section, we learned how to download files from the internet. Let's use this knowledge to download some currency exchange rates data from Floatrates (http://www.floatrates.com/). As one of its many services, this website offers the current exchange rates of any currency compared to most common currencies. These rates can be obtained in XML or JSON format. For example, the URL http://www.floatrates.com/daily/USD.xml shows a spreadsheet layout of currencies compared to the US dollar (USD):

For example, today (Mar 23, 2018) it shows that 1 USD is worth 0.81191502 Euros (EUR). The resource for this nice web page is an XML file, in which all exchange rate data are stored, in our case, USD.xml.

We now know how to download this data and store it in a local rates.xml file for further processing:

;-...