SAS Macro Language

Start Date: 07/05/2020

Course Type: Common Course

Course Link:

Explore 1600+ online courses from top universities. Join Coursera today to learn data science, programming, business strategy, and more.

About Course

In this course, you learn advanced techniques within the DATA step and procedures to manipulate data.

Course Syllabus

SAS Macro Facility
Storing and Processing Text
Working with Macro Programs
Developing Macro Applications
Case Study (Optional - Honors)

Deep Learning Specialization on Coursera

Course Introduction

In this course, you learn advanced techniques within the DATA step and procedures to manipulate data.

Course Tag

Related Wiki Topic

Article Example
SAS language The SAS System and World Programming System are SAS language compilers.
SAS (software) SAS version 4 had limited features, but made SAS more accessible. Version 5 introduced a complete macro language, array subscripts, and a full-screen interactive user interface called Display Manager. In 1985, SAS was rewritten in the C programming language. This allowed for the SAS' Multivendor Architecture that allows the software to run on UNIX, MS-DOS, and Windows. It was previously written in PL/I, Fortran, and assembly language.
Music Macro Language Music Macro Language (MML) is a music description language used in sequencing music on computer and video game systems.
SAS language The SAS language is a computer programming language used for statistical analysis, created by Anthony James Barr at North Carolina State University. It can read in data from common spreadsheets and databases and output the results of statistical analyses in tables, graphs, and as RTF, HTML and PDF documents. The SAS language runs under compilers that can be used on Microsoft Windows, Linux, and various other UNIX and mainframe computers.
MACRO-11 MACRO-11 is an assembly language with macro facilities for PDP-11 minicomputers from Digital Equipment Corporation (DEC). It is the successor to PAL-11 (Program Assembler Loader), an earlier version of the PDP-11 assembly language without macro facilities.
Parameterized macro As a simple example, in the C programming language, this is a typical macro that is "not" a parameterized macro:
Music Macro Language MML is sometimes known as Music Markup Language, by conflation with the XML musical notation markup language of that name. For instance, what the video game Mabinogi refers to as "Music Markup Language" is actually a typical implementation of Music Macro Language.
ARC Macro Language The ARC Macro Language (AML) is a proprietary high-level algorithmic language for generating applications in ArcInfo. It was designed by ESRI in 1986 specifically for their command line-driven ARC/INFO geographical information system. AML's syntax was based on CPL (the shell language of the PRIMOS operating system) because the majority of ARC/INFO installations at that time ran on Prime computers. The macro language features include the ability to create onscreen menus, use and assign variables, control statement execution, and get and use map or page unit coordinates.
MACRO-10 MACRO-10 is an assembly language with extensive macro facilities for DEC's PDP-10-based Mainframe computer systems, the DECsystem-10 and the DECSYSTEM-20. MACRO-10 is implemented as a two-pass assembler.
Programmable Macro Language Programmable Macro Language (PML) is a domain specific language developed by Aveva to enable customisation of their plant and marine design products. PML is a file-based interpreted language that enables an application developer to design Microsoft Windows form-based add-ins that can be included within an Aveva product such as Plant Design Management System (PDMS).
Macro instruction By the late 1950s the macro language was followed by the Macro Assemblers. This was a combination of both where one program served both functions, that of a macro pre-processor and an assembler in the same package. This allowed assembly language programmers to implement their own macro-language and allowed limited portability of code between two machines running the same CPU but different operating systems, for example, early versions of MSDOS and CPM-86. The macro library would need to be written for each target machine but not the overall assembly language program. Note that more powerful macro assemblers allowed use of conditional assembly constructs in macro instructions that could generate different code on different machines or different operating systems, reducing the need for multiple libraries.
SAS (software) SAS was re-designed in SAS 76 with an open architecture that allowed for compilers and procedures. The INPUT and INFILE statements were improved so they could read most data formats used by IBM mainframes. Generating reports was also added through the PUT and FILE statements. The ability to analyze general linear models was also added as was the FORMAT procedure, which allowed developers to customize the appearance of data. In 1979, SAS 79 added support for the CMS operating system and introduced the DATASETS procedure. Three years later, SAS 82 introduced an early macro language and the APPEND procedure.
VAX Macro With the advent of the 64-bit Alpha AXP chip, VAX Macro essentially became VMS Macro. Macro-32 was supported on the Alpha architecture, but because the Alpha used a different instruction set, the Macro-32 assembly language no longer mapped to the native instruction set. Macro-32 under the Alpha architecture was actually implemented then as a compiler, compiling VAX assembly language into Alpha instructions. Unlike most compilers, however, Macro-32 for Alpha performed no optimization, retaining as much as possible the programmer's direct control over the generated code.
VAX Macro The syntax, directives, macro language, and lexical substitution operators of VAX Macro previously appeared in Macro-11, the assembler for the PDP-11 series of computers. VAX Macro or, as it was also known, Macro-32, supported the VAX processors developed and manufactured by Digital Equipment Corporation. It ran under the VAX/VMS operating system and produced object files suitable for the VAX/VMS linker. The Macro-32 assembler (and the linker) were bundled with the operating system.
Macro instruction A Macro instruction is a line of computer program coding that results in one or more lines of program coding in the target programming language, sets variables for use by other statements, etc. In the mid-1950s, when assembly language programming was commonly used to write programs for digital computers, the use of macro instructions was initiated for two main purposes: to reduce the amount of program coding that had to be written by generating several assembly language statements from one macro instruction and to enforce program writing standards, e.g. specifying input/output commands in standard ways. Macro instructions were effectively a middle step between assembly language programming and the high-level programming languages that followed, such as FORTRAN and COBOL. Two of the earliest programming installations to develop "macro languages" for the IBM 705 computer were at Dow Chemical Corp. in Delaware and the Air Material Command, Ballistics Missile Logistics Office in California. A macro instruction written in the format of the target assembly language would be processed by a macro compiler, which was a pre-processor to the assembler, to generate one or more assembly language instructions to be processed next by the assembler program that would translate the assembly language instructions into machine language instructions.
VAX Macro The Alpha AXP chips introduced to the VMS world then the latest progression of the VMS Macro language, supporting the underlying RISC instruction set, and was called Macro-64.
Macro and security An example of macro language allowing type-safe macros. MacroML is an expressive, typed language that supports generative macros.
General-purpose macro processor A general-purpose macro processor or general purpose preprocessor is a macro processor that is not tied to or integrated with a particular language or piece of software.
SAS Institute In 2009, SAS filed a lawsuit against World Programming Ltd., alleging World Programming System—a software product designed to use the features of the SAS language—violated their copyright as it was reverse engineered from the functionality of SAS Learning Edition. The European Court of Justice ruled that functionality and language elements were not protected and the case was discussed in Oracle v. Google
Macro virus In computing terminology, a macro virus is a virus that is written in a macro language: a programming language which is embedded inside a software application (e.g., word processors and spreadsheet applications). Some applications, such as Microsoft Office, Excel, Power point allow macro programs to be embedded in documents such that the macros are run automatically when the document is opened, and this provides a distinct mechanism by which malicious computer instructions can spread. This is one reason it can be dangerous to open unexpected attachments in e-mails. Many antivirus programs can detect macro viruses, however they are still difficult to detect and its spread from the network.