Meaning de.CH in Clipper and ADVPL languages?

When we use a language like Clipper or ADVPL, we usually use the libraries ( includes ). CH, but I don't know what it means.

In the C language, these header files have the suffix .H, which means Header File .

I believe it should be Custom Header file or Clipper Header File, but I'm not sure yet.

Therefore, what is the real meaning of the acronym?

Author: Maniero, 2018-12-04

1 answers

Is correct.

You know the .h of C, right? That is, the header file with presets of what will be useful for the code itself of the language? It's the same thing just that it's from ADVPL.

This C is from Clipper, the language that gave rise to ADVPL, so it is not a creation of ADVPL itself but rather a legacy of Clipper. This was adopted precisely not to be confused with the .h of C, something that the Clipper developers worked hard on and even other Clipper users enough to use. We did a lot of C stuff to use with Clipper.

In fact some people at Totvs prefer to adopt as Custom to move away from the Clipper, but neither is a correct meaning for what it actually is.

I didn't find anything that officially documents, but I remember this in Clipper. It does not matter much what the C in the acronym means and rather what the file is for.

Although nothing prevents you from putting anything in .CH in general does not put nothing that is considered the language itself. In fact in Clipper /Harbour/ADVPL this is even a little different from C. In C these things are not part of the language and the preprocessor is quite "dumb", it only exchanges texts without further analysis.

In these languages called xBase the preprocessor is much more powerful, it understands the code better and does much more than just exchange text. So we can even consider it as part of the language.

I don't know if anything has changed, but a while ago ADVPL's preprocessor was a little inferior to Clipper's at some specific points. The Harbour is extremely more powerful and can do some amazing things, it can even abuse a lot. Although most only use for the very basics. No Harbour becomes an almost complete metaprogramming feature.

 1
Author: Maniero, 2020-08-21 13:45:12