Forgot your password?
typodupeerror

Comment: Re: verbosity (Score 1) 136

by Robert Cailliau (#42779797) Attached to: Can Proprietary Language Teams Succeed By Going Open Source?

I completely agree that verbosity should be avoided, and so should the use of special characters.
Syntax that needs detailed comments is also not very good.

I much prefer to write

if x<>0 and y/x<z then exit repeat

than

if ( (x!=0) && (y/x<z) ) { break; };

The first line looks cleaner to me: fewer special characters.
Note also that the division of y by x will not be tried because LiveCode's "and" operator is specified to skip if its first operand is already false. Many languages fail to tell you what must happen in these cases and then implementations differ.
Finally, how many seasoned programmers still fall into the following trap when something changes and the code now becomes:

if x=0 or x/y<z then exit repeat

but in C-like syntax they then write:

if ( (x=0) && (x/y<z) ) { break; };

forgetting the extra = sign.

Clean syntax does help reduce the debugging time.

Comment: Re:Shortcoming (Score 1) 136

by Robert Cailliau (#42779657) Attached to: Can Proprietary Language Teams Succeed By Going Open Source?

I like the phrase "move back".

COBOL is from 1958 or so, around the same time as FORTRAN and I think after Algol. It is quite a while ago, but do not forget that the syntax of php, javascript, C++ and the like dates back all the way to C, 1969! The major influence on C was the slowness of the teletype equipment on which it had to be typed in. Why still use syntax from those days?

I started writing code and designing programming languages around 1970. Coming across Hypertalk and later LiveCode was simply a revelation. Before, I had trouble reading code even a few weeks after I had written it, unless I added comments like "this set of lines deletes the last character of the files with paths."

In LiveCode that comment can actually be your code! And even six months from now I can still understand what it does.

Nevertheless, LiveCode is strict, and the results of statements are very well defined unlike many other languages.

(BTW: the "t" in tFilesWithPaths is just a programmer's way of indicating the variable is a "t"emporary variable, not a global. It is not necessary, even though it might please my Yorkshire wife)

Eureka! -- Archimedes

Working...