问题标签 [dsl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
498 浏览

api - 为什么 DSL 需要解析工具?

难道 DSL 不能像 API 一样简单,因此不需要解析器吗?还是我误解了领域特定语言的真正含义?我认为它指的是解决特定领域问题的任何有组织的规则集。API 似乎符合这个定义,对吧?

0 投票
2 回答
2478 浏览

ruby-on-rails - 我们可以将 RubyOnRails 用于银行和金融交易领域吗

我们可以使用 RubyOnRails 框架来开发金融交易和银行交易的网站吗?

RubyonRails 是银行领域的 DSL。

在 DSL 上的某些日子里,我相信银行系统的大部分事实都是静态的,它们可能不需要任何后续更改......同时。因此,定义 DSL,必须采用一种方法。

0 投票
2 回答
731 浏览

c++ - 在 C++ 项目中使用特定于域的语言文件

我正在使用自己的图形编辑器开发 DSL。此类文件具有 .own 扩展名。我还有一个小工具,可以将 .own 文件编译成 .h 文件。

X.own --> Xh 和 X/*.h

我编写了一个简单的 .rules 文件来启动生成。

我的问题如下:我的大多数源文件都包含 Xh,但 X.own 的更改并不意味着生成的 Xh(或任何其他生成的文件)会有所不同。这由生成器通过使用临时文件和文件比较来处理。但是 Visual Studio 似乎并不知道如何处理这一切。如果我将“输出文件”属性设置为正确的文件,它总是假定它们将被更改。如果我不这样做,它会假设它们不会生成它的构建过程!

我怎样才能把事情做好?

1)启动自定义构建工具

2)基于依赖计算构建过程

0 投票
4 回答
150 浏览

function - 深思熟虑的方法/函数名称是否创建了 DSL?

我在想,方法名称和它们的调用似乎在你的代码中创建了一个 DSL,通过包装通用的东西并为你想要实现的目标适当地命名它。

你知道,所以很容易推断出下面的意思

但是如果不研究它,方法中的代码可能真的很难解释。

我知道人们有时会认为整个 DSL 有什么特别之处——我们是否一直在代码中创建它们?

0 投票
11 回答
6627 浏览

.net - 在为规则引擎创建 DSL 时使用什么技术?

您会推荐什么技术来为 .NET 的业务规则和验证应用程序块创建 DSL ?为什么?

框架的架构由产品建立和验证测试。我只想创建一个 .NET 处理器来将人类可读的规则转换为已编译的规则实现。

我知道的选项是:

不幸的是,考虑到 DSL 语法(它会不断发展),这些方法都没有提供任何东西来构建或多或少友好的 IDE 来编辑 DSL。

有什么想法或提示吗?

0 投票
1 回答
417 浏览

.net - 按需加载 Iron Ruby DSL 文件

目前,我有一个应用程序存储用 boo 内部 DSL 编写的元数据信息。

我将元数据存储在单独的 .boo 文件中,当我需要它们时,我会像这样加载它们:

IConfigReader reader = factory.Create(BUILD_FILE_NAME);

我想通过将 boo DSL 转换为 Iron Ruby 来利用 Iron Ruby 或实际上 Ruby 的元编程。

首先,是否可以以这种方式加载 Ruby 文件,其次,我可以将数据结构从 DLR 返回到 CLR。

我真的不明白,这是有道理的。

0 投票
1 回答
705 浏览

linq - 用于 Linq 查询的 DSL - 寻找想法

我目前正在使用一个 CMS,它使用带有自己定制查询语言的 ORM(即使用 select/where/orderby 之类的语句)。我将这种迷你语言称为 DSL,但我可能用错了术语。

我们正在为此 CMS 编写控件,但我不希望将控件耦合到 CMS,因为我们对是否要长期继续使用此 CMS 有一些疑问。

通过使用我们自己的 DAL/抽象层或其他什么,我们可以很容易地将我们的控件与 CMS 分离。

然后我记得在大多数 CMS 控件上,它们提供了一个属性(设计时可编辑),用户可以在其中键入查询来控制数据源中填充的内容。不错的功能 - 问题是我如何抽象这个功能?

然后我想到可能存在一个 DSL 框架,它可以为我提供一种简单的查询语言,可以在运行时转换为 LINQ 表达式。从而使我与 CMS 的查询 DSL 脱钩。

这样的事情存在吗?我在浪费时间吗?(可能是后者)

谢谢

0 投票
7 回答
3990 浏览

c# - DSL/流利的接口有什么意义

我最近正在观看有关如何创建流畅的 DSL的网络广播,我不得不承认,我不明白为什么要使用这种方法(至少对于给定的示例)。

网络广播展示了一个图像大小调整类,它允许您使用以下语法(使用 C#)指定输入图像、调整大小并将其保存到输出文件:

我不明白这比采用一些参数的“传统”方法更好:

从可用性的角度来看,这似乎更容易使用,因为它清楚地告诉您方法期望作为输入的内容。相比之下,使用流畅的界面,没有什么能阻止您省略/忘记参数/方法调用,例如:

那么关于我的问题:

1 -有什么方法可以提高流畅界面的可用性(即告诉用户他应该做什么)?

2 -这种流畅的接口方法是否只是 C# 中不存在的命名方法参数的替代品?命名参数是否会使流利的接口过时,例如类似的objective-C提供的东西:

3 -流畅的界面是否仅仅因为它们目前很流行而被过度使用?

4 -或者它只是为网络广播选择的一个坏例子?在这种情况下,请告诉我这种方法的优点是什么,在哪里使用它有意义。

顺便说一句:我知道 jquery,并且看到它使事情变得多么容易,所以我不是在寻找关于那个或其他现有示例的评论。

我更多的是寻找一些(一般的)评论来帮助我理解(例如)何时实现一个流畅的接口(而不是一个经典的类库),以及在实现一个时要注意什么。

0 投票
1 回答
100 浏览

.net - DSLs and Form Creation

I'm currently working on the requirements/scoping of a project now that could involve:
1) 5 to 6 forms
2) with 250 to 300 questions/fields accross the forms
3) 2 to 3 workflows

Are there any .NET or cross-platform tools that will allow me to put the responsibility of developing the forms back onto a non-technical Business Analyst? Are there any good DSLs for this? I think this person would NOT be sucessful at trying to use InfoPath for this.

I guess I'm looking for a DSL that I could put through an engine at runtime to display the CRUD screens. I'd rather not use my own XML or DSL if there is something like this already out there.

I'm thinking I would display the forms as part of an ASP.NET WebForm or ASP.NET MVC application.

0 投票
7 回答
528 浏览

blogs - 特定领域的语言博主

我目前需要大大增加我对 DSL 的了解。谁是 DSL 中的大人物?我应该阅读哪些博客?