I know this is going to get philosophical, but here are my thoughts:

I think I can get behind the idea that DFDL is a programming language in
that it is a series of instructions (like a recipe) that is interpreted by
a DFDL processor (like Apache Daffodil), but I wouldn't go so far as to
call it an executable in the literal sense.  Also the L literally stands
for Language. :P

An executable is a binary file that can be run directly by the
operating system (OS).  An executable can also be a script like a shell
script or python script that has special instruction on the first line that
indicates the interpreter to use (it always begins with #!).  That script
also has the execute bit set so the OS knows that the file is intended to
be run directly or with the special instruction on the first line, it knows
that the file needs to be interpreted by the intended interpreter and it
knows how to make that happen by delegating the file to the interpreter for
interpretation.

XML and JSON files can't be made into such executables because putting a
#!/path/to/DFDL_interpreter at the top of the file is not legal for either
of these file formats.

-Davin

On Wed, Oct 23, 2024 at 1:53 PM Roger L Costello <coste...@mitre.org> wrote:

> Hi Folks,
>
> Consider a Windows EXE file. The file is an executable, right? You "run"
> the file and something happens. Of course, you must run it with the proper
> application, otherwise nothing happens.
>
> Consider a DFDL schema. When you give it to the proper application--such
> as Daffodil--then something happens. If you give it to the wrong
> application, nothing happens.
>
> So a DFDL schema is an executable. Well, perhaps I should not use the word
> "executable" as that has a specific meaning, referring to the Microsoft
> data format. Instead, let me say that a DFDL schema is a "program" and
> Daffodil is an application that runs the program.
>
> So DFDL is a programming language that we use to write programs (which we
> call "DFDL schemas"). Daffodil is an application that runs the programs.
>
> Do you agree?
>
> /Roger
>

Reply via email to