Bye Bye Moore

猫マンション建築の野望を胸に零細事業主として資本主義の荒波に漕ぎ出したアラサー男の技術メモ

macar関数

mapcar関数はリストに対し特定の命令を連続して実行して新しいリストを用意する関数です。

実際のところ

(mapcar - '(4 5 6) '(1 2 3) )
;; (3 3 3)

二つ目のリストを省略し、lambdaを使うことも

1213>  (mapcar (lambda (x) (+ x 1)) '(1 2 3 4 5))
;; (2 3 4 5 6);;(1 4 9 16 25)

Lispなので、関数は非破壊です。

1213>  (defvar ownlist '(1 2 3))
;; ownlist

1204>  (mapcar - ownlist '(1 2 3) )
;; (0 0 0)

1204> (car ownlist)
;; 1

【読書メモ】会社を辞めずに収入を月50万円増やす! 小さく始めて成功させる「自分ビジネス」

50代のセミリタイア組をターゲットにしているようです。
著者の船ヶ山氏はこういった企業本を8冊ほど執筆されているそうで、
文体や事例が地に足のついた感じなのが好印象です。

基本的な論調は多くのスモールビジネス本とほぼ共通です。
つまり、

  • 小さくはじめる
  • 経験や知識の範囲からはじめる
  • 入金スパンは可能な限り短く
  • 腹を空かせた群衆に売れ
  • ターゲット市場にあった価格設定にせよ
  • ある程度軌道にのったら、あとはマニュアル等をつかいビジネスを自動化しろ

という感じ。
個人的に目新しかった点は以下のところ。

  • 開店セールの一回限りの値引きより、回数券割引サービスをしてリピートに繋げる
  • アンティーク市場のある鉄製ミシンを入手するため、新式ミシンをつかって下取りビジネスにて回収
  • 大企業は資本力をつかって市場を開く。中小企業は、大企業がカバーできなかったニッチを狙う。

【読書メモ】日本とフランス「官僚国家」の戦後史

日本の官僚機構の優秀さと硬直性は世界でも割と有名です。
遠く欧州はフランスでも、同じように強固な官僚機構が定着しています。

本誌のメインテーマは日本とフランスの第二次世界大戦以降の動向について。

個人的には最終章が「ポピュリズム」というのが、なんとも現代的だなぁと思いましたが……。
著者曰く、日本のポピュリズムは「官僚機構や与党のような既成勢力のアンチ」なのに対し、
フランスはじめ欧州のポピュリズムは「グローバル化や移民による既成勢力の崩壊に対するアンチ」とのこと。



日本の官僚機構については以下の本も中々面白かったです(小学生並みの感想
shuzo-kino.hateblo.jp

uLispのapply関数の中で">"や"<"を使うと……???

apply function
Syntax: (apply function list)

Returns the result of evaluating the function specified by the first argument with the list of arguments specified by the second parameter.

実際のところ

(apply > '(0) )
; t

(apply > '(1) )
; t

(apply > '(2 1) )
; t

uLispのsave-imageとload-image

実際のところ

uLisp 2.7 
1213> (defun myadd (val) (+ val 2))
myadd

1199> (myadd 23)
25

このmyaddを初期状態で含んだイメージとして保存しときます。

1199> (save-image)
25

ここでリセットを押すと……一旦消されるので、
先ほどの関数は無効になっています。

uLisp 2.7 
1213> (myadd 2)
Error: 'myadd' undefined

ここでload-imageすると……保存されていたmyadd関数が呼び出し可能になりました。

1213> (load-image)
25

1199> (myadd 2)
4

uLispでUTF-8な文字を扱う

やってきたUTF-8な文字を取り扱います。

実際のところ

文字に変換

1213> (code-char 41)
#\)

1213>  (code-char 42)
#\*

1213>  (code-char #x41)
#\A

数値からUTF-8

1213> (char-code #\A)
65

制御文字の置き換えも可能。
使える文字は

Null, SOH, STX, ETX, EOT, ENQ, ACK, Bell, Backspace, Tab, Newline, VT, Page, Return, SO, SI,
DLE, DC1, DC2, DC3, DC4, NAK, SYN, ETB, CAN, EM, SUB, Escape, FS, GS, RS, US, Space

1213>  (char-code #\return)
13

1213>  (char-code #\tab)
9

1213>  (char-code #\TAB)
9

デフォのArduinoで使えないような文字はダメです。

1213> (print #\あ)
Error: Unknown character