diff --git a/efp/efp-x/main.xml b/efp/efp-x/main.xml new file mode 100644 index 0000000..b08bd70 --- /dev/null +++ b/efp/efp-x/main.xml @@ -0,0 +1,51 @@ + + + + + + + + +
+ +

+ This document introduces an advisory explanation of programming levels, widely categorized + as "low level" and "high level" in different contexts. +

+
+
+
+ +

+ In general, low-level programming indicates that the specific piece of code with + a certain level of raw manipulation of computer resources. Thus, extra caution is always + necessary as this structure may contain unobvious but critical code that may lead to + unintended behaviors. +

+

+ In this case, usually compiler warnings or errors, or even runtime errors, may not + indicate the actual issues induced by a previous change, for the reason of extra caution. + As a general advice, checking the compliance to intended behaviors by debugging the code, + and checking the previous change may typically help. +

+
+
+
+ +

+ Sometimes, abstraction programming may also contain, so-called "low-level" code. + In this sense, when a piece of abstract code contain a little amount of abstraction, + it may be said to be low-level. In the codebase written in high abstraction code, + low abstraction code may still be used somewhere, to act as a backbone of the higher-level + counterparts. +

+

+ When low-level abstraction code is to be handled, it should be treated like generally + low-level code. However, low-level code patterns should not be present in high-level + code to maintain the level of code. +

+
+
+ +