The following may be of use (it gives the parse tree of the text): > z <- as.list(parse(text = "function(x)x %*% x")) > z[[1]] function(x) x %*% x > z[[c(1,1)]] `function` > z[[c(1,2)]] $x > z[[c(1,3)]] x %*% x > z[[c(1,3,1)]] `%*%` > z[[c(1,3,2)]] x > z[[c(1,3,3)]] x
Bert Gunter On Fri, Sep 6, 2019 at 10:14 AM Wang Jiefei <szwj...@gmail.com> wrote: > If you are looking for an R code parser, I think the `parse` and `eval` > function might be a good start point. See the example below. > > > parse(text="function(x)message(x)") > expression(function(x)message(x)) > > eval(parse(text="function(x)message(x)")) > function(x)message(x) > > Best, > Jiefei > > On Fri, Sep 6, 2019 at 12:55 PM Golden, Shelby <gold...@njhealth.org> > wrote: > >> Hello Bert, >> >> Thank you for the reply and your clarifications. Yes, it might be helpful >> to look into R’s formal grammar to see how “function” parses input to >> delegate correct syntax. Is that accessible online? >> >> Thank you, >> Shelby >> >> >> From: Bert Gunter <bgunter.4...@gmail.com> >> Date: Friday, September 6, 2019 at 10:44 AM >> To: "Golden, Shelby" <gold...@njhealth.org> >> Cc: "r-help@R-project.org" <r-help@r-project.org>, "Gillenwater, Lucas" < >> gillenwat...@njhealth.org> >> Subject: Re: [R] [R-devel] Source Code for function >> >> 1. This is a plain text list; all html is stripped. So there is no red >> highlighting. >> >> 2. There is no "source code" for "function" -- it is a reserved keyword. >> Or are you looking for R's formal grammar -- e.g. how it parses input to >> determine correct syntax? >> >> >> >> Bert Gunter >> >> "The trouble with having an open mind is that people keep coming along >> and sticking things into it." >> -- Opus (aka Berkeley Breathed in his "Bloom County" comic strip ) >> >> >> On Fri, Sep 6, 2019 at 8:51 AM Golden, Shelby <gold...@njhealth.org >> <mailto:gold...@njhealth.org>> wrote: >> Hi all, >> >> I have been attempting to access the source code for the keyword >> “function” to better understand how it assigns and stores logical inputs, >> like in the subset() [base] function. Does anyone know how I can access the >> source code for this? >> >> For example, if I have >> norm <- function(x){ >> sqrt(x%*%x)) >> } >> I am looking for the source code for the “function” portion, highlighted >> in red. >> >> Thank you for your time and assistance, >> Shelby Golden >> Lab Researcher Technician >> Dr. Russell Bowler’s Lab >> Department of Medicine >> National Jewish Health in Denver, CO >> Phone: (303) 270-2598 >> >> NOTICE: This email message is for the sole use of the intended >> recipient(s) and may contain confidential and privileged information. Any >> unauthorized review, use, disclosure or distribution is prohibited. If you >> are not the intended recipient, please contact the sender by reply email >> and destroy all copies of the original message. >> [[alternative HTML version deleted]] >> >> ______________________________________________ >> R-help@r-project.org<mailto:R-help@r-project.org> mailing list -- To >> UNSUBSCRIBE and more, see >> https://stat.ethz.ch/mailman/listinfo/r-help< >> http://mx2.njhealth.org:32224/?dmVyPTEuMDAxJiZmMWRiYmMxZjFmNmI5ZDBkMz01RDcyOEQwN18yMjk2OF8zOTk2XzEmJjljNzlmMDA4YWRmZTZjMz0xMjMzJiZ1cmw9aHR0cHMlM0ElMkYlMkZzdGF0JTJFZXRoeiUyRWNoJTJGbWFpbG1hbiUyRmxpc3RpbmZvJTJGci1oZWxw >> > >> PLEASE do read the posting guide >> http://www.R-project.org/posting-guide.html< >> http://mx2.njhealth.org:32224/?dmVyPTEuMDAxJiZlMTkwYmMwMzFlNjk4ZTAzNz01RDcyOEQwN18yMjk2OF8zOTk2XzEmJmFkYTkxMWRkMWRhZTFkNz0xMjMzJiZ1cmw9aHR0cCUzQSUyRiUyRnd3dyUyRVItcHJvamVjdCUyRW9yZyUyRnBvc3RpbmctZ3VpZGUlMkVodG1s >> > >> and provide commented, minimal, self-contained, reproducible code. >> >> [[alternative HTML version deleted]] >> >> ______________________________________________ >> R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see >> https://stat.ethz.ch/mailman/listinfo/r-help >> PLEASE do read the posting guide >> http://www.R-project.org/posting-guide.html >> and provide commented, minimal, self-contained, reproducible code. >> > [[alternative HTML version deleted]] ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.