type t (* void *)

ソフトウエアのこととか

Emacsでpythonを書く環境

老人なのでemacsでプログラムを書いていますが、最近はpythonを少しだけ書く必要があったので環境の話をまとめます。
melpaにアクセスできることを想定してます。

念の為、バージョンに依存するところはないと思いますがpackage.elを使うので24以上、 私の環境は26.1です。

続きを読む

Emacsでポモドロをやっていきたいが

今まで自分が何にどれくらい時間を使ったのか分からなくて、ポモドロの記録をつけ始めた。
コレ自体は良いというか、自分の時間の使い方を見直すことができて有意義だと思っている。
しかし、今使っている道具が微妙に使いづらくて困っている

francescocirillo.com

続きを読む

Ubuntu 18.04にアップグレードしたときに起きたこと

設定が色々戻った系のアレ

  • インプリメントメソッドがibusになった settingから下に戻す
  • Alt + Tabのショートカットキーが新しいfunctionに奪われた

  • switcherが標準のものに戻された compizからstatic swicherに戻す

動いていたものが動かなくなった

うれしいこと

  • Ubuntu 18.04にしたことでpythonのバージョンが上がって、local type hintを書いてもエラーにならなくなった。これは嬉しい

ML_Day#2を開催しました

ML Day#2を開催しました。 ML勉強会という名前にしていたときから数えて通算4回目です。

今回もドワンゴさんのセミナー室をお借りしました。 この規模のセミナー室が便利に利用できるのは本当に助かります。

続きを読む

ocamlのctypesで.oをリンクする

昔はもっと面倒だったと思うのですが、いつの間にか動くようになっていました。OCaml 4.07, ctypes 0.11.5で確認。
ocamloptでは普通に.oをリンクするだけでctypesで作った関数が呼び出せる。
ocamlcではできない。

open Ctypes
open Foreign

let f = foreign "f" (void @-> returning int)

let _ =
  Format.printf "%d@." @@ f ()
int f ()
{
  return 100;
}
OCAMLC=ocamlfind ocamlc -package ctypes,ctypes.foreign
OCAMLOPT=ocamlfind ocamlopt -package ctypes,ctypes.foreign

test.x: lib.o main.cmx
        ${OCAMLOPT} -o $@ -linkpkg $^

test: lib.o main.cmo
        ${OCAMLC} -o $@ -linkpkg $^

clean:
        rm *.o *.cm? *.so

# 使ってない
lib.so: lib.o
        gcc -shared $^ -o $@

%.o: %.c
        gcc -c $<

%.cmo: %.ml
        ${OCAMLC} -c $<

%.cmx: %.ml
        ${OCAMLOPT} -c $<

OCamlのformat型の変な?型付け

ツイッターやらリアルで話しすぎてどこまで書いたかわからないけどformat型についてまとめておく。 言いたいことはほとんどこれだけ。

続きを読む