32-bit MSDOS (Announce)
> > I agree with mceric here. You risk having to rewrite minimize programs
> to
> > suit the minimal C functionality, reducing the compiler to some basic C
> > equivalent syntax and libraries only.
>
> Does ISO Pascal, standardized in 1990, same
> time as C90, have more functionality than
> it's C counterpart?
Pascal dialects are complex, and most used dialects do not confirm to standards. First, the most common dialect family, the Borland derived dialects are not ISO compliant. They derive from a pre standard bootstrap subset used for the important UCSD dialect. (the one that popularized bytecode)
Second there are three important standards. The 1983 Standard Pascal standard (ISO 7185) which has two levels, level zero and one. The difference is afaik most conformant arrays and schemata, things that are strangely modern (Safe constructs for static procedural programming, has echoes in Ada,Rust,Go syntax)
And the 1990 Extended Pascal standard. (Iso 10206:1990)
I'd say Standard Pascal is a bit larger than standard C, and less keen on not having constructs that require runtime support, but because it doesn't assume a linear memory model, it does not allow things like pointer arithmetic. Think of pointers like handles only. You can malloc and free them, but not manipulate them. So it is not a complete superset.
The level 1 extensions allow to define data types with variable sized arrays inside (e.g. for static char[] in structs), and for those variant parts (so called discriminants) to be only chosen at a new() call (a typed malloc call, like new in C++)
Extended Pascal adds modular programming.
Free Pascal however was not standard compliant and supported the much more popular Borland dialects (Turbo Pascal, Delphi). The latter in particular includes everything and the kitchen sink.
Most importantly for you this side of the dialects (and the default mode of FPC) adds among others pointer manipulation.
> Pascal programmers, of which I am now one, do
> not speak with one voice. Some of us see the
> value in supporting the only public domain
> operating system that supports Win32 executables.
Yeah, I get it, only for you. I was still reacting with a long view of resurrecting a Windows 95 port for public consumption, but it is clear it is not going that way.
> > Pascal can directly call C counterparts. Just do the
> > glue code in pascal and call the C function. Then you
> > don't need stubs or nothing.
>
> I don't know how to do that. I know (very) basic
> assembler though.
Pascal is mostly like C with different syntax. You can't assign anything in-expression like C can, and you don't have a ? operator, and some of the most complicated union definitions can't always get translated (though on x86 that is not important as the limitations have to do with architectures with complex forms of alignment)
But for the rest you can mostly convert C to Pascal 1:1 as soon as you know the base syntax. Doing as much as possible in HLL make the result more resilient. (to e.g. calling convention and name mangling changes)
Complete thread:
- 32-bit MSDOS - kerravon, 26.06.2021, 15:52 (Announce)
- 32-bit MSDOS - tom, 27.06.2021, 13:23
- 32-bit MSDOS - kerravon, 27.06.2021, 13:46
- 32-bit MSDOS - tom, 27.06.2021, 14:14
- 32-bit MSDOS - kerravon, 27.06.2021, 14:58
- 32-bit MSDOS - Japheth, 27.06.2021, 16:09
- 32-bit MSDOS - kerravon, 27.06.2021, 17:46
- 32-bit MSDOS - Japheth, 28.06.2021, 05:54
- 32-bit MSDOS - kerravon, 28.06.2021, 07:15
- 32-bit MSDOS - RayeR, 28.06.2021, 13:43
- 32-bit MSDOS - kerravon, 28.06.2021, 15:04
- 32-bit MSDOS - tkchia, 28.06.2021, 19:00
- 32-bit MSDOS - kerravon, 29.06.2021, 00:34
- 32-bit MSDOS - kerravon, 29.06.2021, 01:52
- 32-bit MSDOS - marcov, 30.06.2021, 15:11
- 32-bit MSDOS - kerravon, 30.06.2021, 22:32
- 32-bit MSDOS - marcov, 30.06.2021, 22:42
- 32-bit MSDOS - kerravon, 30.06.2021, 22:57
- 32-bit MSDOS - marcov, 01.07.2021, 09:45
- 32-bit MSDOS - kerravon, 01.07.2021, 13:39
- 32-bit MSDOS - marcov, 01.07.2021, 15:54
- 32-bit MSDOS - kerravon, 02.07.2021, 00:59
- 32-bit MSDOS - kerravon, 02.07.2021, 13:31
- 32-bit MSDOS - marcov, 03.07.2021, 19:28
- 32-bit MSDOS - kerravon, 04.07.2021, 01:55
- 32-bit MSDOS - marcov, 04.07.2021, 22:29
- 32-bit MSDOS - kerravon, 05.07.2021, 00:31
- 32-bit MSDOS - marcov, 05.07.2021, 10:05
- 32-bit MSDOS - kerravon, 05.07.2021, 10:28
- 32-bit MSDOS - mceric, 05.07.2021, 12:40
- 32-bit MSDOS - kerravon, 05.07.2021, 14:00
- 32-bit MSDOS - mceric, 05.07.2021, 16:27
- 32-bit MSDOS - kerravon, 05.07.2021, 23:55
- 32-bit MSDOS - tom, 06.07.2021, 09:51
- 32-bit MSDOS - kerravon, 06.07.2021, 11:06
- 32-bit MSDOS - kerravon, 07.07.2021, 09:31
- 32-bit MSDOS - kerravon, 06.07.2021, 11:06
- 32-bit MSDOS - tom, 06.07.2021, 09:51
- 32-bit MSDOS - kerravon, 05.07.2021, 23:55
- 32-bit MSDOS - mceric, 05.07.2021, 16:27
- 32-bit MSDOS - kerravon, 05.07.2021, 14:00
- 32-bit MSDOS - mceric, 05.07.2021, 12:40
- 32-bit MSDOS - kerravon, 05.07.2021, 10:28
- 32-bit MSDOS - marcov, 05.07.2021, 10:05
- 32-bit MSDOS - kerravon, 05.07.2021, 00:31
- 32-bit MSDOS - marcov, 04.07.2021, 22:29
- 32-bit MSDOS - kerravon, 04.07.2021, 01:55
- 32-bit MSDOS - marcov, 03.07.2021, 19:28
- 32-bit MSDOS - marcov, 02.07.2021, 14:05
- 32-bit MSDOS - kerravon, 02.07.2021, 15:19
- 32-bit MSDOS - marcov, 02.07.2021, 16:02
- 32-bit MSDOS - mceric, 02.07.2021, 17:15
- 32-bit MSDOS - kerravon, 02.07.2021, 17:43
- 32-bit MSDOS - kerravon, 03.07.2021, 05:14
- 32-bit MSDOS - mceric, 03.07.2021, 13:03
- 32-bit MSDOS - kerravon, 03.07.2021, 13:16
- 32-bit MSDOS - marcov, 03.07.2021, 15:35
- 32-bit MSDOS - kerravon, 03.07.2021, 15:45
- 32-bit MSDOS - marcov, 03.07.2021, 19:06
- 32-bit MSDOS - kerravon, 04.07.2021, 02:00
- 32-bit MSDOS - kerravon, 04.07.2021, 02:50
- 32-bit MSDOS - marcov, 04.07.2021, 22:59
- 32-bit MSDOS - kerravon, 05.07.2021, 00:51
- 32-bit MSDOS - marcov, 05.07.2021, 10:00
- 32-bit MSDOS - kerravon, 05.07.2021, 10:23
- 32-bit MSDOS - marcov, 05.07.2021, 13:19
- 32-bit MSDOS - kerravon, 05.07.2021, 13:48
- 32-bit MSDOS - marcov, 05.07.2021, 13:19
- 32-bit MSDOS - kerravon, 05.07.2021, 10:23
- 32-bit MSDOS - marcov, 05.07.2021, 10:00
- 32-bit MSDOS - kerravon, 05.07.2021, 00:51
- 32-bit MSDOS - marcov, 04.07.2021, 22:59
- 32-bit MSDOS - kerravon, 04.07.2021, 03:10
- 32-bit MSDOS - kerravon, 04.07.2021, 03:15
- 32-bit MSDOS - kerravon, 04.07.2021, 05:24
- 32-bit MSDOS - kerravon, 04.07.2021, 05:32
- 32-bit MSDOS - marcov, 04.07.2021, 23:08
- 32-bit MSDOS - kerravon, 05.07.2021, 01:00
- 32-bit MSDOS - kerravon, 05.07.2021, 04:10
- 32-bit MSDOS - tkchia, 05.07.2021, 15:09
- 32-bit MSDOS - kerravon, 05.07.2021, 15:48
- 32-bit MSDOS - kerravon, 05.07.2021, 01:00
- 32-bit MSDOS - kerravon, 04.07.2021, 05:43
- 32-bit MSDOS - kerravon, 04.07.2021, 07:06
- 32-bit MSDOS - kerravon, 04.07.2021, 07:35
- 32-bit MSDOS - kerravon, 04.07.2021, 05:24
- 32-bit MSDOS - tkchia, 04.07.2021, 09:16
- 32-bit MSDOS - kerravon, 04.07.2021, 10:13
- 32-bit MSDOS - tkchia, 04.07.2021, 11:03
- 32-bit MSDOS - kerravon, 04.07.2021, 11:14
- 32-bit MSDOS - tkchia, 04.07.2021, 11:03
- 32-bit MSDOS - kerravon, 04.07.2021, 10:13
- 32-bit MSDOS - marcov, 04.07.2021, 22:57
- 32-bit MSDOS - kerravon, 05.07.2021, 00:48
- 32-bit MSDOS - kerravon, 04.07.2021, 03:15
- 32-bit MSDOS - marcov, 04.07.2021, 22:37
- 32-bit MSDOS - kerravon, 05.07.2021, 00:33
- 32-bit MSDOS - kerravon, 04.07.2021, 02:50
- 32-bit MSDOS - kerravon, 04.07.2021, 02:00
- 32-bit MSDOS - marcov, 03.07.2021, 19:06
- 32-bit MSDOS - kerravon, 03.07.2021, 15:45
- 32-bit MSDOS - marcov, 03.07.2021, 15:35
- 32-bit MSDOS - kerravon, 03.07.2021, 13:16
- 32-bit MSDOS - marcov, 03.07.2021, 14:30
- 32-bit MSDOS - marcov, 03.07.2021, 14:47
- 32-bit MSDOS - kerravon, 03.07.2021, 15:39
- 32-bit MSDOS - marcov, 03.07.2021, 16:12
- 32-bit MSDOS - kerravon, 03.07.2021, 16:23
- 32-bit MSDOS - marcov, 03.07.2021, 16:12
- 32-bit MSDOS - mceric, 03.07.2021, 13:03
- 32-bit MSDOS - kerravon, 03.07.2021, 05:14
- 32-bit MSDOS - kerravon, 02.07.2021, 17:43
- 32-bit MSDOS - kerravon, 02.07.2021, 17:40
- 32-bit MSDOS - marcov, 03.07.2021, 14:02
- 32-bit MSDOS - kerravon, 03.07.2021, 14:41
- 32-bit MSDOS - marcov, 03.07.2021, 15:54
- 32-bit MSDOS - kerravon, 03.07.2021, 16:16
- user32.dll - marcov, 03.07.2021, 19:48
- user32.dll - kerravon, 04.07.2021, 02:20
- user32.dll - marcov, 04.07.2021, 23:17
- user32.dll - kerravon, 05.07.2021, 01:07
- user32.dll - marcov, 04.07.2021, 23:17
- user32.dll - kerravon, 04.07.2021, 02:20
- user32.dll - marcov, 03.07.2021, 19:48
- 32-bit MSDOS - kerravon, 03.07.2021, 16:16
- 32-bit MSDOS - marcov, 03.07.2021, 15:54
- 32-bit MSDOS - kerravon, 03.07.2021, 14:41
- 32-bit MSDOS - marcov, 03.07.2021, 14:02
- 32-bit MSDOS - mceric, 02.07.2021, 17:15
- 32-bit MSDOS - marcov, 02.07.2021, 16:02
- 32-bit MSDOS - kerravon, 02.07.2021, 15:19
- 32-bit MSDOS - kerravon, 02.07.2021, 13:31
- 32-bit MSDOS - kerravon, 02.07.2021, 00:59
- 32-bit MSDOS - marcov, 01.07.2021, 15:54
- 32-bit MSDOS - kerravon, 01.07.2021, 13:39
- 32-bit MSDOS - marcov, 01.07.2021, 09:45
- 32-bit MSDOS - kerravon, 30.06.2021, 22:57
- 32-bit MSDOS - marcov, 30.06.2021, 22:42
- 32-bit MSDOS - kerravon, 30.06.2021, 22:32
- 32-bit MSDOS - tkchia, 30.06.2021, 19:04
- 32-bit MSDOS - kerravon, 30.06.2021, 22:42
- 32-bit MSDOS - marcov, 30.06.2021, 22:47
- 32-bit MSDOS - kerravon, 30.06.2021, 23:14
- 32-bit MSDOS - marcov, 30.06.2021, 22:47
- 32-bit MSDOS - kerravon, 30.06.2021, 22:42
- 32-bit MSDOS - marcov, 30.06.2021, 15:11
- 32-bit MSDOS - kerravon, 29.06.2021, 01:52
- 32-bit MSDOS - kerravon, 29.06.2021, 00:34
- 32-bit MSDOS - tom, 28.06.2021, 20:47
- 32-bit MSDOS - kerravon, 29.06.2021, 00:21
- 32-bit MSDOS - tkchia, 28.06.2021, 19:00
- 32-bit MSDOS - tkchia, 28.06.2021, 19:09
- 32-bit MSDOS - kerravon, 29.06.2021, 05:16
- 32-bit MSDOS - Japheth, 29.06.2021, 05:40
- 32-bit MSDOS - kerravon, 29.06.2021, 07:14
- 32-bit Public Domain DOS - tom, 30.06.2021, 22:19
- 32-bit MSDOS - Japheth, 29.06.2021, 05:40
- 32-bit MSDOS - kerravon, 28.06.2021, 15:04
- 32-bit MSDOS - RayeR, 28.06.2021, 13:43
- 32-bit MSDOS - kerravon, 28.06.2021, 07:15
- 32-bit MSDOS - Japheth, 28.06.2021, 05:54
- 32-bit MSDOS - kerravon, 27.06.2021, 18:00
- 32-bit MSDOS - kerravon, 27.06.2021, 18:31
- 32-bit MSDOS - kerravon, 27.06.2021, 18:47
- 32-bit MSDOS - Japheth, 27.06.2021, 20:40
- 32-bit MSDOS - kerravon, 27.06.2021, 20:57
- 32-bit MSDOS - kerravon, 27.06.2021, 22:12
- 32-bit MSDOS - kerravon, 27.06.2021, 20:57
- 32-bit MSDOS - Japheth, 27.06.2021, 20:40
- 32-bit MSDOS - bocke, 14.09.2021, 11:33
- 32-bit MSDOS - kerravon, 27.06.2021, 18:47
- 32-bit MSDOS - kerravon, 27.06.2021, 18:31
- 32-bit MSDOS - kerravon, 27.06.2021, 17:46
- 32-bit MSDOS - Japheth, 27.06.2021, 16:09
- 32-bit MSDOS - kerravon, 27.06.2021, 14:58
- YAOIS - Yet Another Irrelevant Operating System - tom, 27.06.2021, 20:03
- 32-bit MSDOS - kerravon, 27.06.2021, 20:18
- YAOIS - Yet Another Irrelevant Operating System - kerravon, 27.06.2021, 20:23
- YAOIS - Yet Another Irrelevant Operating System - mceric, 27.06.2021, 20:28
- YAOIS - Yet Another Irrelevant Operating System - kerravon, 27.06.2021, 20:47
- YAOIS - Yet Another Irrelevant Operating System - kerravon, 27.06.2021, 20:51
- YAOIS - Yet Another Irrelevant Operating System - kerravon, 27.06.2021, 20:53
- YAOIS - Yet Another Irrelevant Operating System - kerravon, 27.06.2021, 20:54
- YAOIS - Yet Another Irrelevant Operating System - rr, 27.06.2021, 21:21
- YAOIS - Yet Another Irrelevant Operating System - kerravon, 27.06.2021, 20:54
- YAOIS - Yet Another Irrelevant Operating System - kerravon, 27.06.2021, 20:53
- YAOIS - Yet Another Irrelevant Operating System - kerravon, 27.06.2021, 20:51
- YAOIS - Yet Another Irrelevant Operating System - kerravon, 27.06.2021, 20:47
- YAOIS - Yet Another Irrelevant Operating System - kerravon, 27.06.2021, 21:30
- YAOIS - Yet Another Irrelevant Operating System - kerravon, 27.06.2021, 21:59
- a.out support in dos - DosWorld, 04.07.2021, 11:22
- a.out support in dos - kerravon, 04.07.2021, 12:01
- a.out support in dos - marcov, 04.07.2021, 23:22
- 32-bit MSDOS - DosWorld, 24.09.2021, 20:54
- 32-bit MSDOS - tom, 27.06.2021, 14:14
- 32-bit MSDOS - kerravon, 27.06.2021, 13:46
- 32-bit MSDOS - RayeR, 28.06.2021, 03:59
- 32-bit MSDOS - kerravon, 28.06.2021, 07:13
- 32-bit MSDOS - Zyzzle, 28.06.2021, 06:22
- 32-bit MSDOS - kerravon, 28.06.2021, 07:30
- 32-bit MSDOS - marcov, 30.06.2021, 22:49
- 32-bit MSDOS - kerravon, 30.06.2021, 23:08
- 32-bit MSDOS - mceric, 01.07.2021, 01:52
- 32-bit MSDOS - kerravon, 01.07.2021, 06:37
- 32-bit MSDOS - tkchia, 03.07.2021, 22:13
- 32-bit MSDOS - kerravon, 04.07.2021, 01:50
- 32-bit MSDOS - tkchia, 04.07.2021, 09:08
- 32-bit MSDOS - kerravon, 04.07.2021, 10:05
- 32-bit MSDOS - tkchia, 04.07.2021, 10:53
- 32-bit MSDOS - kerravon, 04.07.2021, 10:05
- 32-bit MSDOS - tkchia, 04.07.2021, 09:08
- 32-bit MSDOS - kerravon, 04.07.2021, 01:50
- 32-bit MSDOS - Brian_extended, 24.07.2021, 02:10
- 32-bit MSDOS - kerravon, 06.08.2021, 13:56
- 32-bit Public Domain OS - tom, 06.08.2021, 15:21
- 32-bit Public Domain OS - kerravon, 06.08.2021, 15:57
- 32-bit Public Domain OS - tom, 06.08.2021, 15:21
- 32-bit MSDOS - kerravon, 07.08.2021, 05:41
- 32-bit MSDOS - kerravon, 06.08.2021, 13:56
- 32-bit MSDOS - mceric, 01.07.2021, 01:52
- 32-bit MSDOS - kerravon, 30.06.2021, 23:08
- 32-bit MSDOS - RayeR, 03.08.2021, 06:59
- 32-bit MSDOS - kerravon, 06.08.2021, 13:50
- 32-bit MSDOS - RayeR, 06.08.2021, 15:09
- 32-bit MSDOS - kerravon, 06.08.2021, 16:07
- 32-bit MSDOS - RayeR, 20.08.2021, 18:59
- 32-bit MSDOS - kerravon, 27.09.2021, 04:28
- 32-bit MSDOS - mceric, 28.09.2021, 01:04
- 32-bit MSDOS - kerravon, 14.10.2021, 04:37
- 32-bit MSDOS - mceric, 28.09.2021, 01:04
- 32-bit MSDOS - kerravon, 27.09.2021, 04:28
- 32-bit MSDOS - RayeR, 20.08.2021, 18:59
- 32-bit MSDOS - kerravon, 06.08.2021, 16:07
- 32-bit MSDOS - RayeR, 06.08.2021, 15:09
- 32-bit MSDOS - kerravon, 06.08.2021, 13:50
- 32-bit MSDOS - dggionco, 09.08.2021, 14:43
- 32-bit MSDOS - kerravon, 09.08.2021, 15:39
- 32-bit MSDOS - dggionco, 09.08.2021, 20:00
- 32-bit MSDOS - kerravon, 09.08.2021, 21:25
- 32-bit MSDOS - dggionco, 10.08.2021, 14:58
- 32-bit MSDOS - kerravon, 10.08.2021, 17:06
- 32-bit MSDOS - dggionco, 10.08.2021, 18:06
- 32-bit MSDOS - kerravon, 10.08.2021, 17:06
- 32-bit MSDOS - dggionco, 10.08.2021, 14:58
- 32-bit MSDOS - kerravon, 09.08.2021, 21:25
- 32-bit MSDOS - dggionco, 09.08.2021, 20:09
- 32-bit MSDOS - dggionco, 09.08.2021, 20:00
- 32-bit MSDOS - kerravon, 09.08.2021, 15:39
- 32-bit MSDOS - tom, 27.06.2021, 13:23