You need to do:
	system("perl presentPerformance.pl",intern=TRUE)
It does pay to read the help, you know.
		cheers,
			Rolf Turner
	
On 28/08/2008, at 8:36 AM, kevinchang wrote:
>
> Dear R users,
>
> I am trying to call a Perl subroutine from R . The subroutine  
> returns an
> arrray contaning three elements wihch are all strings. But the  
> calling in R
> return an integer which is 0. I have no idea how this could happen.  
> Maybe
> becasue I shouldn't use system() in R or I should load a particular  
> package
> for my R in windows. Please help ....
>
> -------------------------------------------------------------------
> the perl subroutine in presentPerformance.pl
>
> sub findAccuracy{
> 	while(defined($filename=glob("*.log"))){
>
> 	open(WORDLIST , $filename)||die("can't open the file!");
> 	while($line=<WORDLIST>){
> 		
> 	    if ($line=~m/accuracy/){
> 	  $line=~s/-----accuracy://;
> 	
> @temp=split(" ",$line);
> $temp[0]=~s/\%//;
> $temp[2]=~s/\%//;
> @accInfoList=($temp[0],$temp[2],$filename);
> 	    	
> 	    }
> 	
> 	}	
> 	
> 	
> }
> return(@accInfoList)
>
> }
>
>
> findAccuracy();
> ---------------------------------------------------------------------- 
> ------------------
> The R code
>
>> class(system("perl presentPerformance.pl"))
> [1] "integer"
######################################################################
Attention:\ This e-mail message is privileged and confid...{{dropped:9}}