我有一堆JAR文件(来自maven2项目)和maven报告无法找到一些包(确切地说是org.openanzo.client.jena).我想深入研究作为maven依赖解析结果下载的JAR文件,并找到这些JAR文件可用的包.见解?
更新:显然,检查jar文件内部的唯一好方法是"jar"实用程序,或者可以使用其IDE的工具来执行此操作.
我很难理解更高级别和更高等级类型.善良非常简单(感谢Haskell的文献),我曾经认为在讨论类型时排名就像善良,但显然不是!我读维基百科的文章无济于事.所以有人可以解释什么是排名?高等级是什么意思?更高等级的多态性?怎么来到Kinds(如果有的话)?比较Scala和Haskell也很棒.
可能重复:
内部联接vs其中
今天我和我的项目经理就Cartesian产品进行了辩论.他说'自然连接'比使用'select from where'要好得多,因为后者会导致db引擎在内部执行笛卡尔积,但前者使用另一种方法来阻止这种情况.据我所知,自然连接语法在性能或含义方面与"从哪里选择"没有任何不同,我的意思是你可以根据自己的喜好使用.
SELECT * FROM table1,table2 WHERE table1.id=table2.id
SELECT * FROM table1 NATURAL JOIN table2
Run Code Online (Sandbox Code Playgroud)
请详细说明导致笛卡尔积的第一个查询,但第二个查询更加智能
我们有一个Scala项目,我们决定使用git.问题是我们是一个非常小的分布式团队,我们希望团队之外的任何人都没有对我们的git服务器(具有有效的IP并且在IP级别可以访问世界)的只读访问权限.我听说git-daemon本身没有认证机制,你应该以某种方式将它与ssh或其他东西集成.使git服务器仅响应授权用户的最佳(也是最简单)方法是什么?或者git-daemon可能不适合这项任务?我可以补充一点,我正在寻找一种简单明了的方法.我不想和github竞争;-)
在Firebug控制台中:
a = 12
a.constructor.prototype.isPrototypeOf(a) // prints 'false'
Run Code Online (Sandbox Code Playgroud)
我认为这应该打印 true
考虑一下:
scala> def sum(x:Int,y:Int) = x+y
sum: (x: Int, y: Int)Int
scala> sum(1,_:String)
<console>:9: error: type mismatch;
found : String
required: Int
sum(1,_:String)
Run Code Online (Sandbox Code Playgroud)
显然Scala非常了解_in 的确切类型,sum(1,_)但你必须这样做 say sum(1,_:Int).为什么?
Scala随机选择(?)选择一个:
scala> def sum(x:Int,y:String) = 1
sum: (x: Int, y: String)Int
scala> def sum(x:Int,y:Double) = 1
sum: (x: Int, y: Double)Int
scala> class Ashkan
defined class Ashkan
scala> sum(1,_:Ashkan)
<console>:10: error: type mismatch;
found : Ashkan
required: Double
sum(1,_:Ashkan)
Run Code Online (Sandbox Code Playgroud) 在依赖型土地上我永无止境的奇迹中出现了一个奇怪的想法.我做了很多数据库编程,如果我能摆脱所有那些健全性检查和有效性检查,那就太好了.一个特别烦人的情况是那些接受Integer并期望它是某个某个表的有效row-id的函数.一个非常愚蠢的例子是:
function loadStudent(studentId: Integer) : Student
Run Code Online (Sandbox Code Playgroud)
假设我选择的语言支持完全荣耀的依赖类型,是否可以利用类型系统loadStudent只接受有效值studentId:
function loadStudent(studentId : ValidRowId("students_table") ) : Student
Run Code Online (Sandbox Code Playgroud)
如果是,我如何为ValidRowId类型编写数据构造函数?到目前为止我看到的所有例子都是纯粹的(不涉及IO).
我有一个类想要在稍后的测试中进行模拟:
class Original {
function calculate($a) { ... }
}
Run Code Online (Sandbox Code Playgroud)
测试中:
$mock = $this->getMock('Original',['calculate']);
$mock->expcets($this->any())
->will($this->returnValueMap([
[1,'ABC'],
[2,'BCD']
// somehow tell $mock to call the original calculate() here
);
Run Code Online (Sandbox Code Playgroud)
我想告诉在某些条件$mock下回退到原始版本calculate(),例如,如果参数与任何提供的检查不匹配。据我从阅读 PhpUnit 代码中了解到,如果未找到匹配项,调用程序将返回 null :-?
我的印象是上下文边界只适用于方法:
trait Target[T]
class Post {
def pinTo[T : Target](t:T)
}
Run Code Online (Sandbox Code Playgroud)
显然,上下文界限也可用于class(并且可能trait):
trait Target[T]
class Post[T:Target] {
def pintTo[T](t:T)
}
Run Code Online (Sandbox Code Playgroud)
现在我对如何提供证据感到困惑Post?
class Business
implicit object ev extends Target[Business] // is implicit necessary here ?
val p = new Post[Business] // ?? how do I provide ev ?
Run Code Online (Sandbox Code Playgroud)
func f<T>(a:T)->String { return "Generic" }
func f(a:Int)->String { return "Integer" }
func alias<T>(a:T)->String { return f(a) }
f(1) // "Integer"
f("string") // "Generic"
alias(1) // "Generic" (shouldn't be "Integer" ?)
alias("string") // "Generic"
Run Code Online (Sandbox Code Playgroud)
我知道某种形式的早期(静态)绑定正在发生,但我不明白为什么。是设计使然还是错误?如果按设计然后alias(a) =/= f(a)但定义读取准确alias(a) = f(a)!