Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

Never test for an error condition you don't know how to handle. -- Steinbach


computers / comp.os.vms / Re: BASIC and AST routines

SubjectAuthor
* BASIC and AST routinesJohn Doppke
+- Re: BASIC and AST routinesJonathan
+* Re: BASIC and AST routinesDave Froble
|`* Re: BASIC and AST routinesJohn Doppke
| `* Re: BASIC and AST routinesSimon Clubley
|  `- Re: BASIC and AST routinesDave Froble
+- Re: BASIC and AST routinesVAXman-
+- Re: BASIC and AST routinesCraig A. Berry
`* Re: BASIC and AST routinesBob Gezelter
 `* Re: BASIC and AST routinesChris Townley
  `* Re: BASIC and AST routinesBob Gezelter
   `* Re: BASIC and AST routinesDave Froble
    +* Re: BASIC and AST routinesBob Gezelter
    |+* Re: BASIC and AST routinesDave Froble
    ||`- Re: BASIC and AST routinesSimon Clubley
    |`* Re: BASIC and AST routinesVAXman-
    | `- Re: BASIC and AST routinesNeil Rieck
    +* Re: BASIC and AST routinesStephen Hoffman
    |`- Re: BASIC and AST routinesDave Froble
    `* Re: BASIC and AST routinesSimon Clubley
     `* Re: BASIC and AST routinesVAXman-
      +* Re: BASIC and AST routinesSimon Clubley
      |+* Re: BASIC and AST routinesArne Vajhøj
      ||+* Re: BASIC and AST routinesSimon Clubley
      |||+* Re: BASIC and AST routinesArne Vajhøj
      ||||+* Re: BASIC and AST routinesDave Froble
      |||||`- Re: BASIC and AST routinesArne Vajhøj
      ||||`* Re: BASIC and AST routinesSimon Clubley
      |||| `* Re: BASIC and AST routinesArne Vajhøj
      ||||  +* Re: BASIC and AST routinesSimon Clubley
      ||||  |`* Re: BASIC and AST routinesArne Vajhøj
      ||||  | `* Re: BASIC and AST routinesSimon Clubley
      ||||  |  `* Re: BASIC and AST routinesArne Vajhøj
      ||||  |   `* Re: BASIC and AST routinesSimon Clubley
      ||||  |    +* Re: BASIC and AST routinesArne Vajhøj
      ||||  |    |+- Re: BASIC and AST routinesBill Gunshannon
      ||||  |    |`* Re: BASIC and AST routinesChris Scheers
      ||||  |    | `* Re: BASIC and AST routinesAndrew Commons
      ||||  |    |  +- Re: BASIC and AST routinesAndrew Commons
      ||||  |    |  `* Re: BASIC and AST routinesCraig A. Berry
      ||||  |    |   `- Re: BASIC and AST routinesAndrew Commons
      ||||  |    +* Re: BASIC and AST routinesHunter Goatley
      ||||  |    |`- Re: BASIC and AST routinesChris Townley
      ||||  |    +- Re: BASIC and AST routinesVAXman-
      ||||  |    `* Re: BASIC and AST routinesSimon Clubley
      ||||  |     `- Re: BASIC and AST routinesVAXman-
      ||||  `- Re: BASIC and AST routinesVAXman-
      |||`- Re: BASIC and AST routinesVAXman-
      ||`- Re: BASIC and AST routinesDave Froble
      |+- Re: BASIC and AST routinesVAXman-
      |`* Re: BASIC and AST routinesDave Froble
      | `- Re: BASIC and AST routinesArne Vajhøj
      `* Re: BASIC and AST routinesVAXman-
       +* Re: BASIC and AST routinesSimon Clubley
       |+* Re: BASIC and AST routinesArne Vajhøj
       ||+* Re: BASIC and AST routinesSimon Clubley
       |||`- Re: BASIC and AST routinesArne Vajhøj
       ||`* Re: BASIC and AST routinesVAXman-
       || +- Re: BASIC and AST routinesSimon Clubley
       || `- Re: BASIC and AST routinesVAXman-
       |`* Re: BASIC and AST routinesDave Froble
       | `* Re: BASIC and AST routinesSimon Clubley
       |  `* Re: BASIC and AST routinesArne Vajhøj
       |   `* Re: BASIC and AST routinesBob Gezelter
       |    +- Re: BASIC and AST routinesArne Vajhøj
       |    `* Re: BASIC and AST routinesDave Froble
       |     `* Re: BASIC and AST routinesJohnny Billquist
       |      `- Re: BASIC and AST routinesDave Froble
       `* Re: BASIC and AST routinesVAXman-
        +* Re: BASIC and AST routinesSimon Clubley
        |`- Re: BASIC and AST routinesDave Froble
        `- Re: BASIC and AST routinesVAXman-

Pages:123
Re: BASIC and AST routines

<00B6C430.49D06BBF@SendSpamHere.ORG>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18887&group=comp.os.vms#18887

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!aioe.org!pr9o9uw/KLhPSFYv2ok3sg.user.46.165.242.75.POSTED!not-for-mail
From: VAXm...@SendSpamHere.ORG
Newsgroups: comp.os.vms
Subject: Re: BASIC and AST routines
Date: Wed, 24 Nov 2021 01:22:23 GMT
Organization: c.2021 Brian Schenkenberger. Prior employers of copyright holder and their agents must first obtain written permission to copy this posting.
Message-ID: <00B6C430.49D06BBF@SendSpamHere.ORG>
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com> <d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com> <sn6tes$s80$1@dont-email.me> <08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com> <sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me> <00B6C348.F74CDC7B@SendSpamHere.ORG>
Reply-To: VAXman- @SendSpamHere.ORG
Injection-Info: gioia.aioe.org; logging-data="41670"; posting-host="pr9o9uw/KLhPSFYv2ok3sg.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
X-Notice: Filtered by postfilter v. 0.9.2
 by: VAXm...@SendSpamHere.ORG - Wed, 24 Nov 2021 01:22 UTC

In article <snjcd1$9hn$2@dont-email.me>, Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> writes:
>On 2021-11-22, VAXman- @SendSpamHere.ORG <VAXman-@SendSpamHere.ORG> wrote:
>> In article <sngp1p$aud$2@dont-email.me>, Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> writes:
>>>On 2021-11-19, Dave Froble <davef@tsoft-inc.com> wrote:
>>>>
>>>> I'm going to confess to curiosity. Why are R0, R1, SP, and PC passed to an AST
>>>> routine?
>>>>
>>>
>>>Because it's another example of VMS functionality being implemented
>>>at way too low an abstraction level because of the need to support
>>>Macro-32 as an application programming language.
>>
>> BULLSHIT! If you believe that's true, please provide an illustrating example.
>> I'll be waiting...
>>
>
>That VMS API passes in a stack pointer, a PC and what were originally
>two architecture-specific registers.

That doesn't answer your aspersions WRT Macro-32. Try, do try again.
I'll be waiting. Also, please tell me about this stack pointer you've
now claimed to be passed along too.

>That kind of information simply would not be exposed at application
>code level in a modern version of that API as it would (rightly) be
>treated as an implementation specific detail that would be handled
>by the compiler.

Oh, please explain then how are ASTs handled in *ix? <LOL>

>That information is only needed because the lowest supported application
>language on VMS is Macro-32 and not C (or another comparable low-level
>language).

You're slinging your BULLSHIT yet again. Macro-32 has no inherent need
or want to know R0, R1, the PC at AST delivery or the PS/PSL. As I have
requested previously, if you want to be slinging manure in here, please
show us your shovel.

--
VAXman- A Bored Certified VMS Kernel Mode Hacker VAXman(at)TMESIS(dot)ORG

I speak to machines with the voice of humanity.

Re: BASIC and AST routines

<00B6C430.6AA31234@SendSpamHere.ORG>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18888&group=comp.os.vms#18888

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!aioe.org!pr9o9uw/KLhPSFYv2ok3sg.user.46.165.242.75.POSTED!not-for-mail
From: VAXm...@SendSpamHere.ORG
Newsgroups: comp.os.vms
Subject: Re: BASIC and AST routines
Date: Wed, 24 Nov 2021 01:23:18 GMT
Organization: c.2021 Brian Schenkenberger. Prior employers of copyright holder and their agents must first obtain written permission to copy this posting.
Message-ID: <00B6C430.6AA31234@SendSpamHere.ORG>
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com> <d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com> <sn6tes$s80$1@dont-email.me> <08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com> <sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me> <00B6C348.F74CDC7B@SendSpamHere.ORG> <snjcd1$9hn$2@dont-email.me>
Reply-To: VAXman- @SendSpamHere.ORG
Injection-Info: gioia.aioe.org; logging-data="41670"; posting-host="pr9o9uw/KLhPSFYv2ok3sg.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
X-Notice: Filtered by postfilter v. 0.9.2
 by: VAXm...@SendSpamHere.ORG - Wed, 24 Nov 2021 01:23 UTC

In article <619d35db$0$706$14726298@news.sunsite.dk>, =?UTF-8?Q?Arne_Vajh=c3=b8j?= <arne@vajhoej.dk> writes:
>On 11/23/2021 1:37 PM, Simon Clubley wrote:
>> On 2021-11-22, VAXman- @SendSpamHere.ORG <VAXman-@SendSpamHere.ORG> wrote:
>>> In article <sngp1p$aud$2@dont-email.me>, Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> writes:
>>>> On 2021-11-19, Dave Froble <davef@tsoft-inc.com> wrote:
>>>>>
>>>>> I'm going to confess to curiosity. Why are R0, R1, SP, and PC passed to an AST
>>>>> routine?
>>>>>
>>>>
>>>> Because it's another example of VMS functionality being implemented
>>>> at way too low an abstraction level because of the need to support
>>>> Macro-32 as an application programming language.
>>>
>>> BULLSHIT! If you believe that's true, please provide an illustrating example.
>>> I'll be waiting...
>>
>> That VMS API passes in a stack pointer, a PC and what were originally
>> two architecture-specific registers.
>>
>> That kind of information simply would not be exposed at application
>> code level in a modern version of that API as it would (rightly) be
>> treated as an implementation specific detail that would be handled
>> by the compiler.
>>
>> That information is only needed because the lowest supported application
>> language on VMS is Macro-32 and not C (or another comparable low-level
>> language).
>
>What does the Macro-32 application developers need those
>arguments for that the C application developers does not need
>them for?

