5 ms·
If you can use a Domain Specific Language (DSL) for a task, or in this case a Domain Specific Modelling Language (DSML), why wouldn't you use one? It's no diff
by ReflectedImage 4y ago
If you can use a Domain Specific Language (DSL) for a task, or in this case a Domain Specific Modelling Language (DSML), why wouldn't you use one?
It's no different from using SQL for database access.
Basically, someone has to do a ton of upfront work designing a domain specific language for a task, in this case game scripting then it's easier for people to do the game scripting using the domain specific language than using a general purpose language.
SQL is an early example of a language designed for a specific purpose.
- pphysch 4y ago> why wouldn't you use one? Mental overhead
- Fr0styMatt88 4y agoI’ve been trying to clarify my own opinion on this in words for awhile now and what you’ve written is pretty much what I think too. I hate coding stuff that I know could be better expressed with a visual graph or say, an animation curve. As a software dev on a team I view my job as making tools that the actual game designers and artists can then use to make better games with less effort and while having more fun doing so. I work with Mecanim in Unity a lot, so it’s not quite Blueprints but it’s similar in that you need to think like a coder still when you’re setting things up.
- smaudet 4y ago> I hate coding stuff that I know could be better expressed with a visual graph or say, an animation curve. I hate coding animations in CSS, but I enjoy watching them in e.g. devtools. I really wish I could see the representation of my code visually more often. Immediate mode UIs are sort of like this, but I've rarely seen tools which actually show while coding. We unit test (or try to) every new feature, why shouldn't we be able to visualize them too?
- easrng 4y agoAnd visual editors for DSLs are also easier to implement with libraries like Blockly, because the user is editing the AST directly, there's no parsing step. Also, you can make it much more obvious where things are invalid.
- jayd16 4y agoWell sure, but the question is why are graphical languages the DSL of choice?
- tinco 4y agoI think they make the restrictions of pure functional programming more intuitive to deal with. Working in blueprint is basically like working in Haskell, but anyone who spends 5 minutes learning the ropes in blueprint can immediately be productive. Contrast to Haskell where programmers need to almost have their brains restructured to work within the confinements of pure programming and be productive. So I believe the plan is to trick the content creators and less strong programmers into using a purely functional programming language so that they produce less bugs. Anyway that's my take on it, I only made a few demo games in blueprint and really enjoyed it, I haven't used it in anger so to say so someone who's actually in the industry might speak better to it's actual merit.