小编djh*_*rld的帖子

数组到Hash Ruby

好的,所以这是交易,我一直在谷歌搜索多年来找到解决方案,虽然有很多在那里,他们似乎没有做我正在寻找的工作.

基本上我有一个像这样结构的数组

["item 1", "item 2", "item 3", "item 4"] 
Run Code Online (Sandbox Code Playgroud)

我想将其转换为哈希,所以它看起来像这样

{ "item 1" => "item 2", "item 3" => "item 4" }
Run Code Online (Sandbox Code Playgroud)

即'even'索引上的项是键,'odd'索引上的项是值.

任何想法如何干净利落地做到这一点?我想一个强力方法是将所有偶数索引拉出到一个单独的数组中,然后循环它们以添加值.

ruby arrays hashmap

185
推荐指数
8
解决办法
17万
查看次数

在Jaskell中将JSON字符串解析为记录

我很难理解这一点(我对Haskell仍然有点新鲜)但是我发现Text.JSON包的文档有点令人困惑.基本上我有这种数据记录类型: -

data Tweet = Tweet
    {
        from_user :: String,
        to_user_id :: String,
        profile_image_url :: String,
        created_at :: String,
        id_str :: String,
        source :: String,
        to_user_id_str :: String,
        from_user_id_str :: String,
        from_user_id :: String,
        text :: String,
        metadata :: String
    }
Run Code Online (Sandbox Code Playgroud)

我有一些JSON格式的推文符合这种类型的结构.我正在努力的是如何将上面的内容映射到从以下代码返回的内容

decode tweet :: Result JSValue
Run Code Online (Sandbox Code Playgroud)

进入上面的数据类型.我明白我应该创建一个实例,instance JSON Tweet但我不知道从那里去哪里.

任何指针都将非常感谢,谢谢!

parsing json haskell

19
推荐指数
3
解决办法
4776
查看次数

反转字符串(简单问题)

在Clojure中有更好的方法吗?

daniel=> (reverse "Hello")
(\o \l \l \e \H)

daniel=> (apply str (vec (reverse "Hello")))
"olleH"
Run Code Online (Sandbox Code Playgroud)

apply $ str $ vec每次要将字符串反转回原始形式时,是否必须执行此操作?

clojure

18
推荐指数
3
解决办法
4861
查看次数

scala.tools.nsc包的目的是什么?

我花了几个小时谷歌搜索一些东西,允许我在Scala中打开Zip文件(我知道你可以使用Java API,但我希望找到一个Scala友好的包装器,而不是写关于编写Buffered/FileInputstream等)

所以我只是在REPL中乱搞并发现了这个包

scala.tools.nsc.io.ZipArchive
Run Code Online (Sandbox Code Playgroud)

经过一些挖掘和使用后scala.tools.nsc.io.File,我设法打开了一个包含所有Scala优点的zip存档(能够foreach等)

事情是我在官方Scala 2.8.1 API文档中看不到任何提及这个包,所以我只是想知道为什么没有文档呢?它是什么?

scala

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

将字符串拆分为组

我试图将一个字符串"分组"成段,我想这个例子会更加简洁地解释它

scala> val str: String = "aaaabbcddeeeeeeffg"
... (do something)
res0: List("aaaa","bb","c","dd","eeeee","ff","g")
Run Code Online (Sandbox Code Playgroud)

我可以通过几种方式以命令式的方式执行此操作(使用vars并单步执行字符串以查找组)但我想知道是否可以获得更好的功能解决方案?我一直在浏览Scala API,但似乎没有适合我需求的东西.

任何帮助,将不胜感激

string scala

12
推荐指数
3
解决办法
6217
查看次数

试图实现Data.Either

为了帮助我学习Applicative Functors和Functors,我认为看看如何Either用类型类Functor和函数实现它会很有趣Applicative.显然我可以继续阅读代码,但我发现自己尝试实现一些东西以更好地理解事物更有用.

仅供参考我正在尝试实现此演示文稿结果的Haskell版本http://applicative-errors-scala.googlecode.com/svn/artifacts/0.6/chunk-html/index.html