Manure slinging, of course.

--
VAXman- A Bored Certified VMS Kernel Mode Hacker VAXman(at)TMESIS(dot)ORG

I speak to machines with the voice of humanity.

Re: BASIC and AST routines

<00B6C431.A3B78527@SendSpamHere.ORG>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18889&group=comp.os.vms#18889

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!aioe.org!pr9o9uw/KLhPSFYv2ok3sg.user.46.165.242.75.POSTED!not-for-mail
From: VAXm...@SendSpamHere.ORG
Newsgroups: comp.os.vms
Subject: Re: BASIC and AST routines
Date: Wed, 24 Nov 2021 01:32:04 GMT
Organization: c.2021 Brian Schenkenberger. Prior employers of copyright holder and their agents must first obtain written permission to copy this posting.
Message-ID: <00B6C431.A3B78527@SendSpamHere.ORG>
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com> <d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com> <sn6tes$s80$1@dont-email.me> <08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com> <sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me> <00B6C348.F74CDC7B@SendSpamHere.ORG> <snjcd1$9hn$2@dont-email.me> <619d35db$0$706$14726298@news.sunsite.dk> <snje3g$9hn$4@dont-email.me>
Reply-To: VAXman- @SendSpamHere.ORG
Injection-Info: gioia.aioe.org; logging-data="41670"; posting-host="pr9o9uw/KLhPSFYv2ok3sg.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
X-Notice: Filtered by postfilter v. 0.9.2
 by: VAXm...@SendSpamHere.ORG - Wed, 24 Nov 2021 01:32 UTC

In article <619d417a$0$699$14726298@news.sunsite.dk>, =?UTF-8?Q?Arne_Vajh=c3=b8j?= <arne@vajhoej.dk> writes:
>On 11/23/2021 2:06 PM, Simon Clubley wrote:
>> On 2021-11-23, Arne Vajhøj <arne@vajhoej.dk> wrote:
>>> On 11/23/2021 1:37 PM, Simon Clubley wrote:
>>>> On 2021-11-22, VAXman- @SendSpamHere.ORG <VAXman-@SendSpamHere.ORG> wrote:
>>>>> In article <sngp1p$aud$2@dont-email.me>, Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> writes:
>>>>>> On 2021-11-19, Dave Froble <davef@tsoft-inc.com> wrote:
>>>>>>> I'm going to confess to curiosity. Why are R0, R1, SP, and PC passed to an AST
>>>>>>> routine?
>>>>>>
>>>>>> Because it's another example of VMS functionality being implemented
>>>>>> at way too low an abstraction level because of the need to support
>>>>>> Macro-32 as an application programming language.
>>>>>
>>>>> BULLSHIT! If you believe that's true, please provide an illustrating example.
>>>>> I'll be waiting...
>>>>
>>>> That VMS API passes in a stack pointer, a PC and what were originally
>>>> two architecture-specific registers.
>>>>
>>>> That kind of information simply would not be exposed at application
>>>> code level in a modern version of that API as it would (rightly) be
>>>> treated as an implementation specific detail that would be handled
>>>> by the compiler.
>>>>
>>>> That information is only needed because the lowest supported application
>>>> language on VMS is Macro-32 and not C (or another comparable low-level
>>>> language).
>>>
>>> What does the Macro-32 application developers need those
>>> arguments for that the C application developers does not need
>>> them for?
>>
>> You miss the point Arne.
>>
>> If C was the lowest level supported language then the compiler would
>> simply have a pragma or function attribute that marked it as an AST
>> routine so that the compiler would generate the required code (or not
>> generate troublesome code sequences) as required.
>>
>> This happens all the time with C language interrupt handlers in some
>> embedded environments for example.
>>
>> The SP/PC/R0/R1 parameters are implementation details that the person
>> writing the AST routine should never see or have to deal with.
>
>????
>
>There are two questions here.
>
>1) How to deal with side effects from those arguments.
>
>Basic apparently has a problem. It could be fixed like you describe
>for C. John Reagan already confirmed that.

I don't see why BASIC should have any issue either.

>Neither C nor Macro-32 has the need for such a fix. They just
>don't access the argument and they are good.

Correct. Use them on a need to know basis.

>2) Why are those arguments there?
>
>It is not obvious to me why Macro-32 code would want to use them
>any more than C or Basic code.

Precisely! However, according to our manure slinger in chief, ASTs are
delivered with those extra parameters' values because Macro-32 would be
spanking the monkey in some dark corner without them.

--
VAXman- A Bored Certified VMS Kernel Mode Hacker VAXman(at)TMESIS(dot)ORG

I speak to machines with the voice of humanity.

Re: BASIC and AST routines

<snk4r1$csq$1@dont-email.me>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18890&group=comp.os.vms#18890

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: dav...@tsoft-inc.com (Dave Froble)
Newsgroups: comp.os.vms
Subject: Re: BASIC and AST routines
Date: Tue, 23 Nov 2021 20:34:21 -0500
Organization: A noiseless patient Spider
Lines: 50
Message-ID: <snk4r1$csq$1@dont-email.me>
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com>
<d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com>
<sn6tes$s80$1@dont-email.me>
<08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com>
<sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me>
<00B6C348.F74CDC7B@SendSpamHere.ORG> <snjcd1$9hn$2@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Wed, 24 Nov 2021 01:34:25 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="59710b674ca858caa9e12dc9e3419d94";
logging-data="13210"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+dJsS+KaqxpHna96dYXVr4q3QHAm9CDIQ="
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:45.0) Gecko/20100101
Thunderbird/45.8.0
Cancel-Lock: sha1:+lpGQF4IELbMaAOsJJUMg5sq04s=
In-Reply-To: <snjcd1$9hn$2@dont-email.me>
 by: Dave Froble - Wed, 24 Nov 2021 01:34 UTC

On 11/23/2021 1:37 PM, Simon Clubley wrote:
> On 2021-11-22, VAXman- @SendSpamHere.ORG <VAXman-@SendSpamHere.ORG> wrote:
>> In article <sngp1p$aud$2@dont-email.me>, Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> writes:
>>> On 2021-11-19, Dave Froble <davef@tsoft-inc.com> wrote:
>>>>
>>>> I'm going to confess to curiosity. Why are R0, R1, SP, and PC passed to an AST
>>>> routine?
>>>>
>>>
>>> Because it's another example of VMS functionality being implemented
>>> at way too low an abstraction level because of the need to support
>>> Macro-32 as an application programming language.
>>
>> BULLSHIT! If you believe that's true, please provide an illustrating example.
>> I'll be waiting...
>>
>
> That VMS API passes in a stack pointer, a PC and what were originally
> two architecture-specific registers.
>
> That kind of information simply would not be exposed at application
> code level in a modern version of that API as it would (rightly) be
> treated as an implementation specific detail that would be handled
> by the compiler.
>
> That information is only needed because the lowest supported application
> language on VMS is Macro-32 and not C (or another comparable low-level
> language).
>
> Simon.
>

Ok, but, what is the harm?

Perhaps there are uses for that data. If one doesn't need to use them, ignore
them. No blood, no foul.

Just because something is not "how things should be according to Simon" doesn't
necessarily make that something bad.

Perhaps when using Macro-32 there might be some use. Yes, Macro-32 as a
compiler language sort of sucks. But what's your alternative? Re-write
everything each year, even if it's working as designed and needed?

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

Re: BASIC and AST routines

<snk4sp$csq$2@dont-email.me>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18891&group=comp.os.vms#18891

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: dav...@tsoft-inc.com (Dave Froble)
Newsgroups: comp.os.vms
Subject: Re: BASIC and AST routines
Date: Tue, 23 Nov 2021 20:35:18 -0500
Organization: A noiseless patient Spider
Lines: 47
Message-ID: <snk4sp$csq$2@dont-email.me>
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com>
<d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com>
<sn6tes$s80$1@dont-email.me>
<08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com>
<sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me>
<00B6C348.F74CDC7B@SendSpamHere.ORG> <snjcd1$9hn$2@dont-email.me>
<619d35db$0$706$14726298@news.sunsite.dk>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 24 Nov 2021 01:35:21 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="59710b674ca858caa9e12dc9e3419d94";
logging-data="13210"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+1O30OxcTEKTPAL03n1EdcaJFfGd5cAy8="
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:45.0) Gecko/20100101
Thunderbird/45.8.0
Cancel-Lock: sha1:Yajhbf1AkmBuOWyU3INxE36/jC8=
In-Reply-To: <619d35db$0$706$14726298@news.sunsite.dk>
 by: Dave Froble - Wed, 24 Nov 2021 01:35 UTC

On 11/23/2021 1:41 PM, Arne Vajhøj wrote:
> On 11/23/2021 1:37 PM, Simon Clubley wrote:
>> On 2021-11-22, VAXman- @SendSpamHere.ORG <VAXman-@SendSpamHere.ORG> wrote:
>>> In article <sngp1p$aud$2@dont-email.me>, Simon Clubley
>>> <clubley@remove_me.eisner.decus.org-Earth.UFP> writes:
>>>> On 2021-11-19, Dave Froble <davef@tsoft-inc.com> wrote:
>>>>>
>>>>> I'm going to confess to curiosity. Why are R0, R1, SP, and PC passed to an
>>>>> AST
>>>>> routine?
>>>>>
>>>>
>>>> Because it's another example of VMS functionality being implemented
>>>> at way too low an abstraction level because of the need to support
>>>> Macro-32 as an application programming language.
>>>
>>> BULLSHIT! If you believe that's true, please provide an illustrating example.
>>> I'll be waiting...
>>
>> That VMS API passes in a stack pointer, a PC and what were originally
>> two architecture-specific registers.
>>
>> That kind of information simply would not be exposed at application
>> code level in a modern version of that API as it would (rightly) be
>> treated as an implementation specific detail that would be handled
>> by the compiler.
>>
>> That information is only needed because the lowest supported application
>> language on VMS is Macro-32 and not C (or another comparable low-level
>> language).
>
> What does the Macro-32 application developers need those
> arguments for that the C application developers does not need
> them for?
>
> Arne
>
>

