@jsalvador @ekaitz_zarraga web and w3c are the great savior of humanity, let's know downplay the important role the web has played in our daily life!

@jsalvador @ekaitz_zarraga on a more serious note, I plan to only have a single page for my project that will ask the user to install guix and use a terminal based application :D

@zig @jsalvador haha well played.

I'm ok with simple websites but...

I'm working on a form system like google forms but open and with some magic inside and it's horrible to handle error cases, because you have to retain the data and all that... this is killing me.
It's rendered on server side and...

Maybe it's the css lib I'm using but... UGH

I made a custom dsl for this bullshit and I'm not used to this haha. Too complex for me.

@zig @jsalvador Yeah mate. This is killing me. I have to use some of the stuff I learned. ;)

@ekaitz_zarraga @zig @jsalvador a custom dsl? 馃槺 and is it really helpful to solve your problem?

@jartigag It's simpler than you think. DSLs are not necessarily difficult and many of them are just accidental.

In this case I'm creating a simple EDN based file that creates an HTML template and a simple data model to check a form. It's a DSL, let's say but it's just a simplification for the user.

@ekaitz_zarraga markup languages could be dsls then? html, markdown, liquid?

i think i'm afraid of the term "dsl" because of the lucene/elasticsearch query dsl. that's giving me nightmares, man 馃樀

@jartigag DSL means domain specific language. It's a language you use for an specific usecase. It think the difference is similar to the difference between a sect and a religion.

@jartigag Is the markup language just for your case? is it domain specific? then it's a dsl.


A simple example of a dsl are languages that are added to games to describe dialogs for example.

@ekaitz_zarraga es que no estoy entendiendo las "fronteras". cito, por ejemplo:
"El lenguaje SQL es un caso interesante: podr铆a considerarse un DSL porque es espec铆fico para un dominio (en este caso, acceder a las bases de datos relacionales), y se suele utilizar dentro de otra aplicaci贸n; pero SQL tiene m谩s palabras clave y funciones que muchos lenguajes de scripting, y se suele pensar en SQL como en un lenguaje completo."

pero qu茅 se considera un dominio entonses?? 馃槺

@jartigag El dominio es el lugar donde se o d贸nde se pretende usar.

Python es de uso general, no es concreto.
HTML es de uso concreto.

SQL s贸lo es para Queries peeeero resulta muy avanzado. Que sea avanzado no significa que no tenga un dominio limitado. Significa que es avanzado y ya.

En un lenguaje (maduro y bien implementado) el dominio es el mismo que la finalidad o los casos de uso.

@ekaitz_zarraga oooook, i didn't see this toot. that's the analogy i needed, thanks! 馃憣馃憣馃槈

Good examples of DSLs include regular expressions, shells, lex and yacc for parsing, and linq. You can make a DSL with strings that get interpreted, such as printf specifications and regexps, fully external DSLs like bash and sql, or with languages that have lisp-style macros you can make DSL macros that transform the AST during compilation. They can be great tools.

Sign in to participate in the conversation

Server run by the main developers of the project 馃悩 It is not focused on any particular niche interest - everyone is welcome as long as you follow our code of conduct!