无论如何,这是我到目前为止所拥有的

 data Validation a b = Success a | Failure b deriving (Show, Eq)

 instance Functor (Validation a) where
     fmap f (Failure x) = Failure x
     fmap f (Success x) = Success (f x)
Run Code Online (Sandbox Code Playgroud)

但每当我尝试运行此命令时,ghci我只会收到以下错误消息: -

[1 of 1] Compiling Main             ( t.hs, interpreted )

t.hs:5:35:
    Couldn't match type `b' with `a1'
      `b' is a rigid type variable bound by
          the type signature for
            fmap :: (a1 -> …
Run Code Online (Sandbox Code Playgroud)

haskell functor either

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

在Clojure中下载图像

我在使用Clojure下载图像时遇到问题,以下代码的工作方式似乎存在问题: -

(defn download-image [url filename]
    (->> (slurp url) (spit filename)))
Run Code Online (Sandbox Code Playgroud)

这将"下载"文件到我指定的位置,但是我试图用它打开它的任何图像应用程序都无法读取该文件(例如,尝试在Web浏览器中打开它只是返回一个空白页面,尝试打开它预览(osx)说这是一个损坏的文件)

我想这可能是因为slurp应该只用于文本文件而不是二进制文件

有人能指出我正确的方向让我的代码正常工作吗?任何帮助将不胜感激!

clojure

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

如何配置Xcode以将'{'放在生成的文件中我想要的位置

我知道这在程序员中是一个相当有争议的问题,但在开发时我喜欢我的IDE来定位方法/接口/控制声明下面的开头花括号,为了说明目的: -

这就是Xcode自动生成骨架方法{最后: -

-(void) isTrue:(BOOL)input {
    if(input) {
        return YES;
    }
    else {
        return NO;
    }
}
Run Code Online (Sandbox Code Playgroud)

这就是我喜欢布置代码的方式(我相信这叫做Allman风格): -

-(void) isTrue:(BOOL)input 
{
    if(input) 
    {
        return YES;
    }
    else 
    {
        return NO;
    }
}
Run Code Online (Sandbox Code Playgroud)

我只是想知道Xcode中是否有任何配置开关来实现这种开发方式?在键入if/ else语句时它真的很烦人,因为它倾向于使用行末尾自动完成else子句,{如果你喜欢在下面进行开发,那么看起来很傻.

还是我不合理?Objective-C是否应该遵守Apple定义的标准?

xcode coding-style objective-c

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

开发clojurescript/clojure应用程序的"模型"

注意:我是业余的后端(Java)开发人员,在业余时间在Clojure工作,请原谅我的无知.

我正试图了解Clojurescript,以及它如何可能适合我正在进行的项目,或计划在未来继续工作.我已经成长为"经典"Web开发思维模式(例如Clojure运行后端,通过JSON将数据分发到前端以在JS中处理或返回HTML页面以供浏览器渲染),我遇到了麻烦试图了解Clojurescript如何使事情比这个模型更好.

任何人都可以向我解释一下Clojurescript/Clojure开发的一般方法是什么,因为"Clojurescript One"项目名称表示应用程序开发将统一在一种语言下(如此)

  • 通常在应用程序的Clojurescript部分中完成哪些任务?
  • 通常在应用程序的Clojure(例如后端)部分执行哪些任务?

任何帮助将不胜感激,或者如果有人能指出我的某些图表或解释或任何东西 - 这也会很棒!

clojure clojurescript

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

Java 8流 - 链中的每一步评估整个输入或项目是否通过?

如果我有这个简单的程序说

    List<String> input = Arrays.asList("1", "2", "3");
    List<String> result = input.stream()
            .map(x -> x + " " + x)
            .filter(y -> !y.startsWith("1"))
            .collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)

在幕后它的工作方式如a)或b)

一个

map
  "1" + " " + "1"
  "2" + " " + "2"
  "3" + " " + "3"
filter
  "1 1" does not begin with "1"? = false
  "2 2" does not begin with "1"? = true
  "3 3" does not begin with "1"? = true
collect
  add "2 2" to list
  add "3 …
Run Code Online (Sandbox Code Playgroud)

java java-8 java-stream

8
推荐指数
2
解决办法
2653
查看次数