___________.__ ________ _____ .___
\__ ___/| |__ ____ \______ \ _____/ ____\____ ____ ____ __| _/
| | | | \_/ __ \ | | \_/ __ \ __\\__ \ _/ ___\/ __ \ / __ |
| | | Y \ ___/ | ` \ ___/| | / __ \\ \__\ ___// /_/ |
|____| |___| /\___ >_______ /\___ >__| (____ /\___ >___ >____ |
\/ \/ \/ \/ \/ \/ \/ \/
-----------------------------------------------------------------------------
_____ ______ _
| __ \| ____| |
| | | | |__ | |
| | | | __| | |
| |__| | | | |____
|_____/|_| |______|
Language Processing Engine
[http://thedefaced.org/dfl] <-- Documentation Wiki
-----------------------------------------------------------------------------
******** DFL Basics ********
DFL (TheDefaced Language) is a programming language created by TheDefaced Security Team. It is built around the standard of application development, however the DFL Engine has the ability to stretch much further.
DFL contains the DFL Engine, which is a parsing engine that processes data it obtains from a predefined file, as well as executes and evaluates the information parsed.
The DFL language is read with the engine, and as it is parsed, information is tallied and recorded for the usage of debugging.
The language itself consists of the delimiting of execution among lines. Each line in DFL code is read by the DFL Engine and the engine determines whether the line should be evaluated. An example of a line that the engine doesn't evaluate are comments.
Lines that are evaluated possess statements. These statements contain 2 elements, a register and a arguments.
Registers are oriented before arguments, but these registers cannot be modified themselves. For more information, view the page that explains this.
An example of a line of DFL would be as following:
---------- DFL CODE ----------
FNC echo STR echo $args;
------------------------------
FNC and STR are examples of registers. The FNC allows for its second argument to be processed as a statement. When a register submits data to the DFL Engine for processing as a statement, not only will that statement in question be added to the stack buffer, but it will return the value of this statement to the stack before it.
Frequently, registers that accept multiple arguments allow for the last argument passed to be processed as a statement, and the execution of the register can use the return of that statement to process its own functionality.
The standard Hello World! DFL code is as follows:
---------- DFL CODE ----------
FNC echo STR echo $args;
RUN echo STR Hello World!
------------------------------
Since DFL has a small runtime requirement a low memory necessity, it can process information that other languages process must faster, sometimes in fractions of fractions of seconds.
Since there are no predefined functions, the hassle of loading each function, most of which may be unnecessary, the high packed library of the language can provide the tools necessary to execute the same functions.
Also, DFL, unlike a lot of other languages that process sets of characters as "tokens", and processes them and parses them. DFL, however, processes the information by sets of delimited data and expectations. By doing so, there is a major loss in time required for processing and less memory required for execution.
******** Registers ********
A register is a three character long internal processing function that is built in with the DFL Engine. Registers receive arguments that are passed to them within statements.
The following is a list of registers:
FNC,VAR,RUN,STR,ERR,ARR,INC,DEP,EVL,RET and DEL.
A register's placement in a statement can be avoided using methods. Methods do no overrule the execution of registers; however methods do provide for an alternative execution.
******** More ********
View the rest of the documentation at http://thedefaced.org/dfl/. The Wiki is an extensive source for documentation of the language. |