Ya know, that sort of gets back to my question ...

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

Re: BASIC and AST routines

<snk578$elt$1@dont-email.me>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18892&group=comp.os.vms#18892

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: dav...@tsoft-inc.com (Dave Froble)
Newsgroups: comp.os.vms
Subject: Re: BASIC and AST routines
Date: Tue, 23 Nov 2021 20:40:53 -0500
Organization: A noiseless patient Spider
Lines: 77
Message-ID: <snk578$elt$1@dont-email.me>
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com>
<d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com>
<sn6tes$s80$1@dont-email.me>
<08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com>
<sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me>
<00B6C348.F74CDC7B@SendSpamHere.ORG> <snjcd1$9hn$2@dont-email.me>
<619d35db$0$706$14726298@news.sunsite.dk> <snje3g$9hn$4@dont-email.me>
<619d417a$0$699$14726298@news.sunsite.dk>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 24 Nov 2021 01:40:57 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="59710b674ca858caa9e12dc9e3419d94";
logging-data="15037"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX198KBpjSw6jJjLWn8r5MxuuU/eEHet2yiw="
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:45.0) Gecko/20100101
Thunderbird/45.8.0
Cancel-Lock: sha1:oZb+sVhhKMvu38yIp7n9mXF4nAQ=
In-Reply-To: <619d417a$0$699$14726298@news.sunsite.dk>
 by: Dave Froble - Wed, 24 Nov 2021 01:40 UTC

On 11/23/2021 2:31 PM, Arne Vajhøj wrote:
> On 11/23/2021 2:06 PM, Simon Clubley wrote:
>> On 2021-11-23, Arne Vajhøj <arne@vajhoej.dk> wrote:
>>> On 11/23/2021 1:37 PM, Simon Clubley wrote:
>>>> On 2021-11-22, VAXman- @SendSpamHere.ORG <VAXman-@SendSpamHere.ORG> wrote:
>>>>> In article <sngp1p$aud$2@dont-email.me>, Simon Clubley
>>>>> <clubley@remove_me.eisner.decus.org-Earth.UFP> writes:
>>>>>> On 2021-11-19, Dave Froble <davef@tsoft-inc.com> wrote:
>>>>>>> I'm going to confess to curiosity. Why are R0, R1, SP, and PC passed to
>>>>>>> an AST
>>>>>>> routine?
>>>>>>
>>>>>> Because it's another example of VMS functionality being implemented
>>>>>> at way too low an abstraction level because of the need to support
>>>>>> Macro-32 as an application programming language.
>>>>>
>>>>> BULLSHIT! If you believe that's true, please provide an illustrating example.
>>>>> I'll be waiting...
>>>>
>>>> That VMS API passes in a stack pointer, a PC and what were originally
>>>> two architecture-specific registers.
>>>>
>>>> That kind of information simply would not be exposed at application
>>>> code level in a modern version of that API as it would (rightly) be
>>>> treated as an implementation specific detail that would be handled
>>>> by the compiler.
>>>>
>>>> That information is only needed because the lowest supported application
>>>> language on VMS is Macro-32 and not C (or another comparable low-level
>>>> language).
>>>
>>> What does the Macro-32 application developers need those
>>> arguments for that the C application developers does not need
>>> them for?
>>
>> You miss the point Arne.
>>
>> If C was the lowest level supported language then the compiler would
>> simply have a pragma or function attribute that marked it as an AST
>> routine so that the compiler would generate the required code (or not
>> generate troublesome code sequences) as required.
>>
>> This happens all the time with C language interrupt handlers in some
>> embedded environments for example.
>>
>> The SP/PC/R0/R1 parameters are implementation details that the person
>> writing the AST routine should never see or have to deal with.
>
> ????
>
> There are two questions here.
>
> 1) How to deal with side effects from those arguments.
>
> Basic apparently has a problem. It could be fixed like you describe
> for C. John Reagan already confirmed that.

No, Basic does not have any problems. Works just fine. No use for arguments
2,3,4,5, just ignore them.

> Neither C nor Macro-32 has the need for such a fix. They just
> don't access the argument and they are good.

Same with Basic.

> 2) Why are those arguments there?

Now there is the interesting question. Does anyone think they would have been
implemented if there was no use for them? There is or was a reason, even if it
was done in case some future use might need them.

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

Re: BASIC and AST routines

<619d99a4$0$705$14726298@news.sunsite.dk>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18893&group=comp.os.vms#18893

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!aioe.org!news.uzoreto.com!dotsrc.org!filter.dotsrc.org!news.dotsrc.org!not-for-mail
Date: Tue, 23 Nov 2021 20:47:16 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.3.2
Subject: Re: BASIC and AST routines
Content-Language: en-US
Newsgroups: comp.os.vms
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com>
<d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com>
<sn6tes$s80$1@dont-email.me>
<08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com>
<sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me>
<00B6C348.F74CDC7B@SendSpamHere.ORG> <snjcd1$9hn$2@dont-email.me>
<619d35db$0$706$14726298@news.sunsite.dk> <snje3g$9hn$4@dont-email.me>
<619d417a$0$699$14726298@news.sunsite.dk> <snk578$elt$1@dont-email.me>
From: arn...@vajhoej.dk (Arne Vajhøj)
In-Reply-To: <snk578$elt$1@dont-email.me>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 54
Message-ID: <619d99a4$0$705$14726298@news.sunsite.dk>
Organization: SunSITE.dk - Supporting Open source
NNTP-Posting-Host: 02890528.news.sunsite.dk
X-Trace: 1637718436 news.sunsite.dk 705 arne@vajhoej.dk/68.9.63.232:62264
X-Complaints-To: staff@sunsite.dk
 by: Arne Vajhøj - Wed, 24 Nov 2021 01:47 UTC

On 11/23/2021 8:40 PM, Dave Froble wrote:
> On 11/23/2021 2:31 PM, Arne Vajhøj wrote:
>> On 11/23/2021 2:06 PM, Simon Clubley wrote:
>>> On 2021-11-23, Arne Vajhøj <arne@vajhoej.dk> wrote:
>>>> On 11/23/2021 1:37 PM, Simon Clubley wrote:
>>>>> That information is only needed because the lowest supported
>>>>> application
>>>>> language on VMS is Macro-32 and not C (or another comparable low-level
>>>>> language).
>>>>
>>>> What does the Macro-32 application developers need those
>>>> arguments for that the C application developers does not need
>>>> them for?
>>>
>>> You miss the point Arne.
>>>
>>> If C was the lowest level supported language then the compiler would
>>> simply have a pragma or function attribute that marked it as an AST
>>> routine so that the compiler would generate the required code (or not
>>> generate troublesome code sequences) as required.
>>>
>>> This happens all the time with C language interrupt handlers in some
>>> embedded environments for example.
>>>
>>> The SP/PC/R0/R1 parameters are implementation details that the person
>>> writing the AST routine should never see or have to deal with.
>>
>> ????
>>
>> There are two questions here.
>>
>> 1) How to deal with side effects from those arguments.
>>
>> Basic apparently has a problem. It could be fixed like you describe
>> for C. John Reagan already confirmed that.
>
> No, Basic does not have any problems.  Works just fine.  No use for
> arguments 2,3,4,5, just ignore them.

True. But they need to be declared. That was the observation that
started this thread.

BTW, I think it was Hoff not John Reagan that talked about a
keyword to "hide" those arguments. Mea culpa.

>> Neither C nor Macro-32 has the need for such a fix. They just
>> don't access the argument and they are good.
>
> Same with Basic.

But in those language you do not even need to declare them.

Arne

Re: BASIC and AST routines

<619d9a4b$0$705$14726298@news.sunsite.dk>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18894&group=comp.os.vms#18894

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!news.szaf.org!fu-berlin.de!dotsrc.org!filter.dotsrc.org!news.dotsrc.org!not-for-mail
Date: Tue, 23 Nov 2021 20:50:03 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.3.2
Subject: Re: BASIC and AST routines
Content-Language: en-US
Newsgroups: comp.os.vms
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com>
<d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com>
<sn6tes$s80$1@dont-email.me>
<08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com>
<sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me>
<00B6C348.F74CDC7B@SendSpamHere.ORG> <snjcd1$9hn$2@dont-email.me>
<snk4r1$csq$1@dont-email.me>
From: arn...@vajhoej.dk (Arne Vajhøj)
In-Reply-To: <snk4r1$csq$1@dont-email.me>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 36
Message-ID: <619d9a4b$0$705$14726298@news.sunsite.dk>
Organization: SunSITE.dk - Supporting Open source
NNTP-Posting-Host: 02890528.news.sunsite.dk
X-Trace: 1637718603 news.sunsite.dk 705 arne@vajhoej.dk/68.9.63.232:62264
X-Complaints-To: staff@sunsite.dk
 by: Arne Vajhøj - Wed, 24 Nov 2021 01:50 UTC

On 11/23/2021 8:34 PM, Dave Froble wrote:
> On 11/23/2021 1:37 PM, Simon Clubley wrote:
>> That VMS API passes in a stack pointer, a PC and what were originally
>> two architecture-specific registers.
>>
>> That kind of information simply would not be exposed at application
>> code level in a modern version of that API as it would (rightly) be
>> treated as an implementation specific detail that would be handled
>> by the compiler.
>>
>> That information is only needed because the lowest supported application
>> language on VMS is Macro-32 and not C (or another comparable low-level
>> language).
>
> Ok, but, what is the harm?
>
> Perhaps there are uses for that data.  If one doesn't need to use them,
> ignore them.  No blood, no foul.
>
> Just because something is not "how things should be according to Simon"
> doesn't necessarily make that something bad.
>
> Perhaps when using Macro-32 there might be some use.  Yes, Macro-32 as a
> compiler language sort of sucks.  But what's your alternative?  Re-write
> everything each year, even if it's working as designed and needed?

