情報は力ではない

UE4 とか Blender とか。

Yokohama.vim #8に行って来た。

Yokohama.vimに初参加して来ました。 yokohamavim.connpass.com @gu4さんによる挨拶 Yokohama.vim#8 from gu4 www.slideshare.net 最初にYokohama.vimとVimの軌跡の比較をしていた。 スライドに記載していたはずのYokohama.vimの軌跡が残念ながら消えてたら…

Vim 8.0にした。

vim

先々週9/12にVim 8がリリースされたので、だいぶ遅れたがVim 8をインストールした。 今回はソースコードビルドに挑戦してみたので、そのメモを書きます。 何気にソースコードビルドは初挑戦(お恥ずかしいことに今までVim 7.4.729を使っていた...)。 やり方…

TaPL 演習4.2.2

問題 arithの実装におけるeval関数の定義を、大ステップスタイルに変えよ。 答案 もう少しうまく書きたい。 let rec eval1' t = try match t with TmIf(_, t1, t2, t3) -> ( let t1' = eval1'(t1) in match t1' with TmTrue(_) -> let v2 = eval1'(t2) in v2…

vim-ocaml-stdlib-helpを作った。

vim

最近、OCamlを勉強していて、VimでOCamlを書いてます。その時に標準ライブラリの機能を調べたいなと思うのだけれど、いちいちブラウザで調べるのも面倒なのでVim pluginを作りました。 github.com 使い方は :OCamlStdLibHelp {module-name} という感じです。…

TaPL 演習3.5.14

問題 定理3.5.4が算術演算の評価関係に関しても成り立つことを示せ。 すなわち、 かつ ならば であることを示せ。 証明 の導出に関する帰納法を使用し、 の導出で最後に使った規則に対する場合分けにより証明する。 E-SUCCの場合 は という形であり、またあ…

JavaScriptの論理演算子の評価値

最近、サイ本を読んでいます。 その中で少し驚いたものを一つ紹介したいと思います。 以下の論理演算子が何を返すかという話をします。 var o = { a: 0 }; var b1 = o && o.a; var b2 = undefined && o; var b3 = o || ""; var b4 = null || undefined 値の…

Vimの起動時間を計測する。

vim

概要 Vimの起動時間を計測するには次のようにする。 {fname}にその結果が書き込まれる。 vim --startuptime {fname} 内容 Vimの起動時間を計測するには、--startuptimeオプションをつけてVimを起動する。このオプションには引数としてファイル名が必要。 hel…

Mockitoの@InjectMocksは何を見てInjectするのか

