News for hackers. Stuff that matters.
Re:A Case for a New Language by heavenlyblue on Saturday February 23, 2019 @08:28PM (#19236553)
DSL is more like a generalisation of config files.
Re:A Case for a New Language by karmakaze on Sunday February 24, 2019 @10:11AM (#19238820)
Mose DSLs I encounter started as configs and tend to be inelegant because they're incidental rather than planned languages. I applaud thinking in terms of languages up front and exercising restraint to keep it to the bare minimum.
Re:A Case for a New Language by mutagen on Saturday February 23, 2019 @10:27PM (#19236938)
While that is one quite useful application of DSLs, they're certainly used more widely than config files. Care to expand further?
Re:A Case for a New Language by heavenlyblue on Sunday February 24, 2019 @03:14AM (#19237666)
I said "generalisation". You're thinking I mean DSLs in a static way - where they compile to a single static structure that is like a configuration file. I am trying to redefine the term here instead, because it seems more appropriate.

Essentially what I am asking here is: where do we set the line between "scripts" and "configuration files"? Because scripts are simply configuration files with a tree-like structure as they represent programs.

Scripts "configure the execution paths of your program".

A DSL thus is just a configuration file with a set of rules of applying those tree-like structures to each other.

Re:A Case for a New Language by elcomet on Sunday February 24, 2019 @04:47AM (#19237929)
Scripts are definitely not configuration file.

I would say the line is Turing-completeness.

For me, DSL are half way between configuration files and scripts. If they are not Turing complete they are configuration languages. If they are, then they are programming language (with a specific use case).

And I think that it is usually a bad idea to have configuration files in Turing complete languages (with exceptions, it can certainly be done well).

Re:A Case for a New Language by heavenlyblue on Sunday February 24, 2019 @10:24AM (#19238873)
>> Scripts are definitely not configuration file.

>> I would say the line is Turing-completeness.

>> For me, DSL are half way between configuration files and scripts

_you_ would say.

>> If they are not Turing complete they are configuration languages. If they are, then they are programming language (with a specific use case).

Or, you could say that DSLs are what they are: "Domain Specific Languages". Which means that can either be a set of static definitions a-la configuration file, or on another side they can be scripts.

All of these definitions fit really well the meaning of "Domain Specific Language".