Re: Digest for EUforum at topica.com, issue 6333
- Posted by CChris <christian.cuvier at agriculture.gouv.fr> Jan 08, 2007
- 559 views
Chris Bensler wrote: > > cchris005 wrote: > > PBR by far. > > > > * It allows automatic updating (exit all bugs related to failing to do > > so), > > * enables true exchange of data (instead oof using globals in so many > > places), > > * enables to transform an object (exit > > seq[idx1][idx2][idx3]=append(seq[idx1][idx2][idx3],something).) > > * and more > > > > I am very surprised at posts I have seen these days. I have used PBR in > > every programming languages I have used so far - even asm knows about > > PBR! - and cannot see the problem with it. You only have to specify PBV > > or PBR when you declare parameters. The way Pascal does it suits me > > fine. Can someone explain why there's almost hatred towards PBR here? > > > > I am not saying that structures, ie locations in memory with individual > > type checking and global consistency checks, accessed in a object.member > > fashion, are not useful. They definitely are. But IMHO less than PBR. > > Every single day that I program in Eu I wish for some kind of structures. > The only real advantage to PBR is to avoid having to return a sequence and > disperse > the result to several variables. This can be resolved by implementing > assignment > to variable lists. > Eg. {err,val} = get("3.14") > > PBR also creates many ambiguities. > Implicit behaviour is prone to error. > > > Chris Bensler > ~ The difference between ordinary and extraordinary is that little extra ~ > <a href="http://empire.iwireweb.com">http://empire.iwireweb.com</a> - Empire > for Euphoria Are you sure? Most of the bugs I see in code, either by me or others, arise from having to do something supposedly automatic (like init, sync and the like) manually. Because you reinvent the wheel so many times that some of them are defective. Instead, well-documented implicit behaviour _avoids_ bugs, since: * you don't have to care about a few menial chores the compiler/runtime env will handle for you; * If an implicit mechanism comes into the language, chances are that it was better tested than you'd be ever able to do on your own; * since you have less code to write, you don't get distracted by various chores and produce clearer, leaner code. The side effect is that bugs have less places to hide in. From this, I disagree with you about PBR or other implicit behaviour raising the probability of bug occurrences in code. CChris