資料介紹
軟件簡(jiǎn)介
Build→It?是一個(gè)輕量級(jí)的基于類(lèi)型的 C++ Multi-stage programming 框架。可以讓你在幾乎不了解編譯器的情況下輕松實(shí)現(xiàn)領(lǐng)域特定語(yǔ)言(domain-specific languages,DSL)。
除了使用運(yùn)算符重載提取表達(dá)式和語(yǔ)句外,該工具還支持提取豐富的數(shù)據(jù)相關(guān)的控制流,如 if-then-else 條件和 for 和 while 循環(huán),并使用新穎的重執(zhí)行策略來(lái)探索程序中的所有控制流路徑。
Build→It turns -
templatedyn_var power_f(BT base, ET exponent) { dyn_var res = 1, x = base; while (exponent > 1) { if (exponent % 2 == 1) res = res * x; x = x * x; exponent = exponent / 2; } return res * x; } ... int power = 15; context.extract_function_ast(power_f , static_var >, "power_15", power); ... int base = 5; context.extract_function_ast(power_f , dyn_var >, "power_5", base); ...
into -
int power_15 (int arg0) {
int var0 = arg0;
int var1 = 1;
int var2 = var0;
var1 = var1 * var2;
var2 = var2 * var2;
var1 = var1 * var2;
var2 = var2 * var2;
var1 = var1 * var2;
var2 = var2 * var2;
int var3 = var1 * var2;
return var3;
}
int power_5 (int arg1) {
int var0 = arg1;
int var1 = 1;
int var2 = 5;
while (var0 > 1) {
if ((var0 % 2) == 1) {
var1 = var1 * var2;
}
var2 = var2 * var2;
var0 = var0 / 2;
}
int var3 = var1 * var2;
return var3;
}
Build→It 使用純基于庫(kù)的方法,并且不需要任何特殊的編譯器修改,這使得它具有極高的可移植性,并且易于集成到現(xiàn)有的代碼庫(kù)中。使用 Build→It 很簡(jiǎn)單,只需包含一些頭文件,并針對(duì) Build→It 庫(kù)進(jìn)行鏈接。
Build→It 使用聲明的變量和表達(dá)式類(lèi)型來(lái)確定綁定時(shí)間。添加了 2 個(gè)新的通用類(lèi)型 -static_var 和 dyn_var,使用戶程序可以分為 2 個(gè)階段。這些類(lèi)型可以任意嵌套以產(chǎn)生更多階段的代碼。
什么是 multi-stage programming,以及為什么 multi-stage programming 對(duì)高性能 DSL 很重要?具體可查看官方發(fā)表的一篇論文。
- 如何創(chuàng)建和使用LabVIEW中的LLB文件 0次下載
- 基于機(jī)器視覺(jué)的非特定物體智能抓取系統(tǒng) 26次下載
- DSP載波移相控制C語(yǔ)言源代碼下載 58次下載
- EE-192:使用C語(yǔ)言在Blackfin?處理器上創(chuàng)建中斷驅(qū)動(dòng)系統(tǒng)
- 基于深度學(xué)習(xí)的自然語(yǔ)言處理對(duì)抗樣本模型 39次下載
- Visual C++和MFC創(chuàng)建的應(yīng)用程序基礎(chǔ)知識(shí) 0次下載
- allegro與PADS的區(qū)別及創(chuàng)建PCB封裝的步驟 67次下載
- 使用單片機(jī)實(shí)現(xiàn)雙色點(diǎn)陣顯示特定圖形的C語(yǔ)言程序免費(fèi)下載 11次下載
- 基于SPESC到目標(biāo)程序語(yǔ)言的智能合約系統(tǒng)框架 15次下載
- C語(yǔ)言接口與實(shí)現(xiàn)創(chuàng)建可重用軟件的技術(shù)PDF電子書(shū)免費(fèi)下載 22次下載
- 如何使用VS2013做C語(yǔ)言編譯器的創(chuàng)建方法詳細(xì)資料說(shuō)明 8次下載
- 《C語(yǔ)言接口與實(shí)現(xiàn):創(chuàng)建可重用軟件的技術(shù)》電子教材免費(fèi)下載 33次下載
- Verilog語(yǔ)言數(shù)字系統(tǒng)設(shè)計(jì)教程的詳細(xì)資料免費(fèi)下載 0次下載
- AN1246中文手冊(cè)之如何在Microchip圖形庫(kù)中創(chuàng)建控件
- 視覺(jué)語(yǔ)言如何用來(lái)通過(guò)簡(jiǎn)單地繪制算法的框圖來(lái)快速地創(chuàng)建嵌入式系統(tǒng) 8次下載
- fpga語(yǔ)言是什么?fpga語(yǔ)言與c語(yǔ)言的區(qū)別 1.9k次閱讀
- 大語(yǔ)言模型推斷中的批處理效應(yīng) 1.4k次閱讀
- 用VHDL語(yǔ)言創(chuàng)建一個(gè)8位算術(shù)邏輯單元(ALU) 3.5k次閱讀
- systemverilog的決策語(yǔ)句if…else語(yǔ)句介紹 4.5k次閱讀
- 視覺(jué)語(yǔ)言導(dǎo)航領(lǐng)域任務(wù)、方法和未來(lái)方向的綜述 6.5k次閱讀
- 用10行 BASIC 語(yǔ)言創(chuàng)建很棒的游戲 2.5k次閱讀
- 如何在Vitis HLS中使用C語(yǔ)言代碼創(chuàng)建AXI4-Lite接口 2.8k次閱讀
- C語(yǔ)言中函數(shù)的創(chuàng)建以及使用 6.9k次閱讀
- 以Python語(yǔ)言為例探討語(yǔ)音內(nèi)存管理方式 721次閱讀
- 簡(jiǎn)要介紹einsum表示法的概念,通過(guò)真實(shí)例子展示了einsum的表達(dá)力 1.3w次閱讀
- 學(xué)習(xí)開(kāi)發(fā)環(huán)境和編程語(yǔ)言:匯編語(yǔ)言和C語(yǔ)言的比較 9.7k次閱讀
- scala語(yǔ)言主要應(yīng)用領(lǐng)域詳解 2w次閱讀
- 利用C語(yǔ)言創(chuàng)建windows窗口的程序解析 1.2w次閱讀
- c語(yǔ)言的應(yīng)用領(lǐng)域有哪些 3.7w次閱讀
- 淺談領(lǐng)域特定語(yǔ)言 9.7k次閱讀
下載排行
本周
- 1新一代網(wǎng)絡(luò)可視化(NPB 2.0)
- 3.40 MB | 1次下載 | 免費(fèi)
- 2冷柜-電氣控制系統(tǒng)講解
- 13.68 MB | 1次下載 | 10 積分
- 3MDD品牌三極管MMBT3906數(shù)據(jù)手冊(cè)
- 2.33 MB | 次下載 | 免費(fèi)
- 4MDD品牌三極管S9012數(shù)據(jù)手冊(cè)
- 2.62 MB | 次下載 | 免費(fèi)
- 5LAT1218 如何選擇和設(shè)置外部晶體適配 BlueNRG-X
- 0.60 MB | 次下載 | 3 積分
- 6LAT1216 Blue NRG-1/2 系列芯片 Flash 操作與 BLE 事件的互斥處理
- 0.89 MB | 次下載 | 3 積分
- 7收音環(huán)繞擴(kuò)音機(jī) AVR-1507手冊(cè)
- 2.50 MB | 次下載 | 免費(fèi)
- 8MS1000TA 超聲波測(cè)量模擬前端芯片技術(shù)手冊(cè)
- 0.60 MB | 次下載 | 免費(fèi)
本月
- 1愛(ài)華AIWA HS-J202維修手冊(cè)
- 3.34 MB | 37次下載 | 免費(fèi)
- 2PC5502負(fù)載均流控制電路數(shù)據(jù)手冊(cè)
- 1.63 MB | 23次下載 | 免費(fèi)
- 3NB-IoT芯片廠商的資料說(shuō)明
- 0.31 MB | 22次下載 | 1 積分
- 4UWB653Pro USB口測(cè)距通信定位模塊規(guī)格書(shū)
- 838.47 KB | 5次下載 | 免費(fèi)
- 5蘇泊爾DCL6907(即CHK-S007)單芯片電磁爐原理圖資料
- 0.04 MB | 4次下載 | 1 積分
- 6蘇泊爾DCL6909(即CHK-S009)單芯片電磁爐原理圖資料
- 0.08 MB | 2次下載 | 1 積分
- 7100W準(zhǔn)諧振反激式恒流電源電路圖資料
- 0.09 MB | 2次下載 | 1 積分
- 8FS8025B USB的PD和OC快充協(xié)議電壓誘騙控制器IC技術(shù)手冊(cè)
- 1.81 MB | 1次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開(kāi)源硬件-PMP21529.1-4 開(kāi)關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191439次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183353次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81602次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73822次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問(wèn)
發(fā)資料
發(fā)視頻
上傳資料賺積分
評(píng)論