小编cib*_*en1的帖子

如何找到CUDA的epsilon,min和max常量?

我在寻找CUDA设备的epsilon值(两个数字之间的最小步长),min(最小幅度)和max(最大幅度).

IE是<float.h>gcc编译器中定义的FLT_EPSILON(DBL_EPSILON),FLT_MIN(DBL_MIN)和FLT_MAX(DBL_MAX)的等价物.

某些CUDA包含文件中是否有常量?任何手册解释它们?编写内核来计算它们的任何方法?

提前致谢.

floating-point double cuda gpu constants

15
推荐指数
1
解决办法
7945
查看次数

如何检测Monad?

我们中的许多人没有函数式编程的背景知识,更不用说类别理论代数了.所以我们假设我们需要并因此创建一个类似的泛型类型

data MySomething t = ....... 
Run Code Online (Sandbox Code Playgroud)

然后我们继续编程,并使用MySomething.什么证据应提醒我们,MySomething是一个单子,那我们必须通过写能使之instance Monad MySomething ...和定义return,并>>=为它?

谢谢.

编辑:另见这个问题:链接操作是monad类解决的唯一问题吗?,这个答案monad是一个带辅助操作的函数数组

monads haskell

15
推荐指数
3
解决办法
1074
查看次数

缺少Java方法(ala Ruby)进行装饰?

Java中是否有任何可用于拦截消息(方法调用)的技术,如Ruby中的method_missing技术?这将允许非常容易地编码装饰器和代理,就像在Ruby中一样:

:Client            p:Proxy                    im:Implementation
-------           ----------                  -----------------

p.foo() -------> method_missing()
                    do_something
                    im.foo() ------------------> do_foo


p.bar() --------> method_missing()
                   do_something_more
                    im.bar() -------------------> do_bar
Run Code Online (Sandbox Code Playgroud)

(注意:代理只有一个方法:method_missing())

java decorator

12
推荐指数
1
解决办法
3328
查看次数

应用服务器如何注入私有字段?

我看到了这个问题

注入私人,包装或公共领域或提供制定者?

关于如何手动注入带注释的私有字段(方式是添加setter或通过构造函数)

但是,重点是应用程序服务器(如glassfish,axis2,jboss,...)如何能够注入最终的私有字段(不向用户类添加setter或构造函数)?

引用引用的问题:

public SomeClass {
  @Inject
  private SomeResource resource;
}
Run Code Online (Sandbox Code Playgroud)

他们是否使用允许访问私有字段的自定义JVM(不是标准的JVM)?

谢谢

java annotations dependency-injection

11
推荐指数
2
解决办法
2939
查看次数

关于>> = Monad运算符的签名

这是Haskell中众所周知的>> =运算符的签名

>>= :: Monad m => m a -> (a -> m b) -> m b
Run Code Online (Sandbox Code Playgroud)

问题是为什么函数的类型是

(a -> m b)
Run Code Online (Sandbox Code Playgroud)

代替

(a -> b)
Run Code Online (Sandbox Code Playgroud)

我会说后者更实用,因为它允许在定义的monad中直接集成现有的"纯"函数.

相反,编写一般的"适配器"似乎并不困难

adapt :: (Monad m) => (a -> b) -> (a -> m b)
Run Code Online (Sandbox Code Playgroud)

但无论如何,我认为更可能是你已经有了(a -> b)替代(a -> m b).

注意.我通过"实际"和"可能"来解释我的意思.如果你还没有在程序中定义任何monad,那么,你拥有的函数是"纯粹的" (a -> b),你将拥有0类型的函数,(a -> m b)因为你还没有定义m.如果那时你决定定义一个monad,m那就需要a -> m b定义新的函数.

monads haskell

9
推荐指数
2
解决办法
329
查看次数

HttpUrlConnection.getInputStream在Android中返回空流

我使用HttpUrlConnection向服务器发出GET请求.连接后:

  1. 我收到回复码:200
  2. 我收到回复消息:好的
  3. 我得到输入流,没有抛出异常但是:

    • 在一个独立的程序中,我按预期得到了响应的主体:

    {"name":"我的名字","生日":"01/01/1970","id":"100002215110084"}

    • 在android活动中,流是空的(available()== 0),因此我无法获取任何文本.

是否有任何提示或追踪?谢谢.

编辑:这是代码

