> So you consider VB to be more readable than Pascal
> because of the Begin . . . End statements?
I do find it more readable, but that isn't the main reason. I think it is
less confusing to newbies. Every time I train a new programmer code like
this really throws them:
if x = 1 then
try
// some code here
finally
// some more code
end;
or
for x := 1 to 10 do
if x = 5 then
s := '12'
else
begin
// more code
end;
The optional nature of begin and end clauses in Pascal/Delphi combined with
some commands not needing a begin is confusing to many a new programmer into
this language. It would just be easier if it looked like this:
if x = 1 then
try
// some code here
finally
// some more code
end;
end;
or
for x := 1 to 10 do
if x = 5 then
s := 12
else
// more code
end;
end;
I find it hard to believe many would argue with it personally. It just
makes sense that every conditional/branch statement should have an end or
always have a begin/end.
> As for the "good CASE/EVALUATE statement", again, you are obviously
> unfamiliar with Delphi in this regard. Delphi has several variations on
I am very familiar with Delphi and you don't need to try and insult me to
get your point across.
if (s = 'test) and (sWork = 'Blah') then
begin
// some code
end
else
if (s = 'test2) and (sWork = 'Blah2') then
begin
// some code
end
else
begin
// some code
end;
isn't as easy to write and read as a SQL CASE or COBOL Evaluate.
EVALUATE TRUE
WHEN s = 'test' and sWork = 'blah'
// some code
WHEN s = 'test2' and sWork = 'blah2'
// some code
ELSE
// some code
END
you can also do this
EVALUATE s
WHEN 'test'
// some code
WHEN 'test2'
// some code
ELSE
// some code
END
SQL has a very similar statement and most 4th gen languages support strings
in their case statement not just integers.
> And, you're whining about having to "forward define everything"?
> So, you don't write organized and thought out code, you just
> want to write "stream of consciousness" code.
> Golly, it must be so demanding to actually
> ORGANIZE your thoughts before you start writing.
Once again insults are the first response of a weak mind. As I don't think
you are stupid, I think we can refrain from going into name calling and
accusations here. I actually write very organized code and adhere to a very
throrough standard on variable naming and code structure that has been
documented and must be followed by all devs in my shop.
That said every Delphi person I know that has converted to .Net has praised
the fact that the code is the class so instead of having to keep everything
defined twice you only have to do it once. If you have used .net code, you
will understand what I mean and I find it hard to believe you don't find it
a time saver and it isn't any less readable.
> Forward declarations of functions and procedures makes it
> easier to know what all is in the bloody unit/module. too.
If you want to document your class methods and variables, nothing is
stopping you from doing it in comments I just don't like being forced to do
it. Honestly, I would settle for the auto procedure create keystroke to
create default parameters in the type and not forget about them and generate
compile errors.
> on of variables/constants and, therefore, it is easier to figure out what
> their scope is
In .net the scope is in the class you create the variable just like a unit.
There are no global variables and I like that concept.
> What is your problem with single-quotes? ANSI Standard SQL
> uses them, as do most other "real" languages.
This is actually one of the problems at least for me. Single quote or tick
is often used as a plural such as "This is Bob's Car". In double quote land
like most other programming languages, it is easy to write and read. In
Delphi, I find myself constantly doubling up on ticks. It is a minor
nitpick, but after writing in a few dozen languages I find that double ticks
is just easier to write and read.
> As for the colon equal/equal thing . . . do you really have so little time
> that the extra key stroke is going to be a strain.
Again this is a newbie thing. The compiler should be able to figure out
what I wanted to do like VB does. It is just another language oddity that
has to be explained to newbs. Once you get used to it, no big deal but why
should we have to get used to it?
> As for the circular reference problem, it has been over
> 9 years since I ran into that problem in my code.
I run into from time to time, but again this is one of those why should we
need to figure it out kinda things. Having two uses clause was a fairly
lazy way to get around the problem.
> Maybe it is because I have learned to write structured/object
> oriented code. I could also be that I have learned to use the power
> of a real object oriented language rather than a glorified interpreted
> language.
Well .net is a real language and is very powerful and truth is VB.net is
easier to read and learn than Delphi. Delphi isn't perfect and these are
the things that annoy me about it.
So far all I have heard is get used to it, which I have but it still doesn't
make me wish I could build a better mouse trap. Had I been given a C#
design early on, I would have made these changes to the Pascal language,
called it some new language and gone forward. I think Pascal is an easy
read with a few quirks that when tweaked give it the readability of VB with
the power of C.
> What was that crack about J#? You know, I have been at 3 companies that
> decided to replace Delphi with either VB or Java or C# or J# . . . and
> every one of them have backed off from that because Delphi not only had
> more power but the results were developed faster and RAN faster.
My crack was actually in Delphi's favor. Line noise comes from the modem
days when you would be typing a line and a bad connection would create a
bunch of random characters such as:
Hey, how are y)&*)&jlkj08)*)*)*}{}{}ou doing?
Often I find other languages such as Java, C#, C, etc hard to read because
programmers get lazy and obfuscate code. In turn, this can kinda look like
line nose.
> Now, if you want to talk about a REALLY powerful language,
> take a look at PL/I . . . it is the first language to ever use pointers,
> by the way. ;-)
I think assembly may hold this honor in an odd form, but I never messed with
PL/I. I started in COBOL, CICS, JCL and assembly then moved to C then to
Delphi and now to .net with a few contract jobs in Java and VB classic
(enough to know I really dislike both).
__________________________________________________
Delphi-Talk mailing list -> [email protected]
http://www.elists.org/mailman/listinfo/delphi-talk