dsl

    1熱度

    2回答

    我需要製作一個輸出類似於SQL的語言的DSL。首先,我想通過使用遞歸下降解析器+簡單的代碼生成方法來編輯我自己的編譯器。但是,由於DSL語言非常簡單,輸出語言也很簡單,所以我意識到我會嘗試尋找一種耗時更少,更省電的方法,我不會重新發明輪子,就像更強大的C預處理器版本一樣。首先想到的是m4,我以前只聽說過,從未使用過。我正在閱讀一些教程/文檔,但我仍然不確定我是否可以使用此工具完成我的目標。 例如,

    3熱度

    1回答

    一個回合制遊戲的一種簡單形式可以以功能性的語言作爲被抽象: data Player = PlayerA | PlayerB deriving Show data Game state move = Game { start :: state, turn :: (move, move) -> state -> Either P

    0熱度

    1回答

    在Ruby中,當您設計嵌入式DSL時,一個非常有用的技巧是利用instance_eval。這樣,可以通過實施他們作爲一個特殊的對象私有方法提供了一定的塊中的特殊語句。這對於上下文來說非常好。 舉個例子看看:https://robots.thoughtbot.com/writing-a-domain-specific-language-in-ruby 我想知道的最接近的將是一個斯卡拉EDSL什麼?更

    1熱度

    1回答

    我是Spring Integration DSL的新手。目前,我試圖在消息通道「ordersChannel」和「bookItemsChannel」之間添加一個延遲 。但是,流程繼續,好像沒有延遲。 任何幫助表示讚賞。 下面是代碼: @Bean public IntegrationFlow ordersFlow() { return IntegrationFlows.from("orde

    1熱度

    1回答

    我想在Eclipse中創建一個具有圖形支持的DSL。對於DSL我使用Xtext,但無法找到如何集成圖形部分的好例子。我還沒有決定採用其中一種技術來證明圖形部分,並準備使用任何一種技術。 有沒有人現在的好例子?

    2熱度

    2回答

    Vagrant.configure(2) do |config| config.vm.define "chefnode" do |chefnode| chefnode.vm.box = "geerlingguy/ubuntu1604" chefnode.vm.hostname = 'cnode' chefnode.vm.network "public_net

    1熱度

    1回答

    我試圖用spring集成定義一個錯誤流。在我進行http調用之前,我正在爲我想要處理的資源設置一個自定義標頭形式的標識 - 但是這會返回一個錯誤(不是2xx http代碼),所以我定義了GenericTransform類來取出錯誤,並採取資源的id(從headeR中提取)。但是這似乎並沒有像那樣工作,我不再能夠訪問在執行HTTP代碼之前定義的自定義頭文件。 這是如何實現的?在下面的代碼中,我可以添

    0熱度

    1回答

    我正在尋找在另一個字段上過濾之後在字段上執行聚合的方式。但是,彈性搜索文檔不容易理解。 比方說我的映射: [ { a:'a1' b:'b1' c:120 d:12 }, { a:'a2' b:'b1' c:170 d:15 } { a:'a3' b:

    0熱度

    1回答

    以下映射在使用另一個字段對文檔進行分組的文檔的多個級別上彙總。 映射: { 'predictions': { 'properties': { 'Company':{'type':'string'}, 'TxnsId':{'type':'string'}, 'Emp':{'type':'string'}, 'Amo

    1熱度

    1回答

    讓編譯器知道在groovy中執行閉包時使用的類別是否可能? 一個小例子: class Example { static time = evaluateTime { println 1.minute.from.now } static def evaluateTime(Closure<Void> cl) { GroovyUtil.use(Tim