Re: What VMS does RIGHT! - VMS

This is a discussion on Re: What VMS does RIGHT! - VMS ; From: John Santos > It seems to work in C, FORTRAN and PASCAL (syntacticly, i.e. it is > accepted on the DCL command line.) However, it does not seem to work > in Pascal; passing a junk file to the ...

+ Reply to Thread
Results 1 to 4 of 4

Thread: Re: What VMS does RIGHT!

  1. Re: What VMS does RIGHT!

    From: John Santos

    > It seems to work in C, FORTRAN and PASCAL (syntacticly, i.e. it is
    > accepted on the DCL command line.) However, it does not seem to work
    > in Pascal; passing a junk file to the Pascal compiler causes it to
    > generate one error for each line, no matter what value I put on the
    > /error_limit qualifier. (It is possible /ERRO is a
    > valid Pascal qualifier, and the behavior I'm seeing is perfectly
    > correct, since I don't have HELP PASCAL to check against...)


    PASCAL

    /ERROR_LIMIT[=n] D=/ERROR_LIMIT=30

    /NOERROR_LIMIT

    Terminates compilation after the occurrence of a specified
    number of errors, excluding warnings and informational messages.

    If you specify /NOERROR_LIMIT, the compilation continues until
    500 errors are detected.

    By default, /ERROR_LIMIT=30 is enabled.

    alp $ pascal /version
    Compaq Pascal V5.8-88 on OpenVMS Alpha V7.3-2

    Stealing (and mutilating) a bit of code (not that it worked right
    _before_ I mutilated it):

    alp $ pasc HELLOMOTIF
    [...]
    -PASCAL-F-ERRORLIMIT, Error Limit = 30, source analysis terminated
    at line number 203 in file ALP$DKA0:[SMS]HELLOMOTIF.PAS;2
    %PASCAL-E-ENDDIAGS, PASCAL completed with 31 diagnostics

    alp $ pasc HELLOMOTIF /err = 2
    [...]
    -PASCAL-F-ERRORLIMIT, Error Limit = 2, source analysis terminated
    at line number 74 in file ALP$DKA0:[SMS]HELLOMOTIF.PAS;2
    %PASCAL-E-ENDDIAGS, PASCAL completed with 3 diagnostics

    ------------------------------------------------------------------------

    Steven M. Schweda sms@antinode-org
    382 South Warwick Street (+1) 651-699-9818
    Saint Paul MN 55105-2547

  2. Re: What VMS does RIGHT!

    Steven M. Schweda wrote:
    > From: John Santos
    >
    >>It seems to work in C, FORTRAN and PASCAL (syntacticly, i.e. it is
    >>accepted on the DCL command line.) However, it does not seem to work
    >>in Pascal; passing a junk file to the Pascal compiler causes it to
    >>generate one error for each line, no matter what value I put on the
    >>/error_limit qualifier. (It is possible /ERRO is a
    >>valid Pascal qualifier, and the behavior I'm seeing is perfectly
    >>correct, since I don't have HELP PASCAL to check against...)

    >
    >
    > PASCAL
    >
    > /ERROR_LIMIT[=n] D=/ERROR_LIMIT=30
    >
    > /NOERROR_LIMIT
    >
    > Terminates compilation after the occurrence of a specified
    > number of errors, excluding warnings and informational messages.
    >
    > If you specify /NOERROR_LIMIT, the compilation continues until
    > 500 errors are detected.
    >
    > By default, /ERROR_LIMIT=30 is enabled.
    >
    > alp $ pascal /version
    > Compaq Pascal V5.8-88 on OpenVMS Alpha V7.3-2
    >
    > Stealing (and mutilating) a bit of code (not that it worked right
    > _before_ I mutilated it):
    >
    > alp $ pasc HELLOMOTIF
    > [...]
    > -PASCAL-F-ERRORLIMIT, Error Limit = 30, source analysis terminated
    > at line number 203 in file ALP$DKA0:[SMS]HELLOMOTIF.PAS;2
    > %PASCAL-E-ENDDIAGS, PASCAL completed with 31 diagnostics
    >
    > alp $ pasc HELLOMOTIF /err = 2
    > [...]
    > -PASCAL-F-ERRORLIMIT, Error Limit = 2, source analysis terminated
    > at line number 74 in file ALP$DKA0:[SMS]HELLOMOTIF.PAS;2
    > %PASCAL-E-ENDDIAGS, PASCAL completed with 3 diagnostics
    >


    I was trying a four-line junk text file (actually a one-line
    Fortran program consisting of "end" with several lines of
    random text added in front of it) and it was consistently displaying
    3 errors, no matter what I set /error_limit to. However, passing
    PASCAL a real BASIC program of 129 lines, /error_limit=n seems to
    stop after n errors, so I guess it is just some minimal edge condition
    that doesn't count right.

    $ type foo.for
    more junk.
    and even more junk;
    Some garbage
    end
    $ pascal/error_limit=1 foo.for

    more junk.
    .........^
    %PASCAL-E-SYNPROMOD, Syntax: PROGRAM or MODULE expected
    at line number 1 in file $6$DKA100:[JOHN]FOO.FOR;3

    Some garbage
    .........^
    %PASCAL-E-SYNBEGDECL, Syntax: BEGIN or declaration expected
    at line number 3 in file $6$DKA100:[JOHN]FOO.FOR;3

    end
    ............^
    %PASCAL-E-SYNPERIOD, Syntax: "." expected
    at line number 4 in file $6$DKA100:[JOHN]FOO.FOR;3
    %PASCAL-E-ENDDIAGS, PASCAL completed with 3 diagnostics
    $

    Definitely a case of garbage in, garbage out! Must be the
    particular smell of this garbage, maybe the absence of a
    "PROGRAM" statement...

    The problem with making something fool-proof is we fools
    are so ingenious! ;-)

    > ------------------------------------------------------------------------
    >
    > Steven M. Schweda sms@antinode-org
    > 382 South Warwick Street (+1) 651-699-9818
    > Saint Paul MN 55105-2547



    --
    John Santos
    Evans Griffiths & Hart, Inc.
    781-861-0670 ext 539

  3. Re: What VMS does RIGHT!

    John Santos wrote:

    >
    > I was trying a four-line junk text file (actually a one-line
    > Fortran program consisting of "end" with several lines of
    > random text added in front of it) and it was consistently displaying
    > 3 errors, no matter what I set /error_limit to. However, passing
    > PASCAL a real BASIC program of 129 lines, /error_limit=n seems to
    > stop after n errors, so I guess it is just some minimal edge condition
    > that doesn't count right.
    >
    > $ type foo.for
    > more junk.
    > and even more junk;
    > Some garbage
    > end
    > $ pascal/error_limit=1 foo.for
    >
    > more junk.
    > ........^
    > %PASCAL-E-SYNPROMOD, Syntax: PROGRAM or MODULE expected
    > at line number 1 in file $6$DKA100:[JOHN]FOO.FOR;3
    >
    > Some garbage
    > ........^
    > %PASCAL-E-SYNBEGDECL, Syntax: BEGIN or declaration expected
    > at line number 3 in file $6$DKA100:[JOHN]FOO.FOR;3
    >
    > end
    > ...........^
    > %PASCAL-E-SYNPERIOD, Syntax: "." expected
    > at line number 4 in file $6$DKA100:[JOHN]FOO.FOR;3
    > %PASCAL-E-ENDDIAGS, PASCAL completed with 3 diagnostics
    > $


    Sigh... If you say /ERROR=2, Pascal stops after two. Something funny
    with 1 at the edge condition. Should be easy to fix.

    As for getting it into BASIC, COBOL, and Macro-32, I'll add it to the list.

    If I could just get all of you to use the LSE language templates, you
    wouldn't be having all these syntax errors, no? :-)

    And before anybody starts THAT thread, we did update several of the
    language LSE templates for the latest DECset release.

    --
    John Reagan
    OpenVMS Pascal/Macro-32/COBOL Project Leader
    Hewlett-Packard Company

  4. Re: What VMS does RIGHT!

    John Reagan wrote:

    [snip]

    >
    > As for getting it into BASIC, COBOL, and Macro-32, I'll add it to the list.
    >


    Thank you!

    > If I could just get all of you to use the LSE language templates, you
    > wouldn't be having all these syntax errors, no? :-)
    >


    Nah, it's much easier to ask HP to change something than to make
    any sort of change ourselves. :-)

    > And before anybody starts THAT thread, we did update several of the
    > language LSE templates for the latest DECset release.
    >



    --
    John Santos
    Evans Griffiths & Hart, Inc.
    781-861-0670 ext 539

+ Reply to Thread