English binary logic operators
Craig Black
cblack at ara.com
Mon Nov 27 07:34:40 PST 2006
"Don Clugston" <dac at nospam.com.au> wrote in message
news:ek71e0$1ako$1 at digitaldaemon.com...
> antonio wrote:
>> Ary Manzana wrote:
>>> Bill Baxter escribió:
>>>> David Qualls wrote:
>>>>> I just compiled my first D function (adapted from C), and had to
>>>>> replace all my 'and' 'or' and 'not's with the arcane &&, ||, and !
>>>>> from prehistoric C to get it to compile.
>>>>>
>>>>> iso646.h has been a part of C for several years. Perl, C++ and
>>>>> possibly other languages have all adopted 'and', 'or', and 'not'
>>>>> as part of their grammar.
>>>>>
>>>>> I write software that will be maintained by non-programmers
>>>>> (mathematicians, who would prefer that I use Fortran). Lots of
>>>>> funny symbols in source code (like && || !) make it difficult to
>>>>> read for the non-immersed (ah, who am I kidding, I even have
>>>>> trouble reading it now and then).
>>>>>
>>>>> Is there any future to D incluing the logical operators in
>>>>> English, as opposed to &!|%'ish? (I didn't mention it, but 'mod'
>>>>> might also be a good (easy for non-programmers to understand)
>>>>> substitute for '%'.)
>>>>>
>>>>> David
>>>>
>>>> +1
>>>>
>>>> After 20 years of C/C++ my use of && and || was pretty instinctual, but
>>>> after just a few months of working with Python on the side I found I
>>>> started typing 'and' and 'or' without thinking about it. It makes
>>>> complicated expressions more readable and would fit in great with D's
>>>> more "modern" look.
>>>>
>>>> As noted before, I'm also in favor of allowing 'in' to replace ';' in
>>>> foreach statements.
>>>>
>>>> --bb
>>>
>>> I guess the main reason to stick with symbols is some compatibility with
>>> C/C++ source code.
>>>
>>> Anyway, I also like the idea of words instead of symbols. You benefit
>>> from readability and it's also much more simpler to type (i.e. you don't
>>> you shift or look in a new keyboar for them).
>> Well..
>>
>> I'm an spanish programmer:
>>
>> My code is written using Spanish terms like "valor" vs "value",
>> "irSiguiente()" vs "goNext()"...
>>
>> the best of algebra symbology is the language independence:
>>
>> [x..y] vs "Between x and y"
>> x < y vs "x less than y"
>> a.b vs "the b of a" (Director Lingo used this sintax)
>> (a)b vs "cast b to a"
>> a = b vs "set value of a to value of b"
>> a == b vs "a equals to b"
>> { stamens } vs "begin stamens end"
>> I'm forced to use the basic english programming syntax: if/else,
>> while, for, foreach, public, private, protected,.... PLEASE: STOP
>> IMPOSING ENGLISH TO THE WORLD... you are not the only one programming
>> here.
>
> I've got a lot of sympathy to this. I'm really surprised that I don't hear
> this view more often.
> I'm currently maintaining some code that was written in Italian, modified
> in German, and now there's some English. It's a pig's breakfast. But
> still...
>
> My feeling is... do not program in a language which you are not fluent in.
> I prefer to try to read Italian written by a native speaker, than a
> garbled attempt at English -- it's horrible to read code that was written
> by someone who was putting more energy into translation, than into
> thinking about their programming problem.
>
> In the open-source Fast Fourier Transform project (www.fftw.org), there's
> a file with code written in Latin.
> :->
I suppose Latin would be great if you want language neutrality. Might be
politically correct, but not very practical. I hate to be the bigot here,
but let's face it. As far as international languages go, English is a
standard. Sorry, but it's not my fault. It's just the way it is.
However, if I had it my way we would all be speaking a simpler language. I
hate English. A written language should be completely phonetic and
orthogonal. There shouldn't be silent letters, myriads of exceptions to
rules of thumb, and ridiculous non-phonetic pronunciations.
Back to the topic, adding "and" and "or" wouldn't replace the symbolic
representation. The symbolic representation would still be valid, so I see
this as a benign addition to D. It seems it would make a lot of people
happy, and would be easy to do, so I am not opposed to it.
-Craig
More information about the Digitalmars-d-learn
mailing list