Shammer's Philosophy

My private adversaria

2008-12-01から1ヶ月間の記事一覧

何かを作りたい衝動・・・

開発の仕事を離れてしばらく経つ。そのせいか、何かガリガリコーディングするのに夢中になりたくなる。 この夢中になっている時間が何とも言えず好きだと自分で思う。 今正社員雇用でなく、個人として働いているが、経済状況も手伝って正社員の方がいいのか…

間違えたお客様観?

お客様は神様、という前提で、お金を払っているからといって理不尽な要求ばかりしてくるユーザー(会社)がある。 その会社自体は日本ではかなり有名な某ポータル系企業なわけだが、ここのとある方のクレームたるや本当に子供じみてひどいものだった。 おそ…

Lisp の Hash Table

Hashtable の作成自体は、make-hash-table関数を使用する。以下、使用例。 > (setf car-hashtable (make-hash-table)) #<HASH-TABLE :TEST EQL size 0/60 #xC57544E> > (gethash 'car car-hashtable) NIL NIL > (setf (gethash 'my-car car-hashtable) 'Porte) PORTE > (setf (gethash 'my-want-car car</hash-table>…

雇用不安定な状況はいつまで続くのだろう

世の中経済の見通しが立たない状態で突然の解雇が相次ぎ問題になっている一方で、各種求人サイトを見ると求人が0になっているわけでもない。 でも大半は首都圏の仕事というのが問題なのかもしれない。人が多いところにはそれだけ仕事も需要がある。 アリス…

配列とポインタその2

C

C言語では、配列はポインタとして使うことができる、というか配列名はその配列の先頭要素のアドレスと同義。配列とポインタその1 - Shammerismでも多少言及したけれども。 つまり、 ポインタ=配列の先頭要素のアドレスというのはC言語の仕様。これを確認す…

配列とポインタその1

C

実際の開発現場ではほとんど利用されていないようだが、入門書などでよく利用されているscanfという巻数がある。 これは、引数に値を格納する変数のアドレスを指定する。つまり、 int value = 0; scanf("%d", &value); というような形で、変数の頭に&をつけ…

Lispの構造体

Lispでも構造体が使える。以下のような実装になる。 > (defstruct test x y) TEST > (setf x (make-test :x 0 :y 0)) #S(TEST :X 0 :Y 0) > (test-x x) 0 > (test-y x) 0構造体を作成すると、勝手に「make-構造体名」という関数が定義され、それを利用して構…

文字列の扱い初歩

C

プログラミングの中で文字列を扱う、というのはある意味では定番。 Javaの場合は、java.lang.Stringというクラスがあり、文字列はこのクラスが中心になる。 内部的には、このクラスはcharの情報を持っていて、これが文字列の実体だった。 Cの場合はどうか。C…

Cの配列チェック

C

Javaではあり得ないようなことがCでは普通にありえる。 こうした内容の話は探せばたくさんあるのだろうけれども、配列の要素数もその一つ。 Javaだと、 String array = {"AAA","BBB","CCC"}; System.out.println(array[100]); と、存在しない配列の要素数を…

Lispには文字列置換関数がない?

いろいろ探してみたが、Lispには文字列置換関数がないようだ。指定した範囲の文字列を置換できる、replaceという関数はある。 The Common Lisp Cookbook - Stringsにreplaceの使用例がある。 > (setf my-string (string "Zeppo Marx")) "Zeppo Marx" > (repl…