The Shapes of Multidimensional ArraysIntroduction 2 Standardization 3 Design 4 EDSL 5 Extents 6 Going beyond 7 Conclusion ## I ntroduction ## I ntroduction Standardization Design EDSL Extents ☑ Going beyond Conclusion Multidimensional 47ba3a58460c9650750b98a8a/p7_1.jpg) ## Standardization Introduction 2 Standardization Design EDSL Extents ☐ Going beyond Conclusion ## A standardization effort ## On mdspan P0332: Relaxed Incomplete easy to and understand, read, and write in a concise way Introduction Standardization 3 Design EDSL Extents ☑ Going beyond Conclusion ## What are we looking for? ## A way to specify the shapes of0 码力 | 62 页 | 1.38 MB | 1 年前3
Idris 语言文档 Version 1.3.111 交互式编辑 目前,我们已经见过几个 Idris 的例子了,它的依赖类型系统可以在函数的类型中为期望的行为添加更加精确的描述,为函数的正确性增加额外的信心。我们也见识过类型系统如何帮助开发 EDSL 了,它允许程序员描述目标语言的类型系统。然而,精确的类型不止赋予了我们程序验证的能力,我们还可以利用类型来帮助构造出正确的程序。 Idris 的 REPL 提供了一些命令,可基于程序的类型来检 idris -client 以相对直接的方式来添加。 ### 1.12 语法扩展 Idris 支持以多种方式实现嵌入式领域特定语言(Embedded Domain Specific Language, EDSL) $ ^{1} $ 。我们见过的一种方式是扩展 do 记法。另一种重要的方式就是对核心语法进行扩展。在本节中,我们描述了两种扩展语法的方式:syntax 规则与 dsl 记法。 #### 1.12 implicit 修饰符,且被限制为只能接受一个显式参数。 一次只有一个隐式转换会被应用。也就是说,隐式转换无法被链式调用。如前文所见,简单类型的隐式转换是不被鼓励的!更常见的做法是,使用隐式转换来减少EDSL的冗长度,或者隐藏证明的细节。这些示例超出了本教程的范围。 #### 1.13.3 文学编程 和 Haskell 一样,Idris 支持 文学编程。如果某个文件的扩展名外 .lidr,那么它会0 码力 | 224 页 | 2.06 MB | 2 年前3
Symbolic Calculus for High-Performance Computing: From Scratch Using C++23 ## Back in 2019 EDSL Infinity Wars: Mainstreaming Symbolic Computation, Joël Falcou and Vincent Reverdy, CppCon 2019 ##0 码力 | 70 页 | 1.80 MB | 1 年前3
THE FIRST EXPLORATION OF PROJECT SPARROWorg/wiki/Hardware_description_language https://hdl.github.io/awesome/items/ Verilog/VHDL → HLS → eDSL SystemVerilog, SystemC... High-level Synthesis https://en.wikipedia.org/wiki/High-level_synthesis0 码力 | 68 页 | 13.14 MB | 2 年前3
The Idris Tutorial Version 0.99intended behaviour in its type. We have also seen an example of how the type system can help with EDSL development by allowing a programmer to describe the type system of an object language. However, precise elaborated one by one and turned into the corresponding TT. This is done with a tactic language as an EDSL in the Elab monad (or Elab' when there's a custom state). Lots of plumbing for errors. All0 码力 | 182 页 | 1.04 MB | 2 年前3
The Idris Tutorial Version 0.9.18intended behaviour in its type. We have also seen an example of how the type system can help with EDSL development by allowing a programmer to describe the type system of an object language. However, precise0 码力 | 69 页 | 316.20 KB | 2 年前3
The Idris Tutorial Version 0.9.20.1intended behaviour in its type. We have also seen an example of how the type system can help with EDSL development by allowing a programmer to describe the type system of an object language. However, precise0 码力 | 71 页 | 316.18 KB | 2 年前3
The Idris Tutorial Version 0.11intended behaviour in its type. We have also seen an example of how the type system can help with EDSL development by allowing a programmer to describe the type system of an object language. However, precise0 码力 | 71 页 | 314.20 KB | 2 年前3
The Idris Tutorial Version 2.3.0intended behaviour in its type. We have also seen an example of how the type system can help with EDSL development by allowing a programmer to describe the type system of an object language. However, precise elaborated one by one and turned into the corresponding TT. This is done with a tactic language as an EDSL in the Elab monad (or Elab’ when there’s a custom state). Lots of plumbing for errors. 200 CHAPTER0 码力 | 228 页 | 1.23 MB | 2 年前3
The Idris Tutorial Version 1.0.1intended behaviour in its type. We have also seen an example of how the type system can help with EDSL development by allowing a programmer to describe the type system of an object language. However, precise elaborated one by one and turned into the corresponding TT. This is done with a tactic language as an EDSL in the Elab monad (or Elab' when there's a custom state). Lots of plumbing for errors. All0 码力 | 223 页 | 1.21 MB | 2 年前3
共 18 条
- 1
- 2













