[Info-vax] Fun: Object Pascal on VMS
Arne Vajhøj
arne at vajhoej.dk
Mon Sep 2 11:35:16 EDT 2024
program demo(input, output);
{$include fpcjvm.inc}
type
T1 = class(TObject)
private
m_f1 : integer;
m_f2 : string;
public
constructor Create;
constructor Create(f1 : integer; f2 : string);
property F1 : integer read m_f1;
property F2 : string read m_f2;
end;
constructor T1.Create;
begin
m_f1 := 0;
m_f2 := '';
end;
constructor T1.Create(f1 : integer; f2 : string);
begin
m_f1 := f1;
m_f2 := f2;
end;
procedure dump(o : T1);
begin
write('F1=');
write(o.F1);
write(',F2=');
write(o.F2);
writeln;
end;
var
o1, o2 : T1;
begin
o1 := T1.Create;
dump(o1);
o1.Free;
o2 := T1.Create(123, 'ABC');
dump(o2);
o2.Free;
end.
On PC:
C:\Work\VMS\objectpascal>ppcjvm demo.pas
Free Pascal Compiler version 3.0.4 [2017/10/07] for jvm
Copyright (c) 1993-2017 by Florian Klaempfl and others
Target OS: Java Virtual Machine
Compiling demo.pas
demo.pas(37,14) Warning: Implicit string type conversion from
"ShortString" to "UnicodeString"
Assembling demo
Generated: .\T1.class
Generated: .\demo.class
Warning: Object system.class not found, Linking may fail !
63 lines compiled, 0.7 sec
2 warning(s) issued
C:\Work\VMS\objectpascal>jar cvf demo.jar demo.class T1.class
added manifest
adding: demo.class(in = 1179) (out= 668)(deflated 43%)
adding: T1.class(in = 1168) (out= 579)(deflated 50%)
On VMS:
$ java -cp demo.jar:fpcjvm.jar "demo"
F1=0,F2=
F1=123,F2=ABC
Arne
More information about the Info-vax
mailing list