© 2017

Functional Data Structures in R

Advanced Statistical Programming in R


  • Learn algorithmic programming in R

  • Emulate pointers and implement traditional data structures in R

  • Master how to work with data structures when you cannot modify the data itself


Table of contents

  1. Front Matter
    Pages i-xii
  2. Thomas Mailund
    Pages 1-2
  3. Thomas Mailund
    Pages 3-23
  4. Thomas Mailund
    Pages 25-66
  5. Thomas Mailund
    Pages 67-133
  6. Thomas Mailund
    Pages 135-187
  7. Thomas Mailund
    Pages 189-245
  8. Back Matter
    Pages 247-256

About this book


Get an introduction to functional data structures using R and write more effective code and gain performance for your programs. This book teaches you workarounds because data in functional languages is not mutable: for example you’ll learn how to change variable-value bindings by modifying environments, which can be exploited to emulate pointers and implement traditional data structures. You’ll also see how, by abandoning traditional data structures, you can manipulate structures by building new versions rather than modifying them. You’ll discover how these so-called functional data structures are different from the traditional data structures you might know, but are worth understanding to do serious algorithmic programming in a functional language such as R.

By the end of Functional Data Structures in R, you’ll understand the choices to make in order to most effectively work with data structures when you cannot modify the data itself. These techniques are especially applicable for algorithmic development important in big data, finance, and other data science applications.

You will:
  • Carry out algorithmic programming in R 
  • Use abstract data structures 
  • Work with both immutable and persistent data 
  • Emulate pointers and implement traditional data structures in R
  • Implement data structures in C/C++ with some wrapper code in R
  • Build new versions of traditional data structures that are known


functional data structures R programming statistics code software application source

Authors and affiliations

  1. 1.Aarhus NDenmark

About the authors

Thomas Mailund is an associate professor in bioinformatics at Aarhus University, Denmark. He has a background in math and computer science.  For the last decade, his main focus has been on genetics and evolutionary studies, particularly comparative genomics, speciation, and gene flow between emerging species.  He has published Beginning Data Science in R, Functional Programming in R and Metaprogramming in R with Apress as well as other books.  

Bibliographic information

Industry Sectors
IT & Software
Finance, Business & Banking
Energy, Utilities & Environment