Rewrite comes with both short term cost and risk.

But not rewriting comes with long term cost and risk.

Rewriting every year is crazy. But rewrite every 10 or 15 or 20 years
and always to something higher level may make sense.

Arne

Re: BASIC and AST routines

<snlerq$jrr$1@dont-email.me>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18902&group=comp.os.vms#18902

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: club...@remove_me.eisner.decus.org-Earth.UFP (Simon Clubley)
Newsgroups: comp.os.vms
Subject: Re: BASIC and AST routines
Date: Wed, 24 Nov 2021 13:31:38 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 64
Message-ID: <snlerq$jrr$1@dont-email.me>
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com> <d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com> <sn6tes$s80$1@dont-email.me> <08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com> <sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me> <00B6C348.F74CDC7B@SendSpamHere.ORG> <00B6C430.49D06BBF@SendSpamHere.ORG>
Injection-Date: Wed, 24 Nov 2021 13:31:38 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="1b33ee31af39c0bc14eeff54dd9ad92d";
logging-data="20347"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18XBbSefOOoc4wG5yR03EKEhOrq7QaUrPk="
User-Agent: slrn/0.9.8.1 (VMS/Multinet)
Cancel-Lock: sha1:P+mEY+lsnIfku0V0vyD1oLe2FMM=
 by: Simon Clubley - Wed, 24 Nov 2021 13:31 UTC

On 2021-11-23, VAXman- @SendSpamHere.ORG <VAXman-@SendSpamHere.ORG> wrote:
> In article <snjcd1$9hn$2@dont-email.me>, Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> writes:
>>
>>That VMS API passes in a stack pointer, a PC and what were originally
>>two architecture-specific registers.
>
> That doesn't answer your aspersions WRT Macro-32. Try, do try again.
> I'll be waiting. Also, please tell me about this stack pointer you've
> now claimed to be passed along too.
>

You are correct Brian. I wrongly thought it was the SP for some reason
instead of the PS/PSL. However, passing an architecture-specific PS/PSL
register to the AST is even more ridiculous than passing the SP.

>
>
>>That kind of information simply would not be exposed at application
>>code level in a modern version of that API as it would (rightly) be
>>treated as an implementation specific detail that would be handled
>>by the compiler.
>
> Oh, please explain then how are ASTs handled in *ix? <LOL>
>

Here is one example of how asynchronous callbacks are handled in Linux:

https://linux.die.net/man/3/dlm_lock

For a proper hardware-level callback when code is written in C, looking
at microcontroller interrupt handlers would be a good example.

In that world, you can either tag the interrupt handler with an __ISR
attribute and let the compiler generate the correct code for you, or
the underlying OS environment can wrap calls to the C language interrupt
handler with an assembly language handler that is utterly invisible to
the C language interrupt handler itself.

Here is how one compiler for the PIC32MX (a MIPS MCU) handles this:

https://microchipdeveloper.com/32bit:mx-arch-exceptions-usage

>
>
>>That information is only needed because the lowest supported application
>>language on VMS is Macro-32 and not C (or another comparable low-level
>>language).
>
> You're slinging your BULLSHIT yet again. Macro-32 has no inherent need
> or want to know R0, R1, the PC at AST delivery or the PS/PSL. As I have
> requested previously, if you want to be slinging manure in here, please
> show us your shovel.
>

Fine. So why are these architecture-specific registers passed to what
is essentially a callback function in a normal application program
and why do those registers need to be visible from that same callback
function ?

Simon.

--
Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP
Walking destinations on a map are further away than they appear.

Re: BASIC and AST routines

<619e3fe3$0$692$14726298@news.sunsite.dk>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18903&group=comp.os.vms#18903

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!paganini.bofh.team!news.dns-netz.com!news.freedyn.net!newsreader4.netcologne.de!news.netcologne.de!news.uzoreto.com!dotsrc.org!filter.dotsrc.org!news.dotsrc.org!not-for-mail
Date: Wed, 24 Nov 2021 08:36:28 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.3.2
Subject: Re: BASIC and AST routines
Content-Language: en-US
Newsgroups: comp.os.vms
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com>
<d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com>
<sn6tes$s80$1@dont-email.me>
<08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com>
<sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me>
<00B6C348.F74CDC7B@SendSpamHere.ORG> <00B6C430.49D06BBF@SendSpamHere.ORG>
<snlerq$jrr$1@dont-email.me>
From: arn...@vajhoej.dk (Arne Vajhøj)
In-Reply-To: <snlerq$jrr$1@dont-email.me>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Lines: 24
Message-ID: <619e3fe3$0$692$14726298@news.sunsite.dk>
Organization: SunSITE.dk - Supporting Open source
NNTP-Posting-Host: 991b3056.news.sunsite.dk
X-Trace: 1637760995 news.sunsite.dk 692 arne@vajhoej.dk/68.9.63.232:49539
X-Complaints-To: staff@sunsite.dk
 by: Arne Vajhøj - Wed, 24 Nov 2021 13:36 UTC

On 11/24/2021 8:31 AM, Simon Clubley wrote:
> On 2021-11-23, VAXman- @SendSpamHere.ORG <VAXman-@SendSpamHere.ORG> wrote:
>> In article <snjcd1$9hn$2@dont-email.me>, Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> writes:
>>> That information is only needed because the lowest supported application
>>> language on VMS is Macro-32 and not C (or another comparable low-level
>>> language).
>>
>> You're slinging your BULLSHIT yet again. Macro-32 has no inherent need
>> or want to know R0, R1, the PC at AST delivery or the PS/PSL. As I have
>> requested previously, if you want to be slinging manure in here, please
>> show us your shovel.
>
> Fine. So why are these architecture-specific registers passed to what
> is essentially a callback function in a normal application program
> and why do those registers need to be visible from that same callback
> function ?

So far there has only been one guess: yours - that it is to
support applications in Macro-32. And that explanation does
not make any sense as Macro-32 applications do not need info
that C applications does not.

Arne

Re: BASIC and AST routines

<snlfob$jrr$2@dont-email.me>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18904&group=comp.os.vms#18904

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: club...@remove_me.eisner.decus.org-Earth.UFP (Simon Clubley)
Newsgroups: comp.os.vms
Subject: Re: BASIC and AST routines
Date: Wed, 24 Nov 2021 13:46:51 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 26
Message-ID: <snlfob$jrr$2@dont-email.me>
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com> <d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com> <sn6tes$s80$1@dont-email.me> <08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com> <sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me> <00B6C348.F74CDC7B@SendSpamHere.ORG> <snjcd1$9hn$2@dont-email.me> <619d35db$0$706$14726298@news.sunsite.dk> <snje3g$9hn$4@dont-email.me> <619d417a$0$699$14726298@news.sunsite.dk>
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 24 Nov 2021 13:46:51 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="1b33ee31af39c0bc14eeff54dd9ad92d";
logging-data="20347"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+gWhbI5UsU/rw+hwAHZt+ZmLsg1kxg8rE="
User-Agent: slrn/0.9.8.1 (VMS/Multinet)
Cancel-Lock: sha1:It3VuvdTnCkuH5U4KmuLqMtAVBM=
 by: Simon Clubley - Wed, 24 Nov 2021 13:46 UTC

On 2021-11-23, Arne Vajhøj <arne@vajhoej.dk> wrote:
>
> 2) Why are those arguments there?
>
> It is not obvious to me why Macro-32 code would want to use them
> any more than C or Basic code.
>

Nor to me. In an OS with the proper levels of abstraction, those
hardware-specific registers simply should not be needed (or even
visible) to a function used as the target of what is essentially
just another way of doing an asynchronous callback to a function
within an application.

Since they are visible, and since they are of no use to a normal
compiled language, there must be some cases where you have to
preserve these values manually in Macro-32, whereas a OS based
around a higher-level language would have its compilers generate
the correct code sequences for you without you having to worry
about any of this at all.

Simon.

--
Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP
Walking destinations on a map are further away than they appear.

Re: BASIC and AST routines

<snlg1h$jrr$3@dont-email.me>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18905&group=comp.os.vms#18905

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: club...@remove_me.eisner.decus.org-Earth.UFP (Simon Clubley)
Newsgroups: comp.os.vms
Subject: Re: BASIC and AST routines
Date: Wed, 24 Nov 2021 13:51:45 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 34
Message-ID: <snlg1h$jrr$3@dont-email.me>
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com> <d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com> <sn6tes$s80$1@dont-email.me> <08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com> <sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me> <00B6C348.F74CDC7B@SendSpamHere.ORG> <00B6C430.49D06BBF@SendSpamHere.ORG> <snlerq$jrr$1@dont-email.me> <619e3fe3$0$692$14726298@news.sunsite.dk>
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 24 Nov 2021 13:51:45 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="1b33ee31af39c0bc14eeff54dd9ad92d";
logging-data="20347"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX187yOyyPUrOhJpR7I47rQGLG+12rbSlmKM="
User-Agent: slrn/0.9.8.1 (VMS/Multinet)
Cancel-Lock: sha1:EjaA6UbqvjJxjAIC7ksjI2WryGU=
 by: Simon Clubley - Wed, 24 Nov 2021 13:51 UTC