请注意:我使用import java.net.HttpURLConnection;这是标准的http Java库.我不想使用任何其他外部库.事实上,我确实在使用来自apache的库httpclient的android中遇到了问题(他们的一些匿名.class不能被apk编译器使用).

嗯,代码:

URLConnection theConnection;
theConnection = new URL("www.example.com?query=value").openConnection(); 

theConnection.setRequestProperty("Accept-Charset", "UTF-8");

HttpURLConnection httpConn = (HttpURLConnection) theConnection;


int responseCode = httpConn.getResponseCode();
String responseMessage = httpConn.getResponseMessage();

InputStream is = null;
if (responseCode >= 400) {
    is = httpConn.getErrorStream();
} else {
    is = httpConn.getInputStream();
}


String resp = responseCode + "\n" + responseMessage + "\n>" + Util.streamToString(is) + "<\n";

return resp;
Run Code Online (Sandbox Code Playgroud)

我知道了:

200
OK
回复的正文

但是只有

200好的 …

android inputstream httpurlconnection

8
推荐指数
1
解决办法
3万
查看次数

更改android中的背景颜色会破坏小部件的外观吗?

我注意到通过程序改变android小部件(例如Button或TextView)的背景颜色:

myButton.setBackgroundColor(Color.BLUE);
Run Code Online (Sandbox Code Playgroud)

使它失去3D形状,边框和阴影效果,然后看起来像一个丑陋的扁平方形.我错过了什么?

对于这个非常天真的问题感到抱歉,虽然我试过一段时间但我无法做到这一点.

android widget background-color

7
推荐指数
1
解决办法
1270
查看次数

在html中实现宏定义的方法

我会做的很棒

<define tag="myTag" options="3">
<h1> #1 </h1>

<ul>
  <li> #2
  <li> #3
</ul>

</define>
Run Code Online (Sandbox Code Playgroud)

然后使用它:

<myTag option="foo" option="bar" option="bean" />
Run Code Online (Sandbox Code Playgroud)

我认为宏是非常大的优势.

解决方法是使用像m4这样的宏处理器,或者使用php来模拟宏的效果.还有其他要考虑的技术吗?

php macros html5 m4

7
推荐指数
1
解决办法
443
查看次数

Haskell中一个简单的面向对象的类'Point'

嗯,我确实认识到我对haskell感到困惑,这是我第一个周末.

我只是想知道以下设计的OO级Point2D

Point2D的UML设计

应该用Haskell编写如下:

import Prelude hiding ( sum )

-- ...............................................................
-- "class type"  : types belonging to this family of types
--                              must implement distance and sum functions
-- ...............................................................
class PointFamily p where
    -- p is a type of this family, not a point
    distance :: p -> p -> Float -- takes two things of type p and returns a Real
    sum :: p -> p -> p -- takes two things of type p and returns …
Run Code Online (Sandbox Code Playgroud)

oop haskell

7
推荐指数
1
解决办法
583
查看次数

Ruby中的"=="总是重视平等吗?

对不起,如果重复(我没找到)

这只是为了确认Ruby的运算符==始终执行相等比较.即

a == b
Run Code Online (Sandbox Code Playgroud)

将a的值与b的值进行比较,而不是像Java一样,是否指向内存中的同一个对象(对于后一种情况,在Ruby中,你应该使用a.object_id == b.object_id).

因此,在Ruby中将字符串值与==进行比较是安全的(尽管在Java中这样做是不安全的)

谢谢

编辑:

问题在于任何Ruby对象的默认==行为,因为它可能误导Java-C-C++程序员假设== b比较引用本身,而不是引用内容.

无论如何,你可以使用字符串检查这段代码

one="hello"
two="he"
two << "llo"

if one == two
  puts "surprise: comparing values, not like in Java"
end

if not one.object_id == two.object_id
  puts "obvious: do this to compare references"
end
Run Code Online (Sandbox Code Playgroud)

编辑2.

所以,在Ruby中,比较

a == b
Run Code Online (Sandbox Code Playgroud)

检查a和b的值

但是,任务

a = b
Run Code Online (Sandbox Code Playgroud)

不复制值,但使a和b指向同一个对象!

继续前面的代码

puts one.object_id
puts two.object_id

puts " and now "

one = two

puts one.object_id
puts two.object_id
Run Code Online (Sandbox Code Playgroud)

ruby string-comparison object-comparison

6
推荐指数
1
解决办法
4389
查看次数