Common Lispで最速のfizzbuzzを実装した話

Kazuho氏のblogにこういうのがあったのでCommon Lispでやってみた。 blog.kazuhooku.com Common Lispで実装する。 (defmacro fizzbuzz (n) (format nil "~{~a ~}" (loop for i from 1 below n collect (cond ((= 0 (mod i 15)) "fizzbuzz") ((= 0 (mod i 5))…

Pythonのmultiprocessingおよびpipe実行時間

Pythonのmultiprocessingおよびpipeの実行時間計測。 multiprocessing code #!/usr/bin/env python # # see also : http://docs.python.jp/2.7/library/multiprocessing.html from sys import stdout from time import time from multiprocessing import Pro…

ZenBook3のベンチマーク

SysBenchを使ってZenBook3のベンチマークを取ってみた。 インストール apt install sysbench ファイルIO 準備する。 cd /tmp sysbench --num-threads=16 --test=fileio --file-total-size=3G --file-test-mode=rndrw prepare sysbench 0.4.12: multi-threade…

Ubuntu 16.04でdockerを使う

Circle CIとかで色々やりたいので、今更Ubuntu 16.04にdocker入れる。 まずは Install Docker on Ubuntu - Docker にある通りにインストールしてhello world apt install docker.io service docker start usermod -aG docker $USER ログアウトしてログイン d…

Raspberry PiのBluetoothをCommon Lispから使えなかった

rp3bのbluetoothをcommon lispから使いたい。 bluezのラッパーから使うだけだけどc2ffiを実行できるのか? とりあえずhu.dwim.bluezをロード ros use sbcl-bin ros run (ql:quickload :hu.dwim.bluez) ; caught ERROR: ; READ error during COMPILE-FILE: unm…

Raspberry PiでCommon Lispの起動が遅い

Raspberry Pi 3 Model B買ってCommon Lisp入れた - gos-k’s blog でちょっと触っていて起動が遅い気がするのでバージョン確認出来たものについてとりあえず時間計測する。 ros use sbcl-bin time ros run -e "(quit)" real 0m26.860s user 0m24.720s sys 0m0…

Raspberry Pi 3 Model B買ってCommon Lisp入れた

Raspberry Pi 3 Model B - Raspberry Pi を購入したのでCommon Lispを動かしてみたメモ。 NOOBSのSDカード作成 PC上で Download NOOBS for Raspberry Pi から NOOBS LITE v1.9をダウンロードし、 NOOBS For Raspberry Pi – Rants & Raves – The Blog! を参考…

サムライト退職

8月でサムライト株式会社を退職しました。理由はお察し下さい。 1年チョットの在職中、前半はCommon LispとJavaScriptを書き、後半はCommon Lispを書いてました。 Webサービスの開発は初めてだったのでSQLに悩まされる日々ではありつつ良い経験だったと思う…

MGLを触るためにとりあえず動作確認

Common Lispの機械学習ライブラリが一部で流行りなので、ちょっと触ってみた。 Common Lispで行列演算(2): MGL-MATを使う - 翡翠はコンピュータに卵を生むか Lispmeetup #39 MGLの紹介: Common Lispによるディープラーニング cl-cudaのquicklispへの登録が…

mysqlのパスワードなしアカウント

ローカルの開発用mysqlでパスワードなしのアカウントを作る場合に、 update user set password='' where User='root'; というのを見かけたがやっても上手くいかず、describe user;でフィールド見て、 update user set authentication_string='' where User='…

Common Lispでdisassembleを使ったりチューニングしたり

Common Lispはdisassembleも付いてきてチューニングできるらしいとゆー話をよく聞くので、逆アセンブルしてみた。 題材としてはこの辺を参考に Common Lispで高速行列演算 | κeenのHappy Hacκing Blog Python (NumPy) と Common Lisp (LLA) で行列積の実行速…

local-time:todayとlocal-time:now

The local-time Manual SQLを扱っていると日付を指定する事が往々にある。 Common Lispからそういうコードのユニットテストを行う場合local-timeライブラリを使っている。 が、このライブラリにある関数todayと関数nowは両方ともtimestampオブジェクトを返す…

C や C++ から Common Lisp に移って (2015年9月版)

なんか細々と思ったこととか Emacs EmacsでCommon Lispを扱う場合にSlimeを使っているが、Slime以外にもプラグインは存在するため、Web上で見つけたEmacsのCommon Lisp情報がそのまま利用できるのか、Slime向けに別の方法があるのか判断を要する。 デバッガ …

C や C++ から Common Lisp に移って (2015年7月版)

C や C++ から Common Lisp の世界に移って、 もちろん根本的に違う機能も多いが、 似ている部分もありつつ表面的な表記の違いで混乱する事もある。 後になると、慣れてしまって思い出せない気がするので今のうちに書いておく。 用語はかなり C や C++ より…

フィックスターズを退社してサムライトに入社

フィックスターズ退社 株式会社フィックスターズを退社しました。理由はお察し下さい。 この会社では Cell/B.E. とか CUDA とか OpenCL とか AVX とか、主に特定プロセサ向けにポーティングしていた。 まわりは割と Windows アプリ作ってたりとかが多くて、…