読者です 読者をやめる 読者になる 読者になる

euphonictechnologies’s diary

Haskell超初心者の日記です。OCamlが好きです。

follow us in feedly

Swift製のオセロエンジンを公開しました

Swift製オセロエンジンです 苦労に苦労を重ねて書いたおかげでとても遅くて弱いエンジンです。まだまだ若輩者です。 これは何か オセロAIとオセロ環境、あとオセロエンジンと喋るプロトコルとそれをコマンドラインで動かすためのアプリケーションです。 gith…

超かんたんなSwift on Linux用のMakefile

あると便利 gist.github.com こんなもので良ければどうぞ。 使い方 $ make # make buildに同等。ビルドします。 # コンパイルオプションで分けたりしてもいいと思います。 # make buildでデバッグ版、make build_releaseでリリース版とか。 $ make update # …

Linux上でSwift Package Managerを使ってビルドするときに躓いたこと

けっこう茨の道です なんかまだ「初心者でも鼻くそほじりながら日曜日にさらっとね」って感じではないです。なにせコンパイラ、Xcode、Swift Package Manager(以下SPM)すべてが日進月歩でバージョンアップしているのでウェブに書いてあることそのまま試すと…

"iOSアプリとLinuxコマンドラインアプリケーション間でライブラリを共有する"を実践した時のメモ

前回は iOSアプリとLinuxコマンドラインアプリケーションでライブラリを共有するためにSwift Package Managerをつかってライブラリを作ってそれをiOS側ではEmbedded Binariesとして、Linux側では単純にパッケージとしてリンクして使えるようにしてみました。…

iOSアプリとLinuxコマンドラインアプリケーション間でライブラリを共有する

サーバサイドSwiftって全然盛り上がってないですね なんかフロントエンド盛り上がってますがサーバサイドっていまいちそういう感じしませんね。悲しいです。フロントエンドアプリばっかり作ってるとフロントエンド脳になってまうで。 というわけで拙作のオセ…

Swift 1.2から2.2でウラシマ状態 - ワーニングを撲滅する

ワーニングはエラーだ 今更かも知れませんがワーニングはエラーです。ワーニングはエラーです。ワーニングはエラーなんです。ワーニングを放置してコミットする意味がわかりません。なのでワーニングを修正していきます。 このエントリは前回のエントリの続…

Swift 1.2から2.2でウラシマ状態 - ビルドできるように修正する

久しぶりにXCodeを起動しました。 昔のプロジェクトをインポートしたところ"最新のswiftに自動で変換しますか?"と余計なお世話をぶちかましてきたのでスルーしてビルドしたところビルドエラーの嵐。後方互換性とか関係ねえからっていうAppleの教えが心に響…

Swift - Swift1.2のコンパイラの最適化

Swiftの言語仕様が新しくなってたのはSwift 1.2というやつだったらしい そうだとは知らずにまた開発者に告知もなく言語仕様を変えやがったのかと思っていました。アップグレードならまあ、仕方ない。 Swift - また言語仕様が変わっていやがる 2015春 - eupho…

Swift - また言語仕様が変わっていやがる 2015春

You have been warned! Swiftは開発途上の言語です というわけで、またSwiftの言語仕様がガラリと変わりまして、さっぱりビルドを通りません。ぱっと見ると17個ものビルドエラー。なーんかC->C++->Ocamlあがりの私としては言語仕様というのはバックワーズコ…

Haskell - GHC for iOS : 既存のSwiftプロジェクトにHaskellで作った関数をさくっと組み込む

動機 Swiftでそこそこ普通の大きさのアプリケーションを書いてきたのですが、いかんせん遅い。どうも配列とか構造体とかの実装がまだ成熟しておらず、超高速なAIを実装するにはコンパイラの最適化が…とかなんとか書こうと思ったんですが、ぶっちゃけ実行速度…

クールなSwift用ドキュメントジェネレーターjazzyを使った

Swiftにdoxygenが使えない Objective-Cしか対応していないことに気づきました。私は愚か者なので1ヶ月前から触ってないSwiftコードについて何も覚えていないことに気づきました。一生懸命思い出そうとするのですが、思い出せるのは初孫の名前ばかり。なので…

Swift - 整数型でハマる

Swiftの整数型はSwift Standard Library | Apple Developer Documentationにあるように、符号ありと符号なしの幅指定なしのInt/UIntと幅指定有りのInt32/Int64...などがあります。 こんな感じです。 Type Minimum Value Maximum Value Int8 -128 127 Int16 -…

Swift - delegateを実装する、通知する、通知される

protocolの仕様は未だに不安定 Appleは未だにこの辺りの仕様をXcodeのバージョンを上げるたびにコロコロ変えているように見えます。この情報は2014/10/25日現在私がXcode ver 6.1(611052d)で確認した内容です。 delegateってどんなだっけ おさらい。デザイン…

Swiftに触ってみた

事情があってSwiftを触ってみた。さらっと覚えておくことと所感をメモしておく。 覚えておくこと Optional型はアンラップするとき基本こう使う if let unwrappedNonNilVariable = NillableVariable { something... } Optional型な引数とそうでない引数でシグ…