Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.compilers > #2550
| From | gah4@u.washington.edu |
|---|---|
| Newsgroups | comp.compilers |
| Subject | Re: Spell checking identifiers |
| Date | 2020-07-10 13:17 -0700 |
| Organization | Compilers Central |
| Message-ID | <20-07-004@comp.compilers> (permalink) |
| References | <20-06-010@comp.compilers> <20-06-013@comp.compilers> <20-06-017@comp.compilers> <20-07-002@comp.compilers> <20-07-003@comp.compilers> |
On Friday, July 10, 2020 at 8:23:37 AM UTC-7, Thomas Koenig wrote: (snip) > Fortran has a a bit of a similar issue with its C interoperability > feature. > Entities with C binding have global identifiers in Fortran. Fortran > is a case-insensitive laguage, so FooBar and foobar look the same > to Fortran, and you can not have a C binding to both (but either > one would work). Much of this was pretty strange before Fortran added the C interoperability feature. Mostly, Fortran compilers did what they did, and the C names had to match. That included adding underscore characters sometimes. Now Fortran has BIND(C), and more specifically BIND(C, NAME='cname') where you specify the name as it will be known to C. That name is case sensitive (at least if the underlying linker supports it), and might be completely unrelated to the Fortran name. BIND(C) without NAME= generates lower case, which is usual for C. I believe IBM PL/I compilers have had the ability to call other (presumably IBM) languages, with specific keywords. But mostly that was when the IBM linker was (supposed to be) upper case only. VAX/VMS, and I suspect other VMS, has a system, defined along with VAX, for calling routines with other argument passing conventions, with %VAL(), %REF(), and %DESCR(), or call by value, reference, and descriptor. I am not sure what they do about case, but many VMS names have $ in them, so that is allowed. [Back in the day, IBM PL/I could call Fortran and COBOL but the procedure names are all eight EBCDIC characters. The extra stuff involves mapping datatypes. The current PL/I manuals say it handles many different character encodings like UTF-16. -John]
Back to comp.compilers | Previous | Next — Previous in thread | Next in thread | Find similar
Spell checking identifiers Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2020-06-24 01:38 +0800
Re: Spell checking identifiers Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2020-06-24 03:56 +0800
Re: Spell checking identifiers gah4@u.washington.edu - 2020-06-23 16:51 -0700
Re: Spell checking identifiers Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2020-06-25 22:33 +0800
Re: Spell checking identifiers "Derek M. Jones" <derek@_NOSPAM_knosof.co.uk.invalid> - 2020-06-24 11:02 +0100
Re: Spell checking identifiers gah4@u.washington.edu - 2020-06-24 18:28 -0700
Re: Spell checking identifiers mac <acolvin@efunct.com> - 2020-07-09 16:07 +0000
Re: Spell checking identifiers Thomas Koenig <tkoenig@netcologne.de> - 2020-07-10 07:12 +0000
Re: Spell checking identifiers gah4@u.washington.edu - 2020-07-10 13:17 -0700
Re: Spell checking identifiers Kaz Kylheku <937-053-0959@kylheku.com> - 2020-06-24 18:12 +0000
Re: Spell checking identifiers Thomas Koenig <tkoenig@netcologne.de> - 2020-06-24 20:08 +0000
Re: Spell checking identifiers Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2020-06-25 21:44 +0800
Re: Spell checking identifiers gautier_niouzes@hotmail.com - 2020-06-24 13:08 -0700
csiph-web