我很难让LLVM参与一个新项目.我已经尝试了http://old.nabble.com/CMake-sample-project--td28871124.html中的多个CMakeLists.txt示例并且花了很多时间.
我可以完美地构建LLVM和示例,但我想要一个不在LLVM文件夹中的项目.我在Windows 7上使用Visual Studio 2010.现在我的设置是这样的:
root
- CMakeLists.txt (1)
main
- CMakeLists.txt (2)
- main.cpp (an exact copy of the Fibonacci example)
Run Code Online (Sandbox Code Playgroud)
(1)
cmake_minimum_required(VERSION 2.6)
project (TestLLVM)
set(LLVM_SRC_DIR "MY FOLDER/llvm-2.9" CACHE PATH "Directory LLVM source (includes) are in")
set(LLVM_BIN_DIR "MY FOLDER/llvm-2.9-install" CACHE PATH "Directory LLVM binaries (libraries) are in")
set (CMAKE_BUILD_TYPE Debug)
add_definitions (-D_DEBUG)
link_directories(${LLVM_BIN_DIR}/lib/Release)
include_directories(${LLVM_SRC_DIR}/include ${LLVM_BIN_DIR}/include)
add_subdirectory (main)
Run Code Online (Sandbox Code Playgroud)
(2)
if(NOT WIN32 OR MSYS OR CYGWIN)
set (PLATFORM_LIBS dl boost_system)
endif()
add_executable (main main.cpp)
target_link_libraries (main
${PLATFORM_LIBS}
LLVMX86Disassembler …
Run Code Online (Sandbox Code Playgroud) 我知道很多人都问过这个问题,但我认为我的情况有点不同.
我有一个网站,我有一些广告,由于xhtml/html兼容性问题隐藏在Flash中.但是flash元素在我的jQuery对话框之上是不理想的.
有些解决方案建议将wmode设置为不透明,但我不能,因为我的广告是输出flash元素的脚本.
另一种解决方案建议在显示对话框时隐藏广告.所以我的问题是:有没有办法将Flash内容放在我的jQuery对话框后面,而它们是可见的而不需要改变flash代码?
最诚挚的问候,Lasse Espeholt
更新: 我现在以赏金重新提出这个问题.至于现在,我将每个Flash广告隐藏在"显示对话框"中.但这仍然不是最佳解决方案.所以,我正在寻找一个可以使每个Flash动画变得不透明的脚本(jQuery解决方案最好,但是一个简单的JavaScript解决方案就可以了).或者如果应该有另一个解决方案没有在这个问题中讨论过,我会很高兴听到它:)
更新2: 到目前为止,我已经制作了这个脚本:
function opaqueAllFlashMovies() {
// Embed Flash movies
$('embed[wmode!="opaque"]').attr('wmode', 'opaque').wrap('<div>');
// Object flash movies with a wmode param
$('object[classid$="-444553540000"] parem[wmode]').attr('value', 'opaque');
// Object flash movies without a wmode param
$('object[classid$="-444553540000"]').not('param[wmode]').append('<param name=\'wmode\' value=\'opaque\'/>').wrap('<div>');
}
Run Code Online (Sandbox Code Playgroud)
它适用于FF和Chrome,但不适用于IE.显然,.append
失败了.有任何想法吗?
我刚刚了解到OCAML必须有一个.
用于执行浮点运算的后缀.一个例子是3. +. 4.
equals 7.
(float).但是,F#以相同的方式处理浮点和整数运算,因此3 + 4
(int)和3. + 4.
(float)都有效.
F#+
自然分配给int,因此let add a b = a + b
属于类型int -> int -> int
.确实(+)
给了我val it : (int -> int -> int) = <fun:it@6-1>
.
这导致了以下序列,我认为这非常违反直觉:
> 3. + 4.;;
val it : float = 7.0
> (+);;
val it : (int -> int -> int) = <fun:it@8-2>
Run Code Online (Sandbox Code Playgroud)
所以我的问题是: "重载"是否由编译器中的特殊机制/案例完成,或者这是一个语言范围的事情所以我可能可以定义一个名为add
(或其他任何)的函数,它具有一个整数和一个定义浮子(或任何其他类型).
OCaml是否真的没有从列表转换为集合的功能?
如果是这种情况,是否可以制作通用功能list_to_set
?我试图制作一个没有运气的多态集.
最诚挚的问候,Lasse Espeholt
我怎么可以转换wchar_t
('9'
)到一个数字中的形式int
(9
)?
我有以下代码,我检查是否peek
是一个数字:
if (iswdigit(peek)) {
// store peek as numeric
}
Run Code Online (Sandbox Code Playgroud)
我可以减去'0'
或者是否有一些我应该担心的Unicode细节?
我正在实现一些适用于大数据(~250 MB - 1 GB)的算法.为此,我需要一个循环来做一些基准测试.但是,在这个过程中,我了解到F#正在做一些讨厌的事情,我希望你们中的一些人能够澄清一下.
这是我的代码(问题描述如下):
open System
for i = 1 to 10 do
Array2D.zeroCreate 10000 10000 |> ignore
printfn "%d" (GC.GetTotalMemory(true))
Array2D.zeroCreate 10000 10000 |> ignore
// should force a garbage collection, and GC.Collect() doesn't help either
printfn "%d" (GC.GetTotalMemory(true))
Array2D.zeroCreate 10000 10000 |> ignore
printfn "%d" (GC.GetTotalMemory(true))
Array2D.zeroCreate 10000 10000 |> ignore
printfn "%d" (GC.GetTotalMemory(true))
Array2D.zeroCreate 10000 10000 |> ignore
printfn "%d" (GC.GetTotalMemory(true))
Console.ReadLine() |> ignore
Run Code Online (Sandbox Code Playgroud)
这里的输出如下:
54000
54000
54000
54000
54000
54000
54000
54000
54000
54000 …
Run Code Online (Sandbox Code Playgroud) 今天早些时候我遇到了F#报价的限制,并在这里问了一个问题:F#报价:变量可能会逃避范围
现在,在将MetaOcaml中出现的http://www.cs.rice.edu/~taha/publications/journal/dspg04a.pdf中的示例转换为F#时,我可能遇到了另一个限制.
这次我有这个MetaOcaml片段:
let rec peval2 p env fenv=
match p with
Program ([],e) -> eval2 e env fenv
| Program (Declaration (s1,s2,e1)::tl,e) ->
.<let rec f x = .~(eval2 e1 (ext env s2 .<x>.)
(ext fenv s1 .<f>.))
in .~(peval2 (Program(tl,e)) env (ext fenv s1 .<f>.))>.
Run Code Online (Sandbox Code Playgroud)
我把它转换成了
let rec peval2 p env fenv =
match p with
| Program ([], e) -> eval2 e env fenv
| Program (Declaration (s1, s2, e1) :: tl, e) -> …
Run Code Online (Sandbox Code Playgroud) 我是F#的新手,正在寻找一个能够获取N*个索引和一个序列并给出N个元素的函数.如果我有N个索引它应该等于concat Seq.nth index0,Seq.nth index1 .. Seq.nth indexN但它应该只扫描序列中的indexN元素(O(N))而不是index0 + index1 + .. .+ indexN(O(N ^ 2)).
总结一下,我正在寻找类似的东西:
//For performance, the index-list should be ordered on input, be padding between elements instead of indexes or be ordered when entering the function
seq {10 .. 20} |> Seq.takeIndexes [0;5;10]
Result: 10,15,20
Run Code Online (Sandbox Code Playgroud)
我可以通过使用seq {yield ...}并使用一个索引计数器来勾选一些元素应该被传递掉但是如果F#提供了一个很好的标准方法我宁愿使用它.
谢谢 :)...
另外:我做了以下几点.它有效,但不漂亮.欢迎提出建议
let seqTakeIndexes (indexes : int list) (xs : seq<int>) =
seq {
//Assume indexes is sorted
let e = xs.GetEnumerator()
let i = ref indexes …
Run Code Online (Sandbox Code Playgroud) 我想在我的<p>content</p>
标签之间留出空间.不是之前而不是之后的<p>
标签.我的代码是:
<div>
<h1>A headline</h1>
<p>Some text</p>
<p>Some text</p>
</div>
Something
Run Code Online (Sandbox Code Playgroud)
我不希望h1和p之间的空间在h1上以零余量完成.但是在最后一个<p>
标签之后我不想要空格.这可能没有:last-child或一些js/jQuery?
我不能在最后一个标签上设置class ="last",因为它是一个CMS系统.
在没有任何良好的免费XPath 2.0实现的.Net构建Linq到XML我已经考虑实现我自己(也是为了体验).但为了清楚(并没有构建存在的东西)这些是我发现的XPath 2.0实现:
现在,我想要了解一些语言(如XPath 2.0表达式)的实现有多困难.我发现这个链接有一个用于XPath 2.0表达式的EBNF:http://www.w3.org/TR/2007/REC-xpath20-20070123/#id-grammar我想在F#中使用它fslex/fsyacc组合.
我的背景(主观):我之前使用过这些工具,但仅限于一些简单的表达式和非常简单的编程语言.此外,我已经阅读了大部分Dragon书和Appel's Modern编译器在ML中的实现 - 但不幸的是,我还没有在阅读时将这个理论付诸实践.我现在已经一年学的是计算机科学,我已经完成了与理论关于前课程finite automaton
,CFL
和算法,但我一直在大学之前年(几年专业的工作-网站后台为主)的开发人员.
现在,解析的步骤和我倾向于涵盖的内容:
现在,除了上面的具体问题:
XDocument
等以上才能制作解析器?要清楚:我想XDocument
用这个解析的表达式创建一个XPath 2.0表达式解析器并遍历等.我猜这个组合是一个查询引擎.
更新:我发现了这个:http://www.w3.org/2007/01/applets/xpathApplet.html,其中包含解析和遍历的代码.我认为这将是一个很好的开始或参考:-)
您的回答将不胜感激.