« 2006年12月 | トップページ | 2007年2月 »

2007年1月29日 (月)

HTMLソース?

大学のゼミにて、「htmlソース」とう表記がありちょっと思ったこと。
結論はWebブラウザはHTML(+javascript, ...)インタプリタ何だなということ。
下のはそれに至ったグダグダな思考の流れ?

ソースってプログラミング言語じゃないんだし・・・
いやまて、htmlのlはLanguageの略字だったよな。
でも、普段はソースって言い方しないような・・・
ソースがあるならhtmlオブジェクトってのもあるのかしら?
ああそうか、Webブラウザってインタプリタなんやよね。
htmlオブジェクトにして送れたりしたら面白いかも。
ブラウザのキャッシュってそんな風になってるのかも。
複数のファイル(画像とか)と合わせているのってオブジェクトファイルのリンクに近いっす。

超グダグダだわぁ~

| | コメント (1) | トラックバック (0)

2007年1月22日 (月)

swap

C言語でのswapの実装を汎用的に書くのに挑戦してみた。

#include <stdlib.h>
#include <string.h>

#define swap(a, b)\
    do {\
        void *tmp = malloc(sizeof(a));\
        memcpy(tmp, &a,  sizeof(a));\
        memcpy(&a,  &b,  sizeof(a));\
        memcpy(&b,  tmp, sizeof(a));\
        free(tmp);\
    } while(0)

コストは大きいが、どんな型同士でも一つのマクロでスワップできる。
しかし、型チェックはできない。


おまけ
必要な型のswap用の関数を作成。

#define swap(type)\
    void type##_swap(type *a, type *b)\
    {\
        type tmp = *a;\
        *a       = *b;\
        *b       = tmp;\
    }

| | コメント (0) | トラックバック (0)

2007年1月 7日 (日)

プログラミング2.0

プログラミング2.0っていうのも登場したみたいですね。

秋元@サイボウズラボ・プログラマー・ブログ: 
プログラミング2.0
左から右に変わってきているのはまぁ納得。
気になったのが二つ。


一つ目が、
遅い -> 速い

これは、何の速度を言っているのだろう。
計算機の速度はプログラミングについての進化とは別だと思うし、
同じ時間でコーディングされる量が増えたってことでもないと思うし。


二つ目が
壊れやすい -> アジャイル

壊れやすいとアジャイルは対になるものでは無い気がしました。
ただ、原文をチラッと見てみると
Fragile -> Agile
となっていて関係ありそうな感じ。
アルクの訳も見てみる。
Fragile
Agile
どっちも短期間というのが共通していて
Fragileは悪いイメージ、Agileは良いイメージってところなのかな。

| | コメント (1) | トラックバック (1)

« 2006年12月 | トップページ | 2007年2月 »