On 2021-11-24, Arne Vajhøj <arne@vajhoej.dk> wrote:
> On 11/24/2021 8:31 AM, Simon Clubley wrote:
>> On 2021-11-23, VAXman- @SendSpamHere.ORG <VAXman-@SendSpamHere.ORG> wrote:
>>> In article <snjcd1$9hn$2@dont-email.me>, Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> writes:
>>>> That information is only needed because the lowest supported application
>>>> language on VMS is Macro-32 and not C (or another comparable low-level
>>>> language).
>>>
>>> You're slinging your BULLSHIT yet again. Macro-32 has no inherent need
>>> or want to know R0, R1, the PC at AST delivery or the PS/PSL. As I have
>>> requested previously, if you want to be slinging manure in here, please
>>> show us your shovel.
>>
>> Fine. So why are these architecture-specific registers passed to what
>> is essentially a callback function in a normal application program
>> and why do those registers need to be visible from that same callback
>> function ?
>
> So far there has only been one guess: yours - that it is to
> support applications in Macro-32. And that explanation does
> not make any sense as Macro-32 applications do not need info
> that C applications does not.
>

Not directly, but you might have to manually manage or preserve
something in Macro-32 that an OS based around a higher-level language
could handle for you automatically in the code generated by the
compilers for that OS.

Simon.

--
Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP
Walking destinations on a map are further away than they appear.

Re: BASIC and AST routines

<619e441c$0$705$14726298@news.sunsite.dk>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18906&group=comp.os.vms#18906

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!news.swapon.de!news.uzoreto.com!dotsrc.org!filter.dotsrc.org!news.dotsrc.org!not-for-mail
Date: Wed, 24 Nov 2021 08:54:29 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.3.2
Subject: Re: BASIC and AST routines
Content-Language: en-US
Newsgroups: comp.os.vms
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com>
<d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com>
<sn6tes$s80$1@dont-email.me>
<08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com>
<sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me>
<00B6C348.F74CDC7B@SendSpamHere.ORG> <snjcd1$9hn$2@dont-email.me>
<619d35db$0$706$14726298@news.sunsite.dk> <snje3g$9hn$4@dont-email.me>
<619d417a$0$699$14726298@news.sunsite.dk> <snlfob$jrr$2@dont-email.me>
From: arn...@vajhoej.dk (Arne Vajhøj)
In-Reply-To: <snlfob$jrr$2@dont-email.me>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 40
Message-ID: <619e441c$0$705$14726298@news.sunsite.dk>
Organization: SunSITE.dk - Supporting Open source
NNTP-Posting-Host: 991b3056.news.sunsite.dk
X-Trace: 1637762076 news.sunsite.dk 705 arne@vajhoej.dk/68.9.63.232:50523
X-Complaints-To: staff@sunsite.dk
 by: Arne Vajhøj - Wed, 24 Nov 2021 13:54 UTC

On 11/24/2021 8:46 AM, Simon Clubley wrote:
> On 2021-11-23, Arne Vajhøj <arne@vajhoej.dk> wrote:
>>
>> 2) Why are those arguments there?
>>
>> It is not obvious to me why Macro-32 code would want to use them
>> any more than C or Basic code.
>>
>
> Nor to me. In an OS with the proper levels of abstraction, those
> hardware-specific registers simply should not be needed (or even
> visible) to a function used as the target of what is essentially
> just another way of doing an asynchronous callback to a function
> within an application.

So why did you suggest that it was for Macro-32?

> Since they are visible, and since they are of no use to a normal
> compiled language, there must be some cases where you have to
> preserve these values manually in Macro-32, whereas a OS based
> around a higher-level language would have its compilers generate
> the correct code sequences for you without you having to worry
> about any of this at all.

So it is there for Macro-32 because VMS C could have had a feature
but actually does not that does something that nobody seems to be doing?

And are there really any difference between the non-existing C:

int __damn_ast foobar()

and the non-existing Macro-32:

..entry foobar
..damn_ast

?

Arne

Re: BASIC and AST routines

<619e44b6$0$705$14726298@news.sunsite.dk>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18907&group=comp.os.vms#18907

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!aioe.org!feeder1.feed.usenet.farm!feed.usenet.farm!news.uzoreto.com!dotsrc.org!filter.dotsrc.org!news.dotsrc.org!not-for-mail
Date: Wed, 24 Nov 2021 08:57:08 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.3.2
Subject: Re: BASIC and AST routines
Content-Language: en-US
Newsgroups: comp.os.vms
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com>
<d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com>
<sn6tes$s80$1@dont-email.me>
<08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com>
<sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me>
<00B6C348.F74CDC7B@SendSpamHere.ORG> <00B6C430.49D06BBF@SendSpamHere.ORG>
<snlerq$jrr$1@dont-email.me> <619e3fe3$0$692$14726298@news.sunsite.dk>
<snlg1h$jrr$3@dont-email.me>
From: arn...@vajhoej.dk (Arne Vajhøj)
In-Reply-To: <snlg1h$jrr$3@dont-email.me>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 35
Message-ID: <619e44b6$0$705$14726298@news.sunsite.dk>
Organization: SunSITE.dk - Supporting Open source
NNTP-Posting-Host: 991b3056.news.sunsite.dk
X-Trace: 1637762230 news.sunsite.dk 705 arne@vajhoej.dk/68.9.63.232:50523
X-Complaints-To: staff@sunsite.dk
 by: Arne Vajhøj - Wed, 24 Nov 2021 13:57 UTC

On 11/24/2021 8:51 AM, Simon Clubley wrote:
> On 2021-11-24, Arne Vajhøj <arne@vajhoej.dk> wrote:
>> On 11/24/2021 8:31 AM, Simon Clubley wrote:
>>> On 2021-11-23, VAXman- @SendSpamHere.ORG <VAXman-@SendSpamHere.ORG> wrote:
>>>> In article <snjcd1$9hn$2@dont-email.me>, Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> writes:
>>>>> That information is only needed because the lowest supported application
>>>>> language on VMS is Macro-32 and not C (or another comparable low-level
>>>>> language).
>>>>
>>>> You're slinging your BULLSHIT yet again. Macro-32 has no inherent need
>>>> or want to know R0, R1, the PC at AST delivery or the PS/PSL. As I have
>>>> requested previously, if you want to be slinging manure in here, please
>>>> show us your shovel.
>>>
>>> Fine. So why are these architecture-specific registers passed to what
>>> is essentially a callback function in a normal application program
>>> and why do those registers need to be visible from that same callback
>>> function ?
>>
>> So far there has only been one guess: yours - that it is to
>> support applications in Macro-32. And that explanation does
>> not make any sense as Macro-32 applications do not need info
>> that C applications does not.
>
> Not directly, but you might have to manually manage or preserve
> something in Macro-32 that an OS based around a higher-level language
> could handle for you automatically in the code generated by the
> compilers for that OS.

Except that it is fine to ignore those arguments.

And except that there is no such feature in VMS C.

Arne

Re: BASIC and AST routines

<00B6C49A.D651BA8E@SendSpamHere.ORG>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18909&group=comp.os.vms#18909

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!aioe.org!pr9o9uw/KLhPSFYv2ok3sg.user.46.165.242.75.POSTED!not-for-mail
From: VAXm...@SendSpamHere.ORG
Newsgroups: comp.os.vms
Subject: Re: BASIC and AST routines
Date: Wed, 24 Nov 2021 14:05:06 GMT
Organization: c.2021 Brian Schenkenberger. Prior employers of copyright holder and their agents must first obtain written permission to copy this posting.
Message-ID: <00B6C49A.D651BA8E@SendSpamHere.ORG>
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com> <d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com> <sn6tes$s80$1@dont-email.me> <08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com> <sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me> <00B6C348.F74CDC7B@SendSpamHere.ORG> <00B6C430.49D06BBF@SendSpamHere.ORG>
Reply-To: VAXman- @SendSpamHere.ORG
Injection-Info: gioia.aioe.org; logging-data="14050"; posting-host="pr9o9uw/KLhPSFYv2ok3sg.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
X-Notice: Filtered by postfilter v. 0.9.2
 by: VAXm...@SendSpamHere.ORG - Wed, 24 Nov 2021 14:05 UTC

In article <snlerq$jrr$1@dont-email.me>, Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> writes:
>On 2021-11-23, VAXman- @SendSpamHere.ORG <VAXman-@SendSpamHere.ORG> wrote:
>> In article <snjcd1$9hn$2@dont-email.me>, Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> writes:
>>>
>>>That VMS API passes in a stack pointer, a PC and what were originally
>>>two architecture-specific registers.
>>
>> That doesn't answer your aspersions WRT Macro-32. Try, do try again.
>> I'll be waiting. Also, please tell me about this stack pointer you've
>> now claimed to be passed along too.
>>
>
>You are correct Brian. I wrongly thought it was the SP for some reason
>instead of the PS/PSL. However, passing an architecture-specific PS/PSL
>register to the AST is even more ridiculous than passing the SP.
>
>>
>>
>>>That kind of information simply would not be exposed at application
>>>code level in a modern version of that API as it would (rightly) be
>>>treated as an implementation specific detail that would be handled
>>>by the compiler.
>>
>> Oh, please explain then how are ASTs handled in *ix? <LOL>
>>
>
>Here is one example of how asynchronous callbacks are handled in Linux:
>
>https://linux.die.net/man/3/dlm_lock
>
>For a proper hardware-level callback when code is written in C, looking
>at microcontroller interrupt handlers would be a good example.
>
>In that world, you can either tag the interrupt handler with an __ISR
>attribute and let the compiler generate the correct code for you, or
>the underlying OS environment can wrap calls to the C language interrupt
>handler with an assembly language handler that is utterly invisible to
>the C language interrupt handler itself.
>
>Here is how one compiler for the PIC32MX (a MIPS MCU) handles this:
>
>https://microchipdeveloper.com/32bit:mx-arch-exceptions-usage
>
>>
>>
>>>That information is only needed because the lowest supported application
>>>language on VMS is Macro-32 and not C (or another comparable low-level
>>>language).
>>
>> You're slinging your BULLSHIT yet again. Macro-32 has no inherent need
>> or want to know R0, R1, the PC at AST delivery or the PS/PSL. As I have
>> requested previously, if you want to be slinging manure in here, please
>> show us your shovel.
>>
>
>Fine. So why are these architecture-specific registers passed to what
>is essentially a callback function in a normal application program
>and why do those registers need to be visible from that same callback
>function ?

