• Welcome to Jose's Read Only Forum 2023.
 

Opinions about ADW Modula

Started by Theo Gottwald, July 16, 2013, 11:20:33 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Richard Koch

#15
i guess thats correct. i use - only when i need - with little work translated free pascal win header files.

Example:


Freepascal:
function SetFilePointer(hFile:HANDLE; lDistanceToMove:LONG; lpDistanceToMoveHigh:PLONG; dwMoveMethod:DWORD):DWORD; external 'kernel32' name 'SetFilePointer';

Modula.
PROCEDURE SetFilePointer(hFile : HANDLE;
                         lDistanceToMove : LONG;
                         lpDistanceToMoveHigh : PLONG;
                         dwMoveMethod : DWORD) : DWORD;



But i don't need windows gui to much, so i don't care. the \ADW Software Modula-2\advapidef has windows etc. header for portability to apple and i use those mostly (see http://modula2.awiedemann.de/). its the rest of the language, its modules, oop and generics is what i care for.
when you look at the \ADW Software Modula-2\examples directory, you find all the easy demos to make dlls etc, and the module def's and mod's show how to change and add win headers.
i attach a module, no cleaned up though, to have graphic in pascal/bgi style.
sorry forgot to mention that there is coco (parser generator) that need and miss for pb etc.

Richard Koch

there is one alternative other language that i kind of use sometimes (x86/x64 compiler):
dlanguage - http://dlang.org/
but it suck when it comes to windows etc., but it is VS integratable (http://wiki.dlang.org/Open_Source_Projects). if modula is nothering for some people, maybe they like this.

Richard Koch

As information:

Version 2.74 - August 2, 2013

    Corrected ResEdit
    Added Unicode support to library
    Correction in debugger when using Generic modules
    Correction of usage of arrays in Generic modules
    WinShell.mod: multiple corrections
    64-bit code generation when using DIV and MOD on 8-bit values

Download ADWm2.74.zip  http://www.modula2.org/adwm2/ADWm2.74.zip

Theo Gottwald

Richard, where can i find the first steps - NOT on Mosula, but on HOW to use the IDE, and just the "HOW TO".
Just how to compile "Hello world" and make a EXE file out of it.
I could not find that nowhere.

Richard Koch

the help file of the compiler content and index -> then select what you like to know. on the language etc consult http://www.modula2.org/.


Theo Gottwald

Ok, the compiler Help-File.
Its a bit short on explaining the concept but possibly all things needed are there.
Where did you learn it?

Richard Koch

this may sound stupid, but i read the help, tried the examples and started to write then my own modules. I am sure you did that with pb too.

Theo Gottwald

I started with PB ... was it 3 or 5 .. its so long ago.
At that time i just wrote the program - and pressed compile.
And the result worked.
Thinking back it seemed to be sooo easy ....

Richard Koch

yes i believe that. this is easy too and i thought the same way with modula. i think the hardest part is, that the thinking compared to PB is different. But when you compare it to PureB, then modula has a clear cut syntax, where as with PureB the syntax is ugly as hell. The Mod. compiler being a long, long time in the field has a minimum of bugs. you can see that easily on the update times they have. but also you should consider, that there are real, sold and serious programs made with modula and with PureB???

Theo Gottwald

I trust you on that Richard.
Actually if i have something to do - of course i still use PB because i know how to do it.
I'll have to take time and go through the help and see how to make things in Modula.
How do you make GUI's?
Is there a visual Designer available somewhere?
I understood it right, that Modula can really mak x64 DLL's and EXE's?

Richard Koch

The compiler will make 32/64 bit dll's and exe's, but i don't use 32 bit anymore - nobody wants it.
You can debug 32/64 bit dll's and exe's.
Unfortunately there is no gui builder, but thats not so bad. it is easy to use \ADW Software Modula-2\advapidef to make one. There is also FormEditUI which is very handy to use.