问题列表 - 第27891页

在clojure中懒惰的问题是什么?

我正在查看一些示例Fibonacci序列clojure代码:

 (def fibs (lazy-cat [1 2] (map + fibs (rest fibs))))
Run Code Online (Sandbox Code Playgroud)

我一般都明白发生了什么,但不明白lazy-cat.我知道这lazy-cat是一个宏,正在翻译成这样的东西:

(def fibs (concat (lazy-seq [1 2]) (lazy-seq (map + fibs (rest fibs))))) 
Run Code Online (Sandbox Code Playgroud)

究竟是什么lazy-seq实现的?即使没有,它仍会被懒惰地评估lazy-seq?这是否严格用于缓存目的?

编辑:谢谢你的答案.令我感到困惑的是,它与concatREPL中的一个普通模式一起工作,因为我之前已经在范围内绑定了fibs.

clojure fibonacci lazy-evaluation infinite-sequence

17
推荐指数
2
解决办法
1964
查看次数

用矩阵变换3D矢量的方法

我一直在阅读关于使用矩阵转换Vector3的一些阅读,并且我正在努力深入研究数学和编码本身而不是使用现有代码.无论出于何种原因,我的学校课程从未包含过矩阵,所以我填补了我的知识空白.值得庆幸的是,我认为我只需要一些简单的事情.

背景是我正在为RoboCup 3D联盟编写一个机器人.我在C#编码,但它必须在Mono上运行.理想情况下,我不会使用任何现有的图形库(WinForms/WPF/XNA),因为我真正需要的是矩阵变换的整齐子集.

具体来说,我需要平移和x/y/z旋转,以及将多个变换组合成单个矩阵的方法.然后,这将应用于我自己的Vector3类型以生成转换后的类型Vector3.

我已经阅读了不同的建议.例如,一些模型使用4x3矩阵进行变换,其他模型使用4x4矩阵.

此外,一些例子表明你需要向量矩阵的第四个值1.当它包含在输出中时,该值会发生什么?

            [1 0 0 0]
[x y z 1] * [0 1 0 0] = [a b c d]
            [0 0 1 0]
            [2 4 6 1]

我缺少的部分是:

  • 我的矩阵的大小应该是多少
  • 通过将变换矩阵相乘来合成变换
  • 使用生成的矩阵变换3D矢量

因为我大多只想让它运行,任何伪代码都会很棒.有关哪些矩阵值执行哪些转换的信息在很多页面上都有明确的定义,所以除非你非常热衷,否则不需要在这里讨论:)

language-agnostic geometry vector matrix

4
推荐指数
1
解决办法
8823
查看次数

PHP数组:将单元素数组的数组弹出到一个数组中

使用专有框架,我经常发现自己处于以下格式从数据库获取结果集的情况:

array(5) {
  [0] => array(1) {
    ["id"] => int(241)
  }
  [1] => array(1) {
    ["id"] => int(2)
  }
  [2] => array(1) {
    ["id"] => int(81)
  }
  [3] => array(1) {
    ["id"] => int(560)
  }
  [4] => array(1) {
    ["id"] => int(10)
  }
}
Run Code Online (Sandbox Code Playgroud)

我宁愿拥有一个id数组,例如:

array(5) {
  [0] => int(241)
  [1] => int(2)
  [2] => int(81)
  [3] => int(560)
  [4] => int(10)
}
Run Code Online (Sandbox Code Playgroud)

为了实现这一目标,我经常发现自己写作:

$justIds = array();
foreach( $allIds as $id ) {
  $justIds[] = $id["id"];
}
Run Code Online (Sandbox Code Playgroud)

有没有更有效的方法来做到这一点?

php arrays

7
推荐指数
2
解决办法
965
查看次数

在Xcode中省略参数的高级本地化

我有这个格式化的字符串,我正在翻译工作.

英语

"Check out the %1$@ %2$@ in %3$@: %4$@" = "Check out the %1$@ %2$@ in %3$@: %4$@"

德国翻译

"Check out the %1$@ %2$@ in %3$@: %4$@" = "Hör Dir mal %2$@ in %3$@ an: %4$@";

这些传递给一个[NSString stringWithFormat:]电话:

