Skip to content

Instantly share code, notes, and snippets.

View masatoi's full-sized avatar

Satoshi Imai masatoi

View GitHub Profile
@masatoi
masatoi / file0.txt
Last active April 19, 2019 08:54
Common Lispでゼロから作るディープラーニング (1)行列演算とニューラルネットのフォワード計算 ref: https://qiita.com/masatoi0/items/b3201d44fe13e94afc19
export PATH=/usr/local/cuda-8.0/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH
export C_INCLUDE_PATH=/usr/local/cuda-8.0/include:$C_INCLUDE_PATH
#!/bin/sh
#|-*- mode:lisp -*-|#
#|
exec ros -Q -- $0 "$@"
|#
(progn ;;init forms
(ros:ensure-asdf)
;;#+quicklisp (ql:quickload '() :silent t)
)
@masatoi
masatoi / parse-float.lisp
Created February 26, 2018 21:00
parse-float (Tuned for especially SBCL, restricted to single-float, without skip-whitespace)
(ql:quickload :alexandria)
(defpackage #:parse-float
(:use #:cl #:alexandria)
(:export #:parse-float))
(in-package #:parse-float)
(eval-when (:compile-toplevel)
(declaim (optimize (speed 3) (safety 0))))
@masatoi
masatoi / csv.lisp
Last active February 26, 2018 20:43
State-machine based CSV reader
(defpackage :csv-reader
(:use :cl)
(:nicknames :csv)
(:export #:parse-file #:parse-stream))
(in-package :csv)
(declaim (inline extend-field cell-input cell-finish row-finish parse finish))
(eval-when (:compile-toplevel)
(ql:quickload :chirp)
(in-package :chirp)
;; load key and secret
(load "~/.chirp")
(defun cascade-search (query &key (count 100) (interval 5) (max-cycle 100) max-id)
(let ((search-result (search/tweets query :count count :max-id max-id))
(product nil))
(loop while search-result
for cycle from 1 to max-cycle
@masatoi
masatoi / dot.lemrc.lisp
Last active October 22, 2017 05:39
Setting file for lem
;;; -*- coding:utf-8; mode:Lisp -*-
(in-package :lem)
;; Key Bindings
(define-command split-3-window-horizontally () ()
(let ((w-width (window-width)))
(split-active-window-horizontally)
(shrink-window-horizontally (- (window-width) (floor (/ w-width 3))))
(other-window)

Common LispによるWebスクレイピング

(ql:quickload :cl-unicode)
(defun basic-ej-char? (symb)
(or (eq symb 'CL-UNICODE-NAMES::HIRAGANA)
(eq symb 'CL-UNICODE-NAMES::KATAKANA)
(eq symb 'CL-UNICODE-NAMES::CJKUNIFIEDIDEOGRAPHS)
(eq symb 'CL-UNICODE-NAMES::CJKSYMBOLSANDPUNCTUATION)
(eq symb 'CL-UNICODE-NAMES::BASICLATIN)))
(defun count-basic-ej-char (str)
(defun matrixp (matrix)
"Test whether the argument is a matrix"
(declare (type (simple-array double-float) matrix))
(and (arrayp matrix)
(= (array-rank matrix) 2)))
(defun num-rows (matrix)
"Return the number of rows of a matrix"
(declare (type (simple-array double-float) matrix))
(array-dimension matrix 0))
(defun multiply-matrix (m1 m2 m3)
(declare (optimize (speed 3) (safety 0))
(type (simple-array double-float) m1 m2 m3))
(let* ((rows1 (array-dimension m1 0))
(cols1 (array-dimension m1 1))
(cols2 (array-dimension m2 1)))
(declare (type fixnum rows1 cols1 cols2))
(loop for row fixnum from 0 below rows1 do
(loop for col fixnum from 0 below cols2 do
(loop for i fixnum from 0 below cols1 do