InjectMocks (Mockito 2.0.36-beta API)に書いてます。 思った挙動と異なっていたので、自分のためにメモ。次のようなSampleクラスがあったとする。 public class Sample { private final Hoge hoge; private final Fuga fuga; private HogeHoge hogehoge; p…

ハル研究所プログラミングコンテスト2015

一昨年のハル研プロコン2014に引き続き、去年もハル研プロコンに参加しました。 ハル研究所 プログラミングコンテスト2015 | TOP今年の問題は宅配便でした。 問題の雰囲気は、車両配送問題(Vehicle Routing Problem, VRP)っぽい感じです。開催されてからすぐ…

Material Design GuideのListsを読んだ。

そろそろMaterial Designについても知りたいなぁと思ってきたので、Material Designのサイトの気になるところから読んでいる。 今日はListsとLists: Controlを読んだ。 Lists - Components - Google design guidelines Lists: Controls - Components - Googl…

VimConf 2015に行ってきた。

VimConf 2015に行ってきました。発表者の方々のスライドへのリンクは次のURLにあります。 http://vimconf.vim-jp.org/2015/#agendaセッションについては他の方々が紹介していると思うのでそちらにお任せしたいと思います。 申し訳ありません。*1 懇親会 懇親…

Android Data Bindingを使ってみた。

最近ちょこちょことtechbooster.fmを聞いているのですが、第11回でDataBindingの話をしていて、その存在を知ったのでちょっと使ってみた。 詳しい使い方についてはData Binding Guide | Android Developersに詳しく書いている(はず)です。まだ読んでないで…

ImageButtonを使ってみた。

上の画像の再生ボタンのようなボタンを作成したかったので、そのためのメモ。 ImageButton このようなボタンを作成するためにはImageButtonを使う。これは、その名の通り画像付きのボタンを表す。 例えばこんな感じに表示される。 このImageButtonの結果は次…

ActivityUnitTestCaseでIllegalStateException

Androidのテストを学ぶためにCreating Unit Tests | Android Developersを読みながら、そのサイトに載っているAndroidTestFunを写経していた。その時、ちょっと詰まってしまったのでメモ。 ActivityUnitTestCaseのstartActivity()を起点にした例外 AndroidTe…

Notificationをユーザに消されないようにする

AndroidでのNotificationをユーザに消されないようにするには次のようにすれば良い。 NotificationCompat.Builder builder = new NotificationCompat.Builder(context) .setOngoing(true); // このメソッドでtrueを指定する 主な使用用途として考えられるの…

GitHub実践入門を読んだ。

今日、友達に頂いたGitHub実践入門を読んだ。読みたい本だったのだけれど、お金が無くて買えなかったから非常にありがたい。www.amazon.co.jp普段からGitやGitHubは軽く使っているので、すらすらと読むことが出来た。 本の中でgit log -pやgit reflog、git r…

RecyclerViewとCardViewを使ってみた。

Androidの開発をしたばかりで、わからないことが多い。今回はRecyclerViewとCardViewについて少しだけ学んだ。Getting Started With RecyclerView and CardView on Android - Tuts+ Code Tutorial 少し古い記事だけど、このサイトのコードを写経してRecycler…

メインスレッドではネットワーク操作を行ってはいけない。

最近、ちょこちょことAndroidの開発を行っている。色々と学ばなければいけないことが多いので、少しずつしか開発が出来ない。 だいぶ古い記事だけど、Androidで広がる,携帯アプリ開発の世界 - 第4回 簡単なRSSリーダーを作ってみる:ITproを写経して 簡単な…

va_list型というものを知った。

C++

ゲームエンジン・アーキテクチャを読んでいて9章のサンプルコードで出てきたva_listとそれに関連するマクロや関数を初めて知ったので簡単なコードを書いてみた。特に使い道のないコード。 va_listのサンプルva_list型は可変長引数を扱うために使う型。 詳し…

ゲームエンジン・アーキテクチャ第2章

第2章のタイトルは「仕事用ツール」。この章では主にバージョン管理システム、Microsoft Visual Studio、それからプロファイリングツールとメモリリーク、メモリ破壊の検出について記述している。 2.1 バージョン管理 バージョン管理システムを幾つか紹介し…

ゲームエンジン・アーキテクチャ第1章

www.amazon.co.jp 今読んでいる本です。ゲームエンジンの作りに興味があるので読むことにしました。 本を読んでいるとインプットばかりでアウトプットをしないことが多くなるのが自分の悪いところなので、不定期にアウトプットをしようと思い、メモを残すこ…

Vimで条件に一致する要素の個数を返す関数

vim

ふとVimで条件に一致する要素の個数を返す関数みたいなの欲しいなと思ったので実装してみた。 条件に一致する要素の個数を返す関数簡単なものであれば動くと思う。 例えば let s:list = range(10) echo s:count_if(s:list, 'v:val < 3') " => 3 他のみなさん…

replaceScene()とEventListener

普段、cocos2dxで開発している訳ではなく、あまりcocos2dxを知らないのだけれど、少し疑問が湧いたのでそれを書いてみる。 疑問: replaceScene()したあと、それまでに登録していたEventListenerはどうなるのか 例えば、あるシーンをタッチすると次のシーンに…

:forでリストを受け取れる

昨日、vim-threesのコードを読んでいたときに:forでリストを受け取れることを知ったのでメモ。thinca/vim-threesgithub.com for [ x, y ] in [ [1, 2], [3, 4], [5, 6] ] " do_something endfor といった感じでforでリストを受け取ることが出来る。 for [ x;…

normalコマンドとgetchar()関数

vim

Vim scriptでゲームを作るときにキー入力を受け付けてない気がするなぁと思うことがあって 多分normalコマンドが悪さしている気がするなぁと思ったので、次のようなコードを書いてみた。 2秒間s:foo()が処理を行うのでその間にキー入力をして、そのキーがge…

Osaka.vim #4に参加してきた

vim

昨日、Osaka.vim #4に参加してきた。 Osaka.vim #4 - connpass自分は、前から作りたかったvimで動くゲームをひたすら作っていた。5時間ほどしかコーディングしていないのだけれど、一応遊べる感じにまでなった。他に追加したい仕掛けやステージがあるのでま…

vim-themis, vim-owlを使えるようにした

vim

vim scriptのテストを書きたいと思ったので、テストフレームワークを用意した。 vim-themisとvim-owlの2つを用意。thinca/vim-themisgithub.com osyo-manga/vim-owlgithub.comvim-themisはvimspecの記述が気に入っている。 けれども、自分の知識が無いため…

Heap sort

Twitterで友達が「ヒープ考案した人、すごい」と言っていたので、誰なのか気になって調べた。 wikipediaによるとJ. W. J. Williamsという方がヒープソートと一緒に考案したそうだ。Heapsort - Wikipedia, the free encyclopedia詳しくは1964年に出版された"A…

プログラミング言語C++ 7.5

ポインタが指すオブジェクトが定数 int x = 3; int y = 4; const int* pc = &x; // 定数へのポインタ pc = &y; // OK ポインタそのものが定数 int x = 3; int y = 4; int *const cp = &x; // 定数ポインタ cp = &y; // エラー: cpは定数 定数を指すポインタ…

プログラミング言語C++ 7.4のメモ

知っていたことも知らなかったことも改めて学んだこともメモ。 配列からポインタへの型変換はあるが、ポインタから配列への型変換は無い char v[] = "char"; char* p = v; // OK v = p; // NG a[j] == *(a+j) == *(j+a) == j[a] std::cout << "Texas"[3] << …