Stop there! You stated crap, pure unadulterated crap! Answer the initial
question! You're trying to drag this off the main street and down a side
alley where it'll be lost amongst the riff-raff.

--
VAXman- A Bored Certified VMS Kernel Mode Hacker VAXman(at)TMESIS(dot)ORG

I speak to machines with the voice of humanity.

Re: BASIC and AST routines

<snlh1r$jrr$5@dont-email.me>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18910&group=comp.os.vms#18910

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: club...@remove_me.eisner.decus.org-Earth.UFP (Simon Clubley)
Newsgroups: comp.os.vms
Subject: Re: BASIC and AST routines
Date: Wed, 24 Nov 2021 14:08:59 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 60
Message-ID: <snlh1r$jrr$5@dont-email.me>
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com> <d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com> <sn6tes$s80$1@dont-email.me> <08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com> <sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me> <00B6C348.F74CDC7B@SendSpamHere.ORG> <snjcd1$9hn$2@dont-email.me> <619d35db$0$706$14726298@news.sunsite.dk> <snje3g$9hn$4@dont-email.me> <619d417a$0$699$14726298@news.sunsite.dk> <snlfob$jrr$2@dont-email.me> <619e441c$0$705$14726298@news.sunsite.dk>
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 24 Nov 2021 14:08:59 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="1b33ee31af39c0bc14eeff54dd9ad92d";
logging-data="20347"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19EvPksE9EW+nfry2rDNBvgzf7Y1Qb0dXo="
User-Agent: slrn/0.9.8.1 (VMS/Multinet)
Cancel-Lock: sha1:mtdHsPNSNLsL8eV9QlUl5/tDNTI=
 by: Simon Clubley - Wed, 24 Nov 2021 14:08 UTC

On 2021-11-24, Arne Vajhøj <arne@vajhoej.dk> wrote:
> On 11/24/2021 8:46 AM, Simon Clubley wrote:
>> On 2021-11-23, Arne Vajhøj <arne@vajhoej.dk> wrote:
>>>
>>> 2) Why are those arguments there?
>>>
>>> It is not obvious to me why Macro-32 code would want to use them
>>> any more than C or Basic code.
>>>
>>
>> Nor to me. In an OS with the proper levels of abstraction, those
>> hardware-specific registers simply should not be needed (or even
>> visible) to a function used as the target of what is essentially
>> just another way of doing an asynchronous callback to a function
>> within an application.
>
> So why did you suggest that it was for Macro-32?
>

I suggested it was needed because clearly something needs to be manually
preserved by the programmer in Macro-32 code that simply would not be
an issue if VMS was based around an higher-level language instead.

>> Since they are visible, and since they are of no use to a normal
>> compiled language, there must be some cases where you have to
>> preserve these values manually in Macro-32, whereas a OS based
>> around a higher-level language would have its compilers generate
>> the correct code sequences for you without you having to worry
>> about any of this at all.
>
> So it is there for Macro-32 because VMS C could have had a feature
> but actually does not that does something that nobody seems to be doing?
>

No, it's there because the lowest supported application language on
VMS is Macro-32 instead of C or another language and hence that had
to be factored into the VMS API design.

> And are there really any difference between the non-existing C:
>
> int __damn_ast foobar()
>
> and the non-existing Macro-32:
>
> .entry foobar
> .damn_ast
>

Yes. Code generation in a compiled language is totally abstracted
away from the source code the compiler is working with.

In Macro-32, the assembler is translating the source code, not
rewriting it, and hence there are only a small number of transformations
it can do on the source code.

Simon.

--
Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP
Walking destinations on a map are further away than they appear.

Re: BASIC and AST routines

<snlh8f$jrr$6@dont-email.me>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18911&group=comp.os.vms#18911

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: club...@remove_me.eisner.decus.org-Earth.UFP (Simon Clubley)
Newsgroups: comp.os.vms
Subject: Re: BASIC and AST routines
Date: Wed, 24 Nov 2021 14:12:31 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 24
Message-ID: <snlh8f$jrr$6@dont-email.me>
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com> <d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com> <sn6tes$s80$1@dont-email.me> <08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com> <sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me> <00B6C348.F74CDC7B@SendSpamHere.ORG> <00B6C430.49D06BBF@SendSpamHere.ORG> <00B6C49A.D651BA8E@SendSpamHere.ORG>
Injection-Date: Wed, 24 Nov 2021 14:12:31 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="1b33ee31af39c0bc14eeff54dd9ad92d";
logging-data="20347"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19IKD/6cIqxW7c7oZUysbCVzpEJR/xDK64="
User-Agent: slrn/0.9.8.1 (VMS/Multinet)
Cancel-Lock: sha1:7wOla/N//AzJnSb6kPUrciJV58Q=
 by: Simon Clubley - Wed, 24 Nov 2021 14:12 UTC

On 2021-11-24, VAXman- @SendSpamHere.ORG <VAXman-@SendSpamHere.ORG> wrote:
> In article <snlerq$jrr$1@dont-email.me>, Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> writes:
>>
>>Fine. So why are these architecture-specific registers passed to what
>>is essentially a callback function in a normal application program
>>and why do those registers need to be visible from that same callback
>>function ?
>
> Stop there! You stated crap, pure unadulterated crap! Answer the initial
> question! You're trying to drag this off the main street and down a side
> alley where it'll be lost amongst the riff-raff.
>

No, I am not. Are the arguments passed to the AST because the Macro-32
programmer has to manually preserve them in some cases ?

The same kind of thing that a programmer would never have to worry
about if the lowest supported language on VMS was not Macro-32 ?

Simon.

--
Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP
Walking destinations on a map are further away than they appear.

Re: BASIC and AST routines

<snlhjr$hj0$1@dont-email.me>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18913&group=comp.os.vms#18913

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: dav...@tsoft-inc.com (Dave Froble)
Newsgroups: comp.os.vms
Subject: Re: BASIC and AST routines
Date: Wed, 24 Nov 2021 09:18:30 -0500
Organization: A noiseless patient Spider
Lines: 72
Message-ID: <snlhjr$hj0$1@dont-email.me>
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com>
<d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com>
<sn6tes$s80$1@dont-email.me>
<08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com>
<sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me>
<00B6C348.F74CDC7B@SendSpamHere.ORG> <00B6C430.49D06BBF@SendSpamHere.ORG>
<snlerq$jrr$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Wed, 24 Nov 2021 14:18:35 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="59710b674ca858caa9e12dc9e3419d94";
logging-data="18016"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+P+NkvKE/LL+7fB7TdKWT6IBWXXNSFJXo="
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:45.0) Gecko/20100101
Thunderbird/45.8.0
Cancel-Lock: sha1:guGMla4alQZDWHnYWLgE0BxDnPc=
In-Reply-To: <snlerq$jrr$1@dont-email.me>
 by: Dave Froble - Wed, 24 Nov 2021 14:18 UTC

On 11/24/2021 8:31 AM, Simon Clubley wrote:
> On 2021-11-23, VAXman- @SendSpamHere.ORG <VAXman-@SendSpamHere.ORG> wrote:
>> In article <snjcd1$9hn$2@dont-email.me>, Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> writes:
>>>
>>> That VMS API passes in a stack pointer, a PC and what were originally
>>> two architecture-specific registers.
>>
>> That doesn't answer your aspersions WRT Macro-32. Try, do try again.
>> I'll be waiting. Also, please tell me about this stack pointer you've
>> now claimed to be passed along too.
>>
>
> You are correct Brian. I wrongly thought it was the SP for some reason
> instead of the PS/PSL. However, passing an architecture-specific PS/PSL
> register to the AST is even more ridiculous than passing the SP.
>
>>
>>
>>> That kind of information simply would not be exposed at application
>>> code level in a modern version of that API as it would (rightly) be
>>> treated as an implementation specific detail that would be handled
>>> by the compiler.
>>
>> Oh, please explain then how are ASTs handled in *ix? <LOL>
>>
>
> Here is one example of how asynchronous callbacks are handled in Linux:
>
> https://linux.die.net/man/3/dlm_lock
>
> For a proper hardware-level callback when code is written in C, looking
> at microcontroller interrupt handlers would be a good example.
>
> In that world, you can either tag the interrupt handler with an __ISR
> attribute and let the compiler generate the correct code for you, or
> the underlying OS environment can wrap calls to the C language interrupt
> handler with an assembly language handler that is utterly invisible to
> the C language interrupt handler itself.
>
> Here is how one compiler for the PIC32MX (a MIPS MCU) handles this:
>
> https://microchipdeveloper.com/32bit:mx-arch-exceptions-usage
>
>>
>>
>>> That information is only needed because the lowest supported application
>>> language on VMS is Macro-32 and not C (or another comparable low-level
>>> language).
>>
>> You're slinging your BULLSHIT yet again. Macro-32 has no inherent need
>> or want to know R0, R1, the PC at AST delivery or the PS/PSL. As I have
>> requested previously, if you want to be slinging manure in here, please
>> show us your shovel.
>>
>
> Fine. So why are these architecture-specific registers passed to what
> is essentially a callback function in a normal application program
> and why do those registers need to be visible from that same callback
> function ?
>
> Simon.
>

Steve Hoffman answered that question way back up-thread. I'll leave it as an
exercise for you to go back and take a look.

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

Re: BASIC and AST routines

