LISTSERV at the University of Georgia
Menubar Imagemap
Home Browse Manage Request Manuals Register
Previous messageNext messagePrevious in topicNext in topicPrevious by same authorNext by same authorPrevious page (April 2004, week 4)Back to main SAS-L pageJoin or leave SAS-L (or change settings)ReplyPost a new messageSearchProportional fontNon-proportional font
Date:         Wed, 28 Apr 2004 14:49:10 -0600
Reply-To:     Jack Hamilton <JackHamilton@FIRSTHEALTH.COM>
Sender:       "SAS(r) Discussion" <SAS-L@LISTSERV.UGA.EDU>
From:         Jack Hamilton <JackHamilton@FIRSTHEALTH.COM>
Subject:      Re: macro
Comments: To: rjf2@cdc.gov
Content-Type: text/plain; charset=us-ascii

Ron Fehd wrote:

>> From: Jack Hamilton [mailto:JackHamilton@firsthealth.com] >> What do you mean by "not a programming language"? It can do >> integer and floating point math, it supports sequential and >> conditional program flow, and it can read and write data. > >> What else does it need? > >besides its parent, SAS?

The data step language also needs its parent, SAS, to run; would you say that the data step language is not a real programming language?

You have a point about subroutines, but the data step doesn't support subroutines in the traditional sense either. Also, I don't think that subroutine support is one of the traditional requirements for structured programming languages. It's certainly not required for the general definition of "programming language": "A programming language or computer language is a standardized communication technique for expressing instructions to a computer. It is a set of syntactic and semantic rules used to define computer programs. A language enables a programmer to precisely specify what data a computer will act upon, how these data will be stored/transmitted, and precisely what actions to take under various circumstances." <http://en.wikipedia.org/wiki/Programming_language>

>in back of all that gets done in SAS >with the macro language as an add-in >the macro language is interpreted first >and its output added into the SAS stream >which is then compiled.

That assumes that the macro language can't do anything useful on its own, which is not true. A macro can read input, process it, and produce output, all without ever generating SAS data step or procedure code.

-- JackHamilton@FirstHealth.com Manager, Technical Development Metrics Department, First Health West Sacramento, California USA

>>> "Fehd, Ronald J. (PHPPO)" <rjf2@cdc.gov> 04/28/2004 12:29 PM >>> > I wrote: > The macro language is not a programming language

> From: Jack Hamilton [mailto:JackHamilton@firsthealth.com] > What do you mean by "not a programming language"? It can do > integer and floating point math, it supports sequential and > conditional program flow, and it can read and write data.

> What else does it need?

besides its parent, SAS?

uhm, ask, Quentin.

let me embellish that statement > The macro language is not a programming language like Pascal that we learned in college or others which support sub-routine definition within routine definition, which was the point of the comment.

in back of all that gets done in SAS with the macro language as an add-in the macro language is interpreted first and its output added into the SAS stream which is then compiled.

certainly, without SAS, there is no SAS macro language.

I use the word 'language' advisedly.

would you believe it is a sub-language? how about: a dialect? creole? pidgin?

Ron Fehd the linguistic maven CDC Atlanta GA USA RJF2@cdc.gov


Back to: Top of message | Previous page | Main SAS-L page