dear Bert,
                   Thanks a lot...

Thanking you,
Yours sincerely,
AKSHAY M KULKARNI
________________________________
From: Bert Gunter <bgunter.4...@gmail.com>
Sent: Monday, January 9, 2023 9:59 PM
To: akshay kulkarni <akshay...@hotmail.com>
Cc: R help Mailing list <r-help@r-project.org>
Subject: Re: [R] return value of {....}

Unless you do something special within a function, only the value(s) returned 
are available to the caller. That is the essence of functional-type programming 
languages.

You need to read up on (function) environments in R . You can search on this. 
?function and its links also contain useful information, but it may too terse 
to be explicable to you. There are of course many available references on the 
internet.

I believe your mental model for how R works is flawed, and you have some 
homework to do to correct it. I may be wrong, naturally, but you can judge by 
looking at some tutorials.

-- Bert

On Mon, Jan 9, 2023 at 6:47 AM akshay kulkarni 
<akshay...@hotmail.com<mailto:akshay...@hotmail.com>> wrote:
Dear members,
                             I have the following code:

> TB <- {x <- 3;y <- 5}
> TB
[1] 5

It is consistent with the documentation: For {, the result of the last 
expression evaluated. This has the visibility of the last evaluation.

But both x AND y are created, but the "return value" is y. How can this be 
advantageous for solving practical problems? Specifically, consider the 
following code:

F <- function(X) {  expr; expr2; { expr5; expr7}; expr8;expr10}

Both expr5 and expr7 are created, and are accessible by the code outside of the 
nested braces right? But the "return value" of the nested braces is expr7. So 
doesn't this mean that only expr7 should be accessible? Please help me entangle 
this (of course the return value of F is expr10, and all the other objects 
created by the preceding expressions are deleted. But expr5 is not, after the 
control passes outside of the nested braces!)

Thanking you,
Yours sincerely,
AKSHAY M KULKARNI

        [[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
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.

Reply via email to