<619e62d8$0$697$14726298@news.sunsite.dk>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18914&group=comp.os.vms#18914

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!newsreader4.netcologne.de!news.netcologne.de!peer01.ams1!peer.ams1.xlned.com!news.xlned.com!newsfeed.xs4all.nl!newsfeed7.news.xs4all.nl!news.uzoreto.com!dotsrc.org!filter.dotsrc.org!news.dotsrc.org!not-for-mail
Date: Wed, 24 Nov 2021 11:05:37 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.3.2
Subject: Re: BASIC and AST routines
Content-Language: en-US
Newsgroups: comp.os.vms
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com>
<d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com>
<sn6tes$s80$1@dont-email.me>
<08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com>
<sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me>
<00B6C348.F74CDC7B@SendSpamHere.ORG> <snjcd1$9hn$2@dont-email.me>
<619d35db$0$706$14726298@news.sunsite.dk> <snje3g$9hn$4@dont-email.me>
<619d417a$0$699$14726298@news.sunsite.dk> <snlfob$jrr$2@dont-email.me>
<619e441c$0$705$14726298@news.sunsite.dk> <snlh1r$jrr$5@dont-email.me>
From: arn...@vajhoej.dk (Arne Vajhøj)
In-Reply-To: <snlh1r$jrr$5@dont-email.me>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 71
Message-ID: <619e62d8$0$697$14726298@news.sunsite.dk>
Organization: SunSITE.dk - Supporting Open source
NNTP-Posting-Host: d5835cdf.news.sunsite.dk
X-Trace: 1637769944 news.sunsite.dk 697 arne@vajhoej.dk/68.9.63.232:56299
X-Complaints-To: staff@sunsite.dk
X-Received-Bytes: 3936
 by: Arne Vajhøj - Wed, 24 Nov 2021 16:05 UTC

On 11/24/2021 9:08 AM, Simon Clubley wrote:
> On 2021-11-24, Arne Vajhøj <arne@vajhoej.dk> wrote:
>> On 11/24/2021 8:46 AM, Simon Clubley wrote:
>>> On 2021-11-23, Arne Vajhøj <arne@vajhoej.dk> wrote:
>>>>
>>>> 2) Why are those arguments there?
>>>>
>>>> It is not obvious to me why Macro-32 code would want to use them
>>>> any more than C or Basic code.
>>>>
>>>
>>> Nor to me. In an OS with the proper levels of abstraction, those
>>> hardware-specific registers simply should not be needed (or even
>>> visible) to a function used as the target of what is essentially
>>> just another way of doing an asynchronous callback to a function
>>> within an application.
>>
>> So why did you suggest that it was for Macro-32?
>
> I suggested it was needed because clearly something needs to be manually
> preserved by the programmer in Macro-32 code that simply would not be
> an issue if VMS was based around an higher-level language instead.

But it is an observable fact that it is not needed.

>>> Since they are visible, and since they are of no use to a normal
>>> compiled language, there must be some cases where you have to
>>> preserve these values manually in Macro-32, whereas a OS based
>>> around a higher-level language would have its compilers generate
>>> the correct code sequences for you without you having to worry
>>> about any of this at all.
>>
>> So it is there for Macro-32 because VMS C could have had a feature
>> but actually does not that does something that nobody seems to be doing?
>>
>
> No, it's there because the lowest supported application language on
> VMS is Macro-32 instead of C or another language and hence that had
> to be factored into the VMS API design.
>
>> And are there really any difference between the non-existing C:
>>
>> int __damn_ast foobar()
>>
>> and the non-existing Macro-32:
>>
>> .entry foobar
>> .damn_ast
>>
>
> Yes. Code generation in a compiled language is totally abstracted
> away from the source code the compiler is working with.

Except that it is not.

The compiler does what it is instructed to do.

In this case a fictive __damn_ast directive.

> In Macro-32, the assembler is translating the source code, not
> rewriting it, and hence there are only a small number of transformations
> it can do on the source code.

And the MAcro-32 use a fictive damn_ast macro.

In both cases something get added to the code that causes
the compiler to output some code that does something.

Arne

Re: BASIC and AST routines

<snm054$uid$1@dont-email.me>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18915&group=comp.os.vms#18915

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: club...@remove_me.eisner.decus.org-Earth.UFP (Simon Clubley)
Newsgroups: comp.os.vms
Subject: Re: BASIC and AST routines
Date: Wed, 24 Nov 2021 18:26:44 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 37
Message-ID: <snm054$uid$1@dont-email.me>
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com> <d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com> <sn6tes$s80$1@dont-email.me> <08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com> <sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me> <00B6C348.F74CDC7B@SendSpamHere.ORG> <00B6C430.49D06BBF@SendSpamHere.ORG> <snlerq$jrr$1@dont-email.me> <snlhjr$hj0$1@dont-email.me>
Injection-Date: Wed, 24 Nov 2021 18:26:44 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="1b33ee31af39c0bc14eeff54dd9ad92d";
logging-data="31309"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18Je4OimOgmIAUQPCPY+Wsh4LelPZ9T0oo="
User-Agent: slrn/0.9.8.1 (VMS/Multinet)
Cancel-Lock: sha1:BdosFGLoic6TrkFQOXOdE7jDUyc=
 by: Simon Clubley - Wed, 24 Nov 2021 18:26 UTC

On 2021-11-24, Dave Froble <davef@tsoft-inc.com> wrote:
> On 11/24/2021 8:31 AM, Simon Clubley wrote:
>>
>> Fine. So why are these architecture-specific registers passed to what
>> is essentially a callback function in a normal application program
>> and why do those registers need to be visible from that same callback
>> function ?
>>
>
> Steve Hoffman answered that question way back up-thread. I'll leave it as an
> exercise for you to go back and take a look.
>

Thank you David, I have found that posting.

So basically, I was right that the VMS abstraction layers are horribly
broken when it comes to ASTs even though the reason is a bit different
(and worse) than what I was expecting.

In other operating systems that have this functionality, this is either
handled by the compiler generating the appropriate code sequences after
the function is tagged by the programmer or is handled directly by the
underlying OS ABI _before_ calling the routine.

In either case, the saved registers are private to the OS ABI or compiler
and are _not_ visible to the user code.

But to directly push values into the call frame for the routine (and hence
directly visible to the routine) so they can be restored afterwards is just
horrible, horrible, horrible. I have never seen another OS handle this
problem in such an ugly way.

Simon.

--
Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP
Walking destinations on a map are further away than they appear.

Re: BASIC and AST routines

<snm0ka$uid$2@dont-email.me>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18916&group=comp.os.vms#18916

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: club...@remove_me.eisner.decus.org-Earth.UFP (Simon Clubley)
Newsgroups: comp.os.vms
Subject: Re: BASIC and AST routines
Date: Wed, 24 Nov 2021 18:34:50 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 27
Message-ID: <snm0ka$uid$2@dont-email.me>
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com> <d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com> <sn6tes$s80$1@dont-email.me> <08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com> <sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me> <00B6C348.F74CDC7B@SendSpamHere.ORG> <snjcd1$9hn$2@dont-email.me> <619d35db$0$706$14726298@news.sunsite.dk> <snje3g$9hn$4@dont-email.me> <619d417a$0$699$14726298@news.sunsite.dk> <snlfob$jrr$2@dont-email.me> <619e441c$0$705$14726298@news.sunsite.dk> <snlh1r$jrr$5@dont-email.me> <619e62d8$0$697$14726298@news.sunsite.dk>
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 24 Nov 2021 18:34:50 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="1b33ee31af39c0bc14eeff54dd9ad92d";
logging-data="31309"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19+/xPH0cPcAn1d1KvUizIUUmiBWxg5LZI="
User-Agent: slrn/0.9.8.1 (VMS/Multinet)
Cancel-Lock: sha1:kXZfqsbBQLIEUdFuJqa91bjaImc=
 by: Simon Clubley - Wed, 24 Nov 2021 18:34 UTC

On 2021-11-24, Arne Vajhøj <arne@vajhoej.dk> wrote:
> On 11/24/2021 9:08 AM, Simon Clubley wrote:
>>
>> I suggested it was needed because clearly something needs to be manually
>> preserved by the programmer in Macro-32 code that simply would not be
>> an issue if VMS was based around an higher-level language instead.
>
> But it is an observable fact that it is not needed.
>

