README.md

Build
Status AppVeyor Build
Status CRAN_Status_Badge Downloads Coverage
Status License

ado

The ado package provides an R-based interpreter for Stata’s ado language. It’s still under development and isn’t yet suitable for day-to-day use. When it’s completed, the language it supports will be close to but not exactly like Stata, in much the same way that R is descended from but not identical to S. This package is not in any way affiliated with or endorsed by StataCorp.

The target functionality, only some of which is currently completed, covers several areas:

See sections below for more detail on functionality that’s already complete or nearly so.

Parsing and frontend

The interpreter’s frontend is mostly complete. The parser and lexer, semantic analyzer and code generator (which generates R code) are functional and accept nearly the final language we want to support. There are still a few minor bugs, and the differences from Stata are poorly documented.

Macros and loops

Support for macros and loops is complete, and touches many parts of the interpreter architecture. Macro support in particular is tightly integrated into the lexer, because it turns out that it has to be to reproduce Stata’s behavior.

R interface

Both targeted ways of integrating with R are already supported:

Logging and misc

Stata’s logging features are mostly supported. The log and cmdlog commands exist and work as expected, allowing output, input or both to be captured and redirected to files in a much simpler way than with sink().

File manipulation commands are ready and working, though possibly not on Windows.

Installation

There’s no CRAN version yet, so install the dev version from github:

install.packages("devtools")
devtools::install_github("wwbrannon/ado")


wwbrannon/ado documentation built on May 4, 2019, 12:03 p.m.