Re: basic BASIC question

Liste des GroupesRevenir à co vms 
Sujet : Re: basic BASIC question
De : arne (at) *nospam* vajhoej.dk (Arne Vajhøj)
Groupes : comp.os.vms
Date : 01. Feb 2025, 02:39:22
Autres entêtes
Organisation : SunSITE.dk - Supporting Open source
Message-ID : <679d7b49$0$713$14726298@news.sunsite.dk>
References : 1 2 3 4 5 6
User-Agent : Mozilla Thunderbird
On 1/31/2025 8:38 PM, Arne Vajhøj wrote:
On 1/31/2025 5:05 PM, Dan Cross wrote:
In article <679d26bd$0$713$14726298@news.sunsite.dk>,
Arne Vajhøj  <arne@vajhoej.dk> wrote:
But there is no consistency between languages.
>
$ type dump.for
[snip]
>
I don't know why this should be surprising?
 I don't know if it is surprising, but it is inconsistent.
                   Fortran       Pascal        C          Basic
true literal       -1             1      usually 1    usually -1
false literal       0             0          0            0
test            low bit set  low bit set   not 0        not 0
 4 languages - 4 ways of doing it.
Regarding the test:
$ type m.pas
program m(input,output);
type
    ia5 = array [1..5] of integer;
[external]
procedure b(%ref v : ia5); external;
var
    v : ia5;
begin
    v[1] := -2;
    v[2] := -1;
    v[3] := 0;
    v[4] := 1;
    v[5] := 2;
    b(v);
end.
$ type b.bas
sub b(integer v() by ref)
     external string function s(integer)
     external sub f(integer dim() by ref)
     print using "Basic   : 'E 'E 'E 'E 'E", s(v(0)), s(v(1)), s(v(2)), s(v(3)), s(v(4))
     call f(v())
end sub
!
function string s(integer v1)
     if v1 then
         s = "TRUE "
     else
         s = "FALSE"
     end if
end function
$ type f.for
       subroutine f(v)
       logical*4 v(5)
       write(*,'(1x,a,5(l,4x))') 'Fortran :',v(1),v(2),v(3),v(4),v(5)
       call c(v)
       end
$ type c.c
#include <stdio.h>
void p(int *v);
void c(int *v)
{
     printf("C       :");
     for(int i = 0; i < 5; i++) {
         if(v[i]) {
             printf(" TRUE ");
         } else {
             printf(" FALSE");
         }
     }
     printf("\n");
     p(v);
}
$ type p.pas
module p(input, output);
type
    ia5 = array [1..5] of boolean;
[global]
procedure p(v : ia5);
begin
    writeln('Pascal  : ', v[1]:1, '     ', v[2]:1, '     ', v[3]:1, '   ', v[4]:1, '     ', v[5]:1);
end;
end.
$ pas m
$ bas b
$ for f
$ cc c
$ pas p
$ link m + b + f + c + p
$ run m
Basic   : TRUE  TRUE  FALSE TRUE  TRUE
Fortran : F     T     F     T     F
C       : TRUE  TRUE  FALSE TRUE  TRUE
Pascal  : F     T     F     T     F
Arne

