[Lazarus] Passing properties as var paramatars

Howard Page-Clark hdpc at talktalk.net
Sun Nov 8 21:05:34 CET 2009


On Sun, 08 Nov 2009 09:33:39 -0500
Mehmet Erol Sanliturk <sanliturk at ttmail.com> wrote:

> Marco van de Voort wrote:
> > On Sun, Nov 08, 2009 at 12:17:35AM +0000, Howard Page-Clark wrote:
> >>>> On Sat, 7 Nov 2009, Marco van de Voort wrote:
> >>>>> This is not orthogonal. VAR parameters are generally updated
> >>>>> instantaniously. By delaying the update over a temp variable you break
> >>>>> another aspect of the VAR parameter.
> >> I don't understand 'not orthogonal' in this sentence. What meaning does
> >> orthogonal have apart from 'being at right angles to' ?
> > 
> > I'm not entirely sure where the phrase comes from (see also Mehmet), but I
> > guess it has something to do with the axises in a Carthesian coordinate
> > system, and from there dimensions (point,length,area,volume etc). 
> > A translation along one axis doesn't change the other in classic geometry.
> > 
> > Assume it came to indicate absence of side-effects from there.
> 
> If you search
> 
> orthogonality in programming language design
> 
> in www.yahoo.com , you may find many references , such as
> 
> 
> 
> http://en.wikipedia.org/wiki/Programming_language_design
> http://en.wikipedia.org/wiki/Orthogonality_(programming)
> 
> Design Criteria for a Language :
> http://www.ist.rit.edu/~jdb/plc/wk1.pdf
> 
> Orthogonality in Language Design - Why and how to fake it :
> http://prog.vub.ac.be/~wdmeuter/PostJava/Herrmann.pdf
> 
> Compactness and Orthogonality :
> http://catb.org/esr/writings/taoup/html/ch04s02.html
> 
> On orthogonality in programming languages :
> http://portal.acm.org/citation.cfm?id=954246&dl=ACM&coll=portal&CFID=934114&CFTOKEN=43879943
> 
> 
> The Art of Unix Programming :
> ( To design for compactness and orthogonality ... )
> http://www.linuxtopia.org/online_books/programming_books/art_of_unix_programming/ch04s02_4.html
> 
> 
> 
> among many others .
> 
> 
> Abundance of references show that orthogonality is a widely considered 
> concept in programming language design .
> 
> As an example , the following statements are not orthogonal to each other :
> 
> ( 1 ) if - go to
> ( 2 ) for
> ( 3 ) repeat
> ( 4 ) while
> ( 5 ) case
> 
> because any one of them may be expressed by the others , but
> 
> ( 1 ) go to
> ( 2 ) := ( assignment )
> 
> are orthogonal because it is not possible to express any one of them by 
> the other .

Thanks guys for your explanations.





More information about the Lazarus mailing list