//////////////////////////////////////
// Share Over Twitter
NSString *frmt = NSLocalizedString(@"Check out the %1$@ %2$@ in %3$@: %4$@", @"The default tweet for sharing sounds. Use %1$@ for where the sound type (Sound, mix, playlist) will be, %2$@ for where the audio …
Run Code Online (Sandbox Code Playgroud)

iphone localization internationalization nslocalizedstring

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

System.out中的Java执行详细信息

我记得Java中有一个神奇的命令行选项,可以打开当前执行到控制台的操作.输出看起来像字节码.

-verbose 不匹配,因为它只打印类加载,而此选项输出内存分配,设置局部变量等信息.它非常详细,如"Hello world"的10行.

我在这里找不到它http://java.sun.com/javase/technologies/hotspot/vmoptions.jsp,也没有http://java.sun.com/j2se/1.3/docs/tooldocs/solaris/java. html 我也在这里找到了一些标志,但大多数只在openjdk或开发模式下工作.也许有一种方法可以在这种开发模式下在Windows上启动java.exe?或者可能还有另一组标记错过了?

java command-line jvm-hotspot

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

android服务导出属性?

我对Android平台很新.我想将我的服务导出为公开使用.我在开发者doc上找到了一些东西

android:exported 其他应用程序的组件是否可以调用服务或与之交互 - 如果可以,则为"true",否则为"false".当值为"false"时,只有相同应用程序的组件或具有相同用户ID的应用程序才能启动服务或绑定到该服务.

但是我不明白有人能给我看一个如何使用它的简短例子吗?

android

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

奇怪的Matlab错误:"???下标索引必须是真正的正整数或逻辑"

我有一个func返回向量的函数a.我通常绘制一个然后对其进行进一步分析.我有一个特定情况,一旦我尝试绘制一个,我得到一个" ??? Subscript indices must either be real positive integers or logicals"错误.看一下下面的代码片段来看看vector的行为:

K>> a

a =
    5.7047    6.3529    6.4826    5.5750    4.1488    5.8343    5.3157    5.4454    

K>> plot(a)
??? Subscript indices must either be real positive integers or logicals.

K>> for i=1:length(a); b(i) = a(i); end;
K>> b

b =
    5.7047    6.3529    6.4826    5.5750    4.1488    5.8343    5.3157    5.4454    

K>> plot(b)
??? Subscript indices must either be real positive integers or logicals.
Run Code Online (Sandbox Code Playgroud)

发生这种情况的情况是当我func从另一个函数中调用函数(调用它outer_func),并直接返回结果作为outer_func …

matlab plot

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

帮助选择正确的数据结构

我需要一个具有以下要求的数据结构:

  1. 需要能够通过索引获取元素(如List).
  2. 我将始终只添加/删除结构末尾的元素.

我倾向于使用ArrayList.在这种情况下,它似乎是O(1)读取元素(它们总是?),删除元素(我只需要在列表的末尾删除它们)和添加(我只添加到列表的末尾).

只有一个问题是,当ArrayList完全填满并且我需要向它添加更多元素时,ArrayList会不时地产生性能损失.

还有其他更好的主意吗?我没有想到一个能够击败ArrayList这里的数据结构.

谢谢

c# java data-structures

4
推荐指数
1
解决办法
359
查看次数

python通过socket发送不完整的数据

我有这个套接字服务器脚本,

import SocketServer
import shelve
import zlib

    class MyTCPHandler(SocketServer.BaseRequestHandler):
        def handle(self):
            self.words = shelve.open('/home/tipu/Dropbox/dev/workspace/search/words.db', 'r');
            self.tweets = shelve.open('/home/tipu/Dropbox/dev/workspace/search/tweets.db', 'r');

            param = self.request.recv(1024).strip()
            try:
                result = str(self.words[param])
            except KeyError:
                result = "set()"
            self.request.send(str(result))

    if __name__ == "__main__":
        HOST, PORT = "localhost", 50007
        SocketServer.TCPServer.allow_reuse_address  = True
        server = SocketServer.TCPServer((HOST, PORT), MyTCPHandler)
        server.serve_forever()
Run Code Online (Sandbox Code Playgroud)

而这个接收器,

from django.http import HttpResponse
from django.template import Context, loader
import shelve
import zlib
import socket


def index(req, param = ''):
    HOST = 'localhost'    
    PORT = 50007              
    s = socket.socket(socket.AF_INET, …
Run Code Online (Sandbox Code Playgroud)

python sockets ports

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

在<! - - >中包装javascript

包装javascript代码有<!-- -->什么意义?

javascript

15
推荐指数
2
解决办法
1299
查看次数