Date Sujet#  Auteur
31 Jan 25 * basic BASIC question62Arne Vajhøj
31 Jan 25 +* Re: basic BASIC question3Robert A. Brooks
31 Jan 25 i`* Re: basic BASIC question2Arne Vajhøj
31 Jan 25 i `- Re: basic BASIC question1Chris Townley
31 Jan 25 +- Re: basic BASIC question1jeffrey_dsi
31 Jan 25 +* Re: basic BASIC question35Dave Froble
31 Jan 25 i+* Re: basic BASIC question33Arne Vajhøj
31 Jan 25 ii+* Re: basic BASIC question30Dan Cross
31 Jan 25 iii+* Re: basic BASIC question27Arne Vajhøj
31 Jan 25 iiii+* Re: basic BASIC question11Dan Cross
1 Feb 25 iiiii+* Re: basic BASIC question2Craig A. Berry
1 Feb 25 iiiiii`- Re: basic BASIC question1Arne Vajhøj
1 Feb 25 iiiii`* Re: basic BASIC question8Arne Vajhøj
1 Feb 25 iiiii +* Re: basic BASIC question6Arne Vajhøj
1 Feb 25 iiiii i`* Re: basic BASIC question5Arne Vajhøj
1 Feb 25 iiiii i +- Re: basic BASIC question1Dan Cross
2 Feb 25 iiiii i `* Re: basic BASIC question3Craig A. Berry
2 Feb 25 iiiii i  `* Re: basic BASIC question2Arne Vajhøj
2 Feb 25 iiiii i   `- Re: basic BASIC question1Dan Cross
1 Feb 25 iiiii `- Re: basic BASIC question1Dan Cross
31 Jan 25 iiii`* Re: basic BASIC question15Arne Vajhøj
2 Feb 25 iiii +- Re: basic BASIC question1Lawrence D'Oliveiro
3 Feb 25 iiii `* Re: basic BASIC question13Simon Clubley
3 Feb 25 iiii  `* Re: basic BASIC question12Arne Vajhøj
3 Feb 25 iiii   +* Re: basic BASIC question10Lawrence D'Oliveiro
4 Feb 25 iiii   i`* Re: basic BASIC question9Arne Vajhøj
4 Feb 25 iiii   i +* Re: basic BASIC question7Lawrence D'Oliveiro
4 Feb 25 iiii   i i`* Re: basic BASIC question6Arne Vajhøj
4 Feb 25 iiii   i i +* Re: basic BASIC question2Lawrence D'Oliveiro
5 Feb 25 iiii   i i i`- Re: basic BASIC question1Arne Vajhøj
5 Feb 25 iiii   i i `* Re: basic BASIC question3Lawrence D'Oliveiro
5 Feb 25 iiii   i i  `* Re: basic BASIC question2Arne Vajhøj
5 Feb 25 iiii   i i   `- Re: basic BASIC question1Lawrence D'Oliveiro
4 Feb 25 iiii   i `- Re: basic BASIC question1Dan Cross
5 Feb 25 iiii   `- Re: basic BASIC question1Arne Vajhøj
31 Jan 25 iii`* Re: basic BASIC question2Chris Townley
31 Jan 25 iii `- Re: basic BASIC question1Dan Cross
1 Feb 25 ii`* Re: basic BASIC question2Dave Froble
1 Feb 25 ii `- Re: basic BASIC question1Arne Vajhøj
31 Jan 25 i`- Re: basic BASIC question1Chris Townley
31 Jan 25 +* Re: basic BASIC question20Simon Clubley
31 Jan 25 i+* Re: basic BASIC question17Arne Vajhøj
31 Jan 25 ii`* Re: basic BASIC question16Arne Vajhøj
31 Jan 25 ii +* Re: basic BASIC question14Dan Cross
3 Feb 25 ii i`* Re: basic BASIC question13Simon Clubley
3 Feb 25 ii i +* Re: basic BASIC question2John Dallman
3 Feb 25 ii i i`- Re: basic BASIC question1Lawrence D'Oliveiro
3 Feb 25 ii i +- Re: basic BASIC question1Dan Cross
6 Feb 25 ii i `* Re: basic BASIC question9Arne Vajhøj
6 Feb 25 ii i  +- Re: basic BASIC question1Arne Vajhøj
6 Feb 25 ii i  +* Re: basic BASIC question5Dan Cross
6 Feb 25 ii i  i`* Re: basic BASIC question4Arne Vajhøj
6 Feb 25 ii i  i +- Re: basic BASIC question1Dan Cross
6 Feb 25 ii i  i `* Re: basic BASIC question2Lawrence D'Oliveiro
7 Feb 25 ii i  i  `- Re: basic BASIC question1Arne Vajhøj
6 Feb 25 ii i  `* Re: basic BASIC question2Lawrence D'Oliveiro
7 Feb 25 ii i   `- Re: basic BASIC question1Arne Vajhøj
31 Jan 25 ii `- Re: basic BASIC question1Lawrence D'Oliveiro
1 Feb 25 i`* Re: basic BASIC question2Dave Froble
3 Feb 25 i `- Re: basic BASIC question1Simon Clubley
2 Feb 25 +- Re: basic BASIC question1Lawrence D'Oliveiro
2 Apr 25 `- Re: basic BASIC question1Johnny Billquist

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal