[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: How are system parameters entered into s-taprop.adb?



*.ads files are specification files - they contain only specifications
of procedures, functions, interfaces, constants, tasks, etc. while
*.adb files are implementations of corresponding .ads file (ie.
some_package.adb is implementation of specification some_package.ads).
One can compare it to .h and .c files in C (though specifications in
Ada are much more important than in C).

Looks like if there is an .adb file present, the corresponding .ads
file is not compiled. Can I freely remove the .adb file to get the .ads
file compiled. In case there are both .adb and .ads files available,
what is the function of the .ads file??

.ads files can be seen as a contract for the library user
you can compile it alone (-gnatc flag) even if there is a .adb associated to check its syntax

Once your specification file is ok you can distribute it while you are developing the body of your library. In the meantime the library users can use your specification file plus gnatstub to generate a dummy body in order to start their own code.

Reply to: