[Info-vax] VAX Macro to C conversion

Dave Froble davef at tsoft-inc.com
Thu Jul 11 11:09:06 EDT 2019


On 7/11/2019 10:17 AM, Bill Gunshannon wrote:
> On 7/10/19 10:03 PM, Dave Froble wrote:
>> On 7/10/2019 8:20 PM, Bill Gunshannon wrote:
>>> On 7/10/19 5:22 PM, Dave Froble wrote:
>>>> On 7/10/2019 2:10 PM, Bill Gunshannon wrote:
>>>>> On 7/10/19 11:40 AM, Dave Froble wrote:
>>>>>> On 7/10/2019 9:34 AM, Bill Gunshannon wrote:
>>>>>>>
>>>>>>>> * no string type
>>>>>>>
>>>>>>> So what?  What's so great about a string type?  Fortran
>>>>>>> didn't have it until 77.  Pascal didn't have it until UCSD.
>>>>>>
>>>>>> Strings are vital in some applications.  Perhaps not in number
>>>>>> crunching.  Try a name and address without strings.  Maybe you'll be
>>>>>> cleaver enough to use GPS coordinates for the address, but for the
>>>>>> name?
>>>>>>
>>>>>> Try writing a compiler without strings.
>>>>>
>>>>> Nobody said there shouldn't be strings.  You are free to declare
>>>>> any type pf string you want in C.  null-terminated, descriptor,
>>>>> counted, whatever you want.  Decide what is best for your use
>>>>> and create it.  The programmer is tied to only one type of string.
>>>>>
>>>>>>
>>>>>>>> * non type safe enum
>>>>>>>> * lots of old and bad design in standard RTL
>>>>>>>> * lots of undefined and implementation specific behavior
>>>>>>>
>>>>>>> Even Ada has that.
>>>>>>>
>>>>>>>> makes it much easier to write code that result in bad runtime
>>>>>>>> error than most other common languages of today.
>>>>>>>
>>>>>>> Do I really need to go on?  Stop blaming a language for the
>>>>>>> incompetence of the programmer.
>>>>>>
>>>>>> Of course a programmer must be competent, but, why not make things
>>>>>> easier?
>>>>>
>>>>> Because frequently (most times) "making it easier" involves
>>>>> hamstringing
>>>>> the programmer.
>>>>
>>>> Sorry Bill, I got to call BS on that.
>>>>
>>>> As an example, yes, string descriptors can be used in C.  But as far
>>>> as I know, which isn't much, the programmer must set up the
>>>> descriptors. However, in Basic, it's not required to declare a string,
>>>> just use it, and it's there.  Now, how does this case of "easier"
>>>> hamstring the programmer?
>>>>
>>>
>>> If the string is defined in a certain way, like it is in BASIC,
>>> your hamstrung if you want to use some other form of string.  If
>>> you wanted to pass a null-terminated string from BASIC to some
>>> other language, how would you do it?
>>>
>>> bill
>>>
>>>
>>
>> Piece of cake ...
>>
>> Have a fixed length string as a buffer, set it equal to the string +
>> Chr$(0%), and pass it by the required method, By Ref, By Value, or
>> even By Desc.
>>
>> Next ???
>>
>>
>
> And, as with so many other languages, that only works with one
> particular version of the language.
>
> bill
>

I consider DEC's various versions of Basic, Basic+, BP2, VAX Basic, DEC 
Basic, and such to be Basic.  All others are imitations.  Your opinion 
may be different.

Since I work mostly with VMS, that's my reality.

And for the above solution, it's a bit safer, but any dynamic string 
will usually work.

-- 
David Froble                       Tel: 724-529-0450
Dave Froble Enterprises, Inc.      E-Mail: davef at tsoft-inc.com
DFE Ultralights, Inc.
170 Grimplin Road
Vanderbilt, PA  15486



More information about the Info-vax mailing list