我在很多地方都看过这个:
"在一个数据结构上运行100个函数比在10个数据结构上运行10个函数更好." -Alan Perlis
但我从未见过它解释了为什么这应该是真的.您是否应该尝试从第一个派生其他9个数据结构以避免重复数据?我觉得我错过了一些背景.
我想在sql server 2005数据库中将单引号Eg john的文本插入到表中
是否存在面向«
和»
(«
和»
分别)的向下替代方案?
我试图在其他地方找到答案但无济于事.我假设css旋转文本是唯一真正的答案.
我想从用户输入的文本中提取信息.想象一下,我输入以下内容:
SetVariables "a" "b" "c"
Run Code Online (Sandbox Code Playgroud)
如何在第一组报价之间提取信息?然后第二个?然后第三个?
我想知道这两个功能在引擎盖下如何实现有什么不同?即,不只是在旧的良好表达树之上构建代码引用?
谢谢.
我希望我没有错过任何明显的东西,但我一直在玩F#表达式,我想动态评估引用的表达式.例如,我想写这样的东西:
let x = <@ 2 * 5 @>
let y = transform x // replaces op_Multiply with op_Addition, or <@ 2 + 5 @>
let z = eval y // dynamically evaluates y, returns 7
Run Code Online (Sandbox Code Playgroud)
是否有内置的F#方法可以评估引用的表达式,还是我必须自己编写?
如何编写与可以包含引号的模式匹配的正则表达式,但如果匹配,则必须在开头和结尾具有匹配的引号?
"?(pattern)"?
Run Code Online (Sandbox Code Playgroud)
将无法工作,因为它将允许以引号开头但不以一个结尾的模式.
"(pattern)"|(pattern)
Run Code Online (Sandbox Code Playgroud)
会工作,但重复.有没有更好的方法来做到这一点而不重复模式?
有没有人知道为什么不sub
抛出异常add
?这是一个错误吗?
open Microsoft.FSharp.Linq.QuotationEvaluation
let inline add x = x + x
let inline sub x = x - x
let answer = <@ add 1 @>.Eval() // 2, as expected
let answer2 = <@ sub 1 @>.Eval() // NotSupportedException
Run Code Online (Sandbox Code Playgroud)
注意,如果没有inline关键字,则不会抛出异常(但代码不是通用的)此外,仅在使用引用时抛出异常.正常评估工作正常.
谢谢
编辑:简化代码示例
我刚跑过 http://frankniemeyer.blogspot.com/2010/04/minimalistic-native-64-bit-array.html 其中包含该行
(# "sizeof !0" type('T) : nativeint #)
Run Code Online (Sandbox Code Playgroud)
我相信技术短语是"什么事?" 我从未在我的(约8个月)的F#编程中遇到过类似于......的东西......
FSI告诉我一些关于弃用的构造,仅用于F#libs ...
和谷歌(#呃呃......好吧,不多
这有什么方向吗?
我刚刚开始使用Fortran,并且对双引号和单引号的使用感到困惑.