home bbs files messages ]

Forums before death by AOL, social media and spammers... "We can't have nice things"

   comp.lang.pascal.borland      Borland Pascal was actually pretty neat      2,978 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 1,336 of 2,978   
   Marco van de Voort to Bill Leary   
   Re: Real Help Now, seriously   
   07 Feb 05 11:06:57   
   
   From: marcov@stack.nl   
      
   On 2005-02-06, Bill Leary  wrote:   
   > "Marco van de Voort"  wrote in message   
   > news:slrnd0d44a.1k76.marcov@turtle.stack.nl...   
   >> On 2005-02-06, Bill Leary  wrote:   
   >> > But I'm not sure what you mean by "magic."  They seem perfectly logical to   
   >> > me, and now that you've caused me to re-read the entry and see that the   
   >> > characters come through anyway on character reads, they seem even more so.   
   >>   
   >> I was hinting at the fact that read, write and their ln counterparters are   
   >> compiler magic. They don't exist as proper procedures, contrary to C.   
   >   
   > I assume you're correct for most.  For at least one I worked with, which I   
   > modified and thus had the source for, all of those were libraries similar to   
   > what C does.  But now that you mention it, there was some "compiler magic" at   
   > work even then.  When the "read" routine was called, there was an value put   
   on   
   > the stack saying how many arguments followed, then each argument was   
   preceded on   
   > the stack by typing information (I don't recall exactly what now, but I   
   think it   
   > was a word) which told the read routine how to process the following pointer   
   to   
   > where to store the results.  The write funciton, of course, got similar   
   > treatment.  Or now that I've described this, perhaps that's what you were   
   > getting at?   
      
   More or less. However you describe a strategy that is interpretive. Most   
   compilers have no write function at all, they split a   
      
   writeln ('xxx',c,':',i);   
      
   into   
      
   fpc_write_string(output,'xxx');   
   fpc_write_char(output,c);   
   fpc_write_char(output,':');   
   fpc_write_Integer(output,i);   
   fpc_write_ln(output);   
      
   Note that output is not implicit anymore either.   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca