タグ

ブックマーク / qiita.com/dankogai (5)

  • APFSで再燃したNFD問題 - Qiita

    iOS 10.3 でAPFSが番投入されました。それでiPhoneiPadが文鎮化するなどの深刻な問題はみられなかったものの、やはり無問題とはいかなかったようで。 iOS10.3で不具合の出るアプリは、APFS関連の影響かも(Unicode Normalizationの振る舞いが変わったらしい)。GoodReaderとDropboxの同期でエラーが出るようになったのだが、ファイル名に濁点を含むファイルを除いたら同期できるように。 — 山路達也 (@Tats_y) March 29, 2017 原因を調べてみました。 #!/usr/bin/env perl use strict; use warnings; use feature ':all'; use Encode; use Unicode::Normalize; use utf8; binmode STDOUT, ':utf8';

    APFSで再燃したNFD問題 - Qiita
    terazzo
    terazzo 2017/03/30
  • Swift 2のProtocol-Oriented Programmingっぽい書き方を理解する - Qiita

    func isEven(number: Int) -> Bool { return number % 2 == 0 } let evens = Array(1...10).filter(isEven) print(evens) // [0, 2, 4, 6, 8, 10] 何が古いかというと、いちいち1...10をArrayにしているところ。もうしなくていいんです。そう、Swift 2ならね。 実際、Swift 2では.mapはもうArrayでは定義されてないんです。公式ドキュメントのArray Structure Referenceを見ても、.mapはどこにも見当たりません。 ではどこで定義されているか? Arrayが準拠しているprotocol CollectionType です。実際にCollectionType Protocol Referenceを見てみると、.mapや.filt

    Swift 2のProtocol-Oriented Programmingっぽい書き方を理解する - Qiita
  • Swift - 等しさとせつなさと型の強さと - Qiita

    Swiftの関数の引数は、常に一つ だとしたら、Swiftではカリー化は不要ということになってしまう。 もちろん、そんなことはない。 求めているのは、「n-tupleを引数とする関数を、1-tupleづつ引数を受け取り、n個受け取った時点ではじめて値を返す関数にすること」である。 例えばこんな風に。 import Darwin // for log(Double) func logWithBase(base:Double)->Double->Double { return { x in log(x) / log(base) } }

    Swift - 等しさとせつなさと型の強さと - Qiita
  • Swiftの関数の引数は、常に一つ - Qiita

    だとしたら、Swiftではカリー化は不要ということになってしまう。 すなわち、ざっくり言うとカリー化とは複数の引数を1つに減らすことを指します - Swiftで関数のカリー化(currying)入門 Swiftの関数は、つねに一つの値を受け取り、一つの値を返すのだから。 以下のコードを動かしてみれば、それがわかる。 func call<A,R>(f:A->R, a:A)->R { return f(a) } func id(i:Int)->Int { return i } func add(x:Int, y:Int)->Int { return x + y } call(id, 42) // 42 call(add, (21,21)) // 42 上記のcall()は、「『型Aの値を一つだけ取って型Rの値を返す関数』と『型Aの値』を取って『型Rの値』を返す関数」なはずなのに、「IntとIn

    Swiftの関数の引数は、常に一つ - Qiita
    terazzo
    terazzo 2014/07/30
    一方Haskellコミュニティでは最初からそれのことをカリー化と呼ぶらしい cf: http://d.hatena.ne.jp/kazu-yamamoto/20110906/1315279311
  • Swiftの関数はファーストクラスである--とは限らない - Qiita

    ここQiitaには初投稿の弾です。 Swiftにおいて、関数はファーストクラス、つまり関数は第一級関数であることはすでに皆さんご存知のとおりです。つまり、 func f(x:XType)->RType { var result:RType // .... return result }

    Swiftの関数はファーストクラスである--とは限らない - Qiita
    terazzo
    terazzo 2014/06/27
    変数が単体で型パラメータ持てない話とジェネリックな無名関数が定義できない問題は別のような。/なんか混乱してきた……/「Swiftには量化された関数が無い」でいいのかな?
  • 1