Turns out it's not the programmer who needs to preserve the registers
but the OS and it turns out that VMS did it by pushing the registers
directly into the user-visible call frame and hence making them directly
available to the callback function. :-(

That is incredibly ugly. It should have been handled by either the
compiler itself generating the required AST code sequence or the OS ABI
saving the registers privately outside of the user-visible call frame
before calling the AST.

Yuck.

Simon.

--
Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP
Walking destinations on a map are further away than they appear.

Re: BASIC and AST routines

<619e8aef$0$699$14726298@news.sunsite.dk>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18918&group=comp.os.vms#18918

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!aioe.org!news.uzoreto.com!dotsrc.org!filter.dotsrc.org!news.dotsrc.org!not-for-mail
Date: Wed, 24 Nov 2021 13:56:46 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.3.2
Subject: Re: BASIC and AST routines
Content-Language: en-US
Newsgroups: comp.os.vms
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com>
<d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com>
<sn6tes$s80$1@dont-email.me>
<08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com>
<sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me>
<00B6C348.F74CDC7B@SendSpamHere.ORG> <snjcd1$9hn$2@dont-email.me>
<619d35db$0$706$14726298@news.sunsite.dk> <snje3g$9hn$4@dont-email.me>
<619d417a$0$699$14726298@news.sunsite.dk> <snlfob$jrr$2@dont-email.me>
<619e441c$0$705$14726298@news.sunsite.dk> <snlh1r$jrr$5@dont-email.me>
<619e62d8$0$697$14726298@news.sunsite.dk> <snm0ka$uid$2@dont-email.me>
From: arn...@vajhoej.dk (Arne Vajhøj)
In-Reply-To: <snm0ka$uid$2@dont-email.me>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 26
Message-ID: <619e8aef$0$699$14726298@news.sunsite.dk>
Organization: SunSITE.dk - Supporting Open source
NNTP-Posting-Host: c1f70f36.news.sunsite.dk
X-Trace: 1637780207 news.sunsite.dk 699 arne@vajhoej.dk/68.9.63.232:64615
X-Complaints-To: staff@sunsite.dk
 by: Arne Vajhøj - Wed, 24 Nov 2021 18:56 UTC

On 11/24/2021 1:34 PM, Simon Clubley wrote:
> On 2021-11-24, Arne Vajhøj <arne@vajhoej.dk> wrote:
>> On 11/24/2021 9:08 AM, Simon Clubley wrote:
>>>
>>> I suggested it was needed because clearly something needs to be manually
>>> preserved by the programmer in Macro-32 code that simply would not be
>>> an issue if VMS was based around an higher-level language instead.
>>
>> But it is an observable fact that it is not needed.
>
> Turns out it's not the programmer who needs to preserve the registers
> but the OS and it turns out that VMS did it by pushing the registers
> directly into the user-visible call frame and hence making them directly
> available to the callback function. :-(
>
> That is incredibly ugly. It should have been handled by either the
> compiler itself generating the required AST code sequence or the OS ABI
> saving the registers privately outside of the user-visible call frame
> before calling the AST.

So do we now agree that the Macro-32 thing was pure manure?

:-)

Arne

Re: BASIC and AST routines

<619e8bdf$0$698$14726298@news.sunsite.dk>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18919&group=comp.os.vms#18919

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!aioe.org!news.uzoreto.com!dotsrc.org!filter.dotsrc.org!news.dotsrc.org!not-for-mail
Date: Wed, 24 Nov 2021 14:00:45 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.3.2
Subject: Re: BASIC and AST routines
Content-Language: en-US
Newsgroups: comp.os.vms
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com>
<d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com>
<sn6tes$s80$1@dont-email.me>
<08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com>
<sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me>
<00B6C348.F74CDC7B@SendSpamHere.ORG> <00B6C430.49D06BBF@SendSpamHere.ORG>
<snlerq$jrr$1@dont-email.me> <snlhjr$hj0$1@dont-email.me>
<snm054$uid$1@dont-email.me>
From: arn...@vajhoej.dk (Arne Vajhøj)
In-Reply-To: <snm054$uid$1@dont-email.me>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Lines: 37
Message-ID: <619e8bdf$0$698$14726298@news.sunsite.dk>
Organization: SunSITE.dk - Supporting Open source
NNTP-Posting-Host: 3fdd206a.news.sunsite.dk
X-Trace: 1637780447 news.sunsite.dk 698 arne@vajhoej.dk/68.9.63.232:64959
X-Complaints-To: staff@sunsite.dk
 by: Arne Vajhøj - Wed, 24 Nov 2021 19:00 UTC

On 11/24/2021 1:26 PM, Simon Clubley wrote:
> On 2021-11-24, Dave Froble <davef@tsoft-inc.com> wrote:
>> On 11/24/2021 8:31 AM, Simon Clubley wrote:
>>>
>>> Fine. So why are these architecture-specific registers passed to what
>>> is essentially a callback function in a normal application program
>>> and why do those registers need to be visible from that same callback
>>> function ?
>>
>> Steve Hoffman answered that question way back up-thread. I'll leave it as an
>> exercise for you to go back and take a look.
>
> Thank you David, I have found that posting.
>
> So basically, I was right that the VMS abstraction layers are horribly
> broken when it comes to ASTs even though the reason is a bit different
> (and worse) than what I was expecting.
>
> In other operating systems that have this functionality, this is either
> handled by the compiler generating the appropriate code sequences after
> the function is tagged by the programmer or is handled directly by the
> underlying OS ABI _before_ calling the routine.
>
> In either case, the saved registers are private to the OS ABI or compiler
> and are _not_ visible to the user code.
>
> But to directly push values into the call frame for the routine (and hence
> directly visible to the routine) so they can be restored afterwards is just
> horrible, horrible, horrible. I have never seen another OS handle this
> problem in such an ugly way.

Now I followed Robert Gezeltzer's advice and it is worth noting that
this is really a VAX thing. The newer platforms do not use the values -
they are just there for VAX compatibility.

Arne

Re: BASIC and AST routines

<snm2ts$oc3$1@dont-email.me>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18920&group=comp.os.vms#18920

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: club...@remove_me.eisner.decus.org-Earth.UFP (Simon Clubley)
Newsgroups: comp.os.vms
Subject: Re: BASIC and AST routines
Date: Wed, 24 Nov 2021 19:14:04 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 38
Message-ID: <snm2ts$oc3$1@dont-email.me>
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com> <d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com> <sn6tes$s80$1@dont-email.me> <08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com> <sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me> <00B6C348.F74CDC7B@SendSpamHere.ORG> <snjcd1$9hn$2@dont-email.me> <619d35db$0$706$14726298@news.sunsite.dk> <snje3g$9hn$4@dont-email.me> <619d417a$0$699$14726298@news.sunsite.dk> <snlfob$jrr$2@dont-email.me> <619e441c$0$705$14726298@news.sunsite.dk> <snlh1r$jrr$5@dont-email.me> <619e62d8$0$697$14726298@news.sunsite.dk> <snm0ka$uid$2@dont-email.me> <619e8aef$0$699$14726298@news.sunsite.dk>
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 24 Nov 2021 19:14:04 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="1b33ee31af39c0bc14eeff54dd9ad92d";
logging-data="24963"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/UPb0OB4fbIF6nufL+PGNagRXBWUgMyUM="
User-Agent: slrn/0.9.8.1 (VMS/Multinet)
Cancel-Lock: sha1:xIhqdqCKPVWDSIcYsFlynrU32tY=
 by: Simon Clubley - Wed, 24 Nov 2021 19:14 UTC

On 2021-11-24, Arne Vajhøj <arne@vajhoej.dk> wrote:
> On 11/24/2021 1:34 PM, Simon Clubley wrote:
>> On 2021-11-24, Arne Vajhøj <arne@vajhoej.dk> wrote:
>>> On 11/24/2021 9:08 AM, Simon Clubley wrote:
>>>>
>>>> I suggested it was needed because clearly something needs to be manually
>>>> preserved by the programmer in Macro-32 code that simply would not be
>>>> an issue if VMS was based around an higher-level language instead.
>>>
>>> But it is an observable fact that it is not needed.
>>
>> Turns out it's not the programmer who needs to preserve the registers
>> but the OS and it turns out that VMS did it by pushing the registers
>> directly into the user-visible call frame and hence making them directly
>> available to the callback function. :-(
>>
>> That is incredibly ugly. It should have been handled by either the
>> compiler itself generating the required AST code sequence or the OS ABI
>> saving the registers privately outside of the user-visible call frame
>> before calling the AST.
>
> So do we now agree that the Macro-32 thing was pure manure?
>
>:-)
>

I agree that the real reason for them being there is so horrible
and ugly that it never occurred to me as a possibility. :-)

VMS should have been designed 5-10 years later on than when it was.

It would have been so much cleaner internally if it had been.

Simon.

--
Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP
Walking destinations on a map are further away than they appear.

Re: BASIC and AST routines

<snm35s$s99$1@dont-email.me>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=18922&group=comp.os.vms#18922

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: dav...@tsoft-inc.com (Dave Froble)
Newsgroups: comp.os.vms
Subject: Re: BASIC and AST routines
Date: Wed, 24 Nov 2021 14:18:15 -0500
Organization: A noiseless patient Spider
Lines: 45
Message-ID: <snm35s$s99$1@dont-email.me>
References: <d77053df-ac45-42f9-9b01-fac40a04095en@googlegroups.com>
<d98f13aa-4da0-482a-aaa5-6f6a629c3f25n@googlegroups.com>
<sn6tes$s80$1@dont-email.me>
<08af58ca-be1f-49ad-9134-a2b55576b21an@googlegroups.com>
<sn7d2p$82q$1@dont-email.me> <sngp1p$aud$2@dont-email.me>
<00B6C348.F74CDC7B@SendSpamHere.ORG> <00B6C430.49D06BBF@SendSpamHere.ORG>
<00B6C49A.D651BA8E@SendSpamHere.ORG> <snlh8f$jrr$6@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Wed, 24 Nov 2021 19:18:20 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="59710b674ca858caa9e12dc9e3419d94";
logging-data="28969"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18VyeM/8vOOhZbcTz/ZJMcdxGepfm2eQTU="
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:45.0) Gecko/20100101
Thunderbird/45.8.0
Cancel-Lock: sha1:1lf+OwTgM/n9rOnY8Fqk3bktLNQ=
In-Reply-To: <snlh8f$jrr$6@dont-email.me>
 by: Dave Froble - Wed, 24 Nov 2021 19:18 UTC

On 11/24/2021 9:12 AM, Simon Clubley wrote:
> On 2021-11-24, VAXman- @SendSpamHere.ORG <VAXman-@SendSpamHere.ORG> wrote:
>> In article <snlerq$jrr$1@dont-email.me>, Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> writes:
>>>
>>> Fine. So why are these architecture-specific registers passed to what
>>> is essentially a callback function in a normal application program
>>> and why do those registers need to be visible from that same callback
>>> function ?
>>
>> Stop there! You stated crap, pure unadulterated crap! Answer the initial
>> question! You're trying to drag this off the main street and down a side
>> alley where it'll be lost amongst the riff-raff.
>>
>
> No, I am not. Are the arguments passed to the AST because the Macro-32
> programmer has to manually preserve them in some cases ?
>
> The same kind of thing that a programmer would never have to worry
> about if the lowest supported language on VMS was not Macro-32 ?
>
> Simon.
>

On VAX Macro-32 is an assembler, not a compiled language. Nothing wrong with
that. Note also that the VAX 11/780 was first available in 1978. Trying to
blame the VAX for not having things that didn't exist back then is rather
unfair, to say the least.

On Alpha, itanic, and x86 Macro-32 is a compiled language. Yes, a rather poor
compiled language. But it's existence allowed applications to be easily ported
to Alpha, then itanic, and soon x86. Now, that is a very huge capability.
Allowed Alphas to be sold, and applications to continue doing the job they were
implemented to do. For myself, I have a database product implemented in
Macro-32 that is still in use and doing very well.

That compatibility that you so despise allowed Alphas to be sold, applications
to be ported, saved a large expense, and in general was/is a good thing. If you
cannot understand that, we'll never agree.

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

Pages:123
server_pubkey.txt

rocksolid light 0.9.8
clearnet tor