Chapter 10. The Ruby Environment

image with no caption

This chapter is a catch-all for Ruby programming topics that have not been discussed elsewhere. Most of the features covered here have to do with the interface between Ruby and the operating system on which it is running. As such, some of these features are OS-dependent. Similarly, many of the features may be implementation dependent: not every Ruby interpreter will implement them in the same way. Topics covered include:

  • The Ruby interpreter’s command-line arguments and environment variables.

  • The top-level execution environment: global functions, variables, and constants.

  • Shortcuts for text processing scripts: global functions, variables, and interpreter options, usually inspired by the Perl programming language, that make it possible to write short but powerful Ruby programs for processing text files.

  • OS commands: running shell commands and invoking executables in the underlying operating system. These are features that allow Ruby to be used as a scripting or “glue” language.

  • Security: how to reduce the risk of SQL injection and similar attacks with Ruby’s tainting mechanism, and how to “sandbox” untrusted Ruby code with $SAFE execution levels.

Get The Ruby Programming Language now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.