ToM_tOm wrote:
>
> C++ is not at all "anti-rust". By that, I mean that it's very easy
> to become rusty at it, and once you do, you're perplexed looking at
> all the strange syntax!
The technical term would be that C++ is not "memorable".
But memorability means different things to different people...
>
> SetPointer p_k = AddressOf( k )
>
> which we English speaking humans can understand very easily!
And what about non-English-speaking humans? English is only
the first language of 9% of the world's population, and that
is declining.
Would you really have had any better luck with:
FijeLaDireccion p_k = IndicadorDe( k )
or perhaps even
设置尖 p_k = 地址( k )
which is about as sensible as your code would look to a Chinaman.
> I'm not all suggesting that the language should be dumbed-downed
> or deficienized
It would be helpful if you used actual English words
> (as is the case with VB), but I think it would be helpful if
> actual English words were used in the place of symbols.
Why then did you not suggest:
SetPointer p_k Equals AddressOf OpenBracket k CloseBracket
Or is it only certain symbols that are not very memorable?
I, for one, find "&" more memorable than "k" and "p_k".
My opinion: usability is more important than memorability, for
a programming language. Once I've learned C (or once you have
applied rust-killer to your brain), it is more productive to
work with short symbols than with long words.
> The whole "alien language" aspect is what makes C++ so daunting
> for beginners. To a person who doesn't know C++, or who is rusty,
> a C++ source code file looks like horribly complex gobledygook!
Be glad you've never tried to learn Perl.
> Little do they know though that we C++ programmers read through it
> as easy as our native language... just so long as we're not rusty!
Nobody ever gets rusty at their native language.
> Because we use symbols in C++, if we go a good deal of time without
> using it, we become horribly rusty.
I don't. Buy a C++ book and learn it a bit better!
> Maybe someone out there has made a parser to change symbols into
> words and vice versa?
#define is your friend. (But don't expect anybody else to
want to work on your code).