マガジンのカバー画像

技術メモ

74
運営しているクリエイター

2019年7月の記事一覧

Kotlin/Native + Coroutine

Kotlin/Native + Coroutine

7月27日土曜日、曇り明け方にぱらりぱらりと降っていた雨──それをもたらしていただろう台風6号はあえなく熱帯低気圧に変わったらしく、起き出した昼過ぎには暴風の気配さえもなかった。(けれども湿度は高く、それゆえ不快感も高い)

IntelliJ IDEA で Kotlin/Native が簡単に書けることを、まとめておこうと思ったので、以下、そのお話。(macOS のを使っているけれど、ほかの OS

もっとみる

非同期処理の並列実行

7月12日金曜日、小雨霧雨のようなものだったので、帽子だけかぶって(メガネをガードし)傘は持たずに出社。気にならないくらいの降りだったけれど、でも会社につくまでのラスト15分でシャツが透けて見えるくらいには濡れる。

* * *

昨日の続き。

呼び出してから戻るまでにちょっと時間がかかる API があったとして、そういうのを Kotlin では suspend 関数にとじこめられる。例えばこん

もっとみる

普段と違う

7月11日木曜日、小雨客先に出向くために、シャツに綿パン革靴と、ふだんは決してしない格好で出社。

* * *

Android Studio(そしてその元となる IntelliJ IDEA)に scratch file という機能があることを知った。
emacs の *scratch* バッファーみたいなもので、ここにコードの断片を書いて実行して結果を見ることができる。いわゆる REPL。

もっとみる

(car (cons x y)) の評価

(define (cons x y) (lambda (m) (m x y)))(define (car z) (z (lambda (p q) p)))

このように定義されたとき (car (cons x y)) の値がどうなるか。

単純に置き換えていけば良い。(substitute;置換)

  (car (cons x y))= <car を定義で置き換え>  ((cons x y)

もっとみる

数を、データ構造を「関数」で表現する

7月4日木曜日、雨インディペンス・デイ、雨。

* * *

『計算機プログラムの構造と解釈 第二版』 P.52 より演習問題。

「ラムダ」、「無名関数」、「ブロック」。言い方はたくさんある。
最近のプログラム言語は LISP/Scheme で古くから使われてきた仕組みを当たり前に使えるようになってきた。
とくに関数が引数(パラメーター)として受け取った変数をそのまま「閉じ込んで」新しい関数を生

もっとみる