�ȥå� «���� �ǿ� ���» �ɵ�

�Ϥ���ƤΤˤ�

�����ΰ����դ�

2004|11|
2005|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|12|
2024|01|02|03|04|05|06|07|08|09|10|11|12|

ToDo:


2009-10-01

_ �ƥ����ȥץ��ȥ���

http://d.hatena.ne.jp/kazuhooku/20090928/1254113043

����Ū�ˤ��������Ȼפ����ɡ� http �ߤ����˺٤����إå��������Ĥ����ä� ��Ϥɤ�ȥڥ������ɤ����äƤ�褦�ʥץ��ȥ��������ˤ��Ƥ봶���ʤΤ��ʤ��� �Хå�����ɤȥߥɥ륨���Ū����ѥ����ФȤΤ��Ȥ�Ȥ��ǡ� �١��Ȥ����ե�����ɤ�����褦�ʥץ��ȥ������ �ʤ��ʤ��ƥ����ȤǤϤ�ꤿ���ʤ��褦�ʡ�

���Ȥ��� twitter �θ������ä��顢

[{ uid: 1234, timestamp: 1254330459, text: "�ʤ�Ȥ��ʤ�", client_id: 3 },
 { uid: 2345, timestamp: 1254330451, text: "�ۤ��ۤ��ʤ�", client_id: 2 },
 ...
]

�Ȥ������������ΤϤ���ޤ�ƥ����Ȥ����ꤿ���Ϥʤ��褦�ʡ�

���ҤϤޤ��ʤ�Ǥ⤫��Ǥ� protocol buffer �� �Ĥᤳ�ཬ��������Ȼפ�������ɡ� �ޤ��Х��ʥ�ץ��ȥ������ϥġ���Ȥ� ��ڤ˥ƥ����Ȥ������Ǥ���ġ���Ȥ��� �����äƤ�Ф���ʤ˻Ȥ�����ϰ����Ϥʤ��������롣

��������վ�Ϥɤ��ͤ��Ƥ�ƥ����ȥץ��ȥ���Ǥ���٤��Ǥ��ä���

(02:11)

_ ����

http://d.hatena.ne.jp/kazuhooku/20090924/1253766558

���ä��⤽������ͤ��Ȼפ��Ĥ��ɤ���Τ�פ��Ф�����

�⤦�ʤ����ƤΥץ������Ϥ��ޤ˻ߤ᤿�������ʡ� �֥饦���Ȥ�1���˰�󤯤餤����˺Ƶ�ư���Ƥ��ߤ����� ����� Copying GC �Ȥ����̤Ǹ��äƤ������ɡ� �ޤ����̤���ʤ����̤˥���ʤ󤸤�ʤ����ʤ���

(03:05)

�����Υĥå���(��2��) [�ĥå��ߤ������]

_ naruse [���������С��⤦����äƤ뤫���Τ�ޤ��� ����� 12B http://d.hatena.ne.jp/nurse/..]

_ shinh [�����Ϥ����ե�����������ʤ��ȤϻפäƤ��ΤǤ������ޤ����Τؤ�Ϥʤ�Ȥ����ޤ���]


2009-10-02

_ Arc

http://golf.shinh.org/

­����

(01:40)

_ ����ä�

downtime

(01:43)

�����Υĥå���(��1��) [�ĥå��ߤ������]

_ Twuvurfc [���δ֤����Ϻ�λ��� http://www.stlouisbusinesslist.com/business/5..]


2009-10-03

_ ��꡼���ޥ͡�����

http://jibun.atmarkit.co.jp/ljibun01/rensai/leader/33/01.html

���ä������ʤ���

Chrome �⤳�ä��ϤλŻ����äƤ�ͤ����ͤ����������ɡ� �ޤ����Ϥ������ʤ��Ȼפ������꤬������

Yugui �����Ʊǯ�夯�餤�ʤΤ��� �̤˾�Ȥ������ݤⲼ�Ȥ������ݤ�ʤ��ä��Τ����ɡ�

(18:06)

_ CSS�Ϲ�

CSS1 �˥ƥ����Ȥ� capitalize ������ text-transform:capitalize �Ȥ����� python �� str#title() �¤ˤɤ����褦��ʤ�¸�߲��ͤ� �ʤ�������ʪ�Τ�����Τ����ɡ� ���Υ֥饦�����Ȥε�ư���ä��ۤɰ�ä����򤫤ä���

http://spreadsheets.google.com/pub?key=tGCsFWV1bwyYanB9y4Ri9IQ&output=html

Firefox �����֤ޤȤ⤽����ʷ�ϵ��˸����뤫�ʤ��� ���󥰥륯�����Ȥؤ��б������Ѷ�̣������ �Ŀ�Ū�ˤ� Opera �ε�ư���狼��䤹���Τǰ��ֹ��ߤǡ� ���줬ͣ�� CSS �� test suite ���̤�Ϥ��ǡ� ���Ĥ���ʵ�ǽ�ɤ���ï�⿿�����ߤ����äƤʤ��Ȼפ��Τǡ� test suite �̤���Ȥ��������� Opera �ΤǤ����Ȼפ�������ɤ͡�

���Ȥ��Τؤ�Τ����餫�˼¸��Բ�ǽ�� Correct output sample �����򤫤ä��� One-to-One �Ȥ�̵������! �Ȥ� ����󥴥�� (tlh) �Ȥ������ʤ�! �Ȥ���

https://bug-3406-attachments.webkit.org/attachment.cgi?id=2381

�ɤ��Ǥ⤤������ Python �� title() ��

>>> "foo's".title()
"Foo'S"

�Ȥ��ˤʤ�ΤǺǤ�ɤ��Ǥ⤤����

(21:25)

_ blokus

��뵤�ϰ�����뤱�ɲ��Υ����ɡ� �Ĥޤ�2ǯ���Υ����ɤ��ɤ�ʤ��� ��ä� CPU �����å��ϰ줫�������Ȼפ��Τ����ɡ� �����ϸ��äƤ�����Ѥ�������ʬ�Ϥ���Τǡ�

if (ev.key.keysym.sym == SDLK_z) {
    current_state -= (current_state & 1) * 4 - 2;
}
if (ev.key.keysym.sym == SDLK_x) {
    current_state += (current_state & 1) * 4 - 2;
}
if (ev.key.keysym.sym == SDLK_c) {
    current_state ^= 1;
}

���� int �ΰ�̣�Ϥʤ������! c �Ϥɤ���Ҥä����֤��Ƥ����褦�ʤΤǡ� ���� 1bit �� parity �Ȥ����Τ�����������ΤΤ褦����

�����ʤ�ۤɲ�ž�Ϥ��� parity �Τ����� �������Ѥ�ꤦ��Τ͡� �Ĥޤ� 0-7 �ޤǤ֤�ޤ碌�������֤�����褦��

(21:57)


2009-10-04

_ �դ����󤪤�����

http://darwinawards.com/darwin/darwin2008-16.html

�֥饸��ˤ⤤���餷���� GPS���äƽ�ȯ��������GPS�λȤ������狼��ʤ��ä��餷����

(18:50)


2009-10-05

_ std.format

import std.format;
import std.stdio;
import std.string;

void main() {
    stdout.writeln(format("%c", 'a'));
}

������ %c ��̵������ �褯�狼��󤱤ɺ��٥ѥå���ۤ�

(01:41)

�����Υĥå���(��2��) [�ĥå��ߤ������]

_ yshl [�褯�狼��ޤ��󤬡�%s ��Ȥ��Ф����ΤǤϤʤ��Ǥ��礦��?]

_ shinh [�������������������Ф���Ǥ�����Ǥ��͡����꤬�Ȥ��������ޤ�!]


2009-10-08

_ base85

�Ȥ�����Τ�����褦����

http://tools.ietf.org/rfc/rfc1924.txt

Git ������Ȥä� binary diff ���äƤ�ߤ����ʤ����͡� ��ʬ�ǽ񤭤����ʤ�������ľ�� base64 �Ȥä��ߤ����ʤ���

(02:50)


2009-10-10

_ �Х����Ȥ�

�ʤˤ�����������ä���

http://d.hatena.ne.jp/IwamotoTakashi/20091006/p1

http://d.hatena.ne.jp/ku-ma-me/20091010/p1

http://akimoto.jp/blog/2009/10/08/bug-report-in-foreign-language/

�Ŀ�Ū�ʴ��ФǤϡ����ꥸ�ʥ�����Ԥ����� �ǽ�� close ���� PHP �οͤ⡢ ���θ�Τ��䤳��� dup ����ʤ�����Ȥ�����ĥ�⡢ ���θ��ľ���Ƥ����ޤǤΤ��Ȥ�⤴������ʤ��褦�˸����뤫�ʤ���

�ʤ󤫵��ˤʤ�Ȥ��Ƥ������˺٤������ǡ�

��Ŧ����Ƥ��̤ꡢ ���ꥸ�ʥ�����Ԥ������������äƤ������ˤĤ��Ƥϡ� �����פ���˥ѥå��ˤϼ���̵�����ɤ��֤󤳤�ʴ����Ǥ�����͡� �äƸ��������äƤ��Ȥʤ���Ȼפ�������ɡ� �ޤ��������ΤϤ褯���뤫�餭����Ȥ����񤤤����� �ɤ��ä����ʤ��Ȥ������󤸤Ϥ��롣 ������ȥ�ݡ��ȼ��Τ��Բ��ʶ�����Ф��Ƥ��ޤ��ΤϤ��������� �Ǥ������ˤ���ʤΤϺ٤������ǡ�

���ȤϺǽ�� php.net �οͤα��Ф����ɡ� �ޤ��ɤ�� dup ���Ƥ뤫���餤�ϸ��äƤ衢 �äƴ����ǤϤ��뤱�ɡ� ����⤳���б����������Ƚ�Ǥ���ȡ� ����ʤˤҤɤ����ФȤϻפ��ʤ��ʤ��� ���ˤ��ΥХ��� reopen ���ơ��⤦������ͳ�򼨤��줺 close ����Ƥ��Ȥ����� ����ϤҤɤ��ͤ��Ȼפ����ɡ� �������٤��ä���ޤ�˻�����ץ��������Ȥ� �Х������Ȥ�¿�����ˤʤä��㤦�ΤϤ��礦���ʤ��Ȼפ���

�Х��ο���50000�Ȥ��ˤʤäƤ�ץ��������Ȥʤ������ (10ǯ��äƤ�櫓������ñ��׻���1��10�ĤȤ�����ͤ���)�� ¿���ߥ������뤫�⤷��ʤ�����Ŭ���� �Х��� dup Ƚ��Ȥ��򤶤äȤ�äơ� ����Ǥ�������㤦��! �äƸ���줿�� �⤦����äȤ�����Ƚ�Ǥ��롢�ߤ����� ���ʥ�������ˤʤä��㤦�ΤϤ��礦���ʤ��褦�˻פ���

�����餳�α��Ф����ǤϤ���ϤҤɤ��Ȥϻפ��ʤ����ʤ��� ������ǫ����������㤤��������ɡ�

�Ǥޤ��������ѡ����㤢��ޤ����ºݤ��������𤬤��뤫���Τ��Τǡ� ���Ԥ��������Τؤ�򻡤���٤����ä�! �Ȥ�������ĥ�򤹤뵤�������ʤ��ơ� ��˾����! �Ȥ��פä��㤦�Τ⤷�礦���ʤ��Ȼפ��� ����Ǥ�����Ȥ��䤳�� dup ����ʤ����������� �ȸ��äƤ�Τ⤹���������Ȼפ���

����ʤ���ʤ���Ū�ˤϤ������̤� bug repot �� fix ��ή��ΤҤȤĤ˸������褦�ˤ��⤦��

����äȲ����Ǥ����餤�����ʤ��Ȼפä��Τ� �ϤƤ֤Ȥ����Ƥ�ͤǼºݤ� PHP �Τ��ΥХ��� �����ΤȤ狼�äƤ�ͤϡ� �Х����Ф��ƻ��դ򼨤��Ƥ������ꤹ�����Ω�Ĥ��餤���Ȼפ������ʡ� �Ǥ������­�����Ȥ����Ƥ�������Ȥ������ɡ� "+1 for this bug" �Ȥ������Ǥ⤤���褦�˻פ���

���ȸĿ�Ū�ˤϽ�������ΰո��ˤ� �������Ȥ��ƤϤ��ޤ�ƱĴ�Ǥ��ʤ��ʤ��� ��������(��������ǫ����������)��꤫���� ����ä��㥢����Ȥϻפ�������ɡ� �Ŀ͸ĿͤΥ꥽�����ϸ¤��Ƥ������� Ŭ����û���Х���ݡ��Ȥ�ۤäƤߤơ� ���������ľ���Ƥ��줿���å��������� ȿ����̵���褦�ʤ�����٤˱����Ƥ������Ƥߤ��� ping ���Ƥߤ��ꡢ ����äƤʤ���ʬ������Ф�����٤����������Ƥߤ��ꡢ �Ȥ���������Ŭ���ˤ��Ф����󤸤�ʤ����ʤ��� ������Τ��񤷤����ʤ����ܸ�ǥ֥����񤤤Ʊ������Ȥ��� �����������褦�˻פ���

�㤨�бѸ�Ȥ��񤭤����ʤ���С� there is a bug: <�Ƹ����륳����>, expected: <hoge>, actual: <bug!>�� �Ȥ������Ǥ⤿�֤��ɤ��櫓�ǡ� �º� WebKit �ΥХ��Ȥ����Ƥ봶���Ǥϡ� �ǰ��Ƹ����� URL �����Ǥ��ɤ��ơ� �Ǥ���кƸ�����Ǿ��� html �ʤ�ʤ�ʤ�ˤ��Ƥ������ɤ��ơ� ����ˤ��Τޤ� test �Ȥ��ƻȤ������٤ˤ狼��䤹�� html ���� (�Фˤʤ�٤��������֤��ʤ�Ȥ������������) �ʤ��褤�������ʡ�

ľ��¦�˲����Ϥ��ΥХ��ο����٤Ȥ��� ��ľ�ɤ��Ǥ⤤������Ǥ����ʤ��ơ� ��ȯ��¦�� priority ���Ѥ�Ͽ��ѤǤ��ʤ����� �ޤ��Ǥʤ������ߤ���! �Ȼפ��ʤ�񤯡� ���餤�Ǥ�ޤ������󤸤�ʤ����ʤ�

��������̣�ǽ������󤴼��ȤΥХ���ݡ��Ȥ��㤽�켫�Τϡ� ����Ϥ���Ǥ��λ���ʤ餳�Τ��餤��������������ʤ��� �ɥ���Τۤ��ۤ��λ���Ȥ��Τ����������� ��ǫ���������Ƥ���줿�ΤϤ���Ϥ����Ŭ�ڤʵ��������� ���̤˹ͤ���Ȥ���ʤ褯�狼���Х��� priority �������ʤ�����ͤ���

(17:59)

�����Υĥå���(��7��) [�ĥå��ߤ������]

Before...

_ naruse [�錄����ۤäȤ�����reject�äƴ������ʤ��� ruby �Ǥ�����ѹ��Υѥå��Ϲ��Ψ�����֤���ʤ����ʡ� ��..]

_ shinh [�����ʤ󤫤��μ�� contributor ���ΤäƤ�ȥȥ��ʥץ��������Ȥ��Ȥ�ʸ���ߤ����ʤΤϤ��ߤ��񤷤��Ǥ����..]

_ ku-ma-me [3 �����餤���ȤϺǽ�ܤ���פ��ޤ��������褯���Ƥߤ�ȡ���𤬤��ä� 30 ʬ�ǡֽ�ʣ����ʡפȤ���������� 30..]

_ shinh [http://bugs.php.net/report.php �������� If you feel this bug..]

_ ku-ma-me [������http://www.php.net/mailing-lists.php �� http://bugs.php...]


2009-10-11

_ �դ꡼

http://www.tees.ne.jp/~sin-x/200910a.html#0901

�ɤ��Ǥ⤤�����ɤ��� free_LIST �� ���ǿ�¿���ȥ����å������٤��ƻ�̤Τ���ؼԤˤϸ��������ʡ� �Ȥ��פä���

(05:20)

_ �����

http://www.kt.rim.or.jp/%7ekbk/zakkicho/09/zakkicho0910a.html#D20091010-2

glibc �Ȥ����� Ulrich �Ȥ��ʤΤǤ����͡�

(13:10)

_ XSS

���������� XSS �Ǻ��ޤǤ�ȯ���������ֿ�����ﳲ�äƤʤ�ʤ������ �ȻפäƤ���äȤ����äƤߤ���

���֤� cookie ��ޤ�ƥ�����������ü���ơ��ܤ��Τ��⤬�� �ߤ����ʥ�Ĥ��ȻפäƤ�������ɡ��ºݤ�������������

�Ȼפä���ʤ� cookie ��ޤ������ǤϤ��ޤʤ��餷����

http://itpro.nikkeibp.co.jp/article/NEWS/20061113/253479/

����ñ�˥桼����������˻Ȥ����㤦��ä��ä��� �����ޤ����쥸�åȥ������ֹ�Ȥ�����Ƥ����Ф��櫓�����ɡ� �����ǥ����Ⱥ��Τ��Ф��� ¾�ͤΥ����Ȥ� XSS �Ȥ����åȤ� URL �˿��Ѥ���Ƥ�ɥᥤ�󤬻Ȥ���Ȥ��ʤΤ��ʡ�

(13:35)

�����Υĥå���(��1��) [�ĥå��ߤ������]

_ �����(K) [>Ulrich �Ȥ��ʤΤǤ����͡� �����̤�ǡ� ���ͤ�����(�̤ν�����ˡ��Ƥ�Ȥ����Τ�ޤ�)���Ƥ����ͤ⤤����..]


2009-10-12

_ stack_ni_yasasii_free_tree

http://www.tees.ne.jp/~sin-x/200910b.html#1201

�򸫤Ʒ빽 tree �Ƕ��֤���������Ȥ鷺�ˡ� ���ķ׻��� O(N) �� free ����Τä� ���֤�빽�񤷤���͡��Ȼפäƽ񤤤Ƥߤ��� �ºݷ빽�񤷤��ä���

http://github.com/shinh/test/blob/183dec99c9f05642488820587bf9e1aa48de94ea/free_tree.c

����礤���˽񤱤��ꤹ��Τ��ʤ��� ���Ȥ��⤽��ְ�äƤ��ꤹ����Ѥ������ɡ� ���֤󤢤äƤ��͡�

���� free_LIST ��

void free_LIST(LIST *list) {
    if(list){
        free(list->name);
        LIST* next = list->next;
        free(list);
        free_LIST(next);
    }
}

�Ȥ��Ƥ��� gcc �ʤ�Ƶ��η��Τޤޤ� stack ni yasasiku �ʤ�Ȥ����ä⤢��ޤ��͡�

(08:44)

_ �ޡ������

��ä��� ���դ�äƤȤ�Ȥ���ä��������ӤȤ��ƤϤ褫�ä�������ɡ� �ڤ�ְ㤨�Ȥ����������꡼���Ȥ�¿���ä��ΤϤ��ޤ������ä���

���Ȼ���Ʊ�郎�Ǥ����Τ����줷���ä���

������Ϥ����Ǥ����������������������˥��������ˤʤ�ȻפäƤ������ɡ� ����γڤ��ߤϸ��뤱�ɡ�������������Ω�Ĵ����Ϥ��뤫�ʤ��Ȥ��פä��� ����äƤɤ��������ɤߤȤ��Ϥ��������Ǥ��ʤ��Τǡ� �夬��˹Ԥ����ߤ�뤫��Ƚ�Ǥ����ֽ��פ��ʤ��ȻפäƤ������ɡ� ����������פϥɥ餬2�Ĥ���Х�������Ǥ⤤������夬��ˤ��äơ� 1�Ĥ�ʤ���Ф����ߤ�롢�ߤ����ʴ�����Ŭ���ˤ�äƤ�褯�ơ� �ޤ������꤬�⤽�����ɤ����ͤ���Ȥ�����ɬ�פ��ʤ��ƥ���ʤ�����ɡ� �����˹ߤ���㤦�إ���Ȥ��Ƥ����ˤ˹ߤ�Ƥ����� ���ޤ˥ɥ餢��ȹ���Ƥ����ߤ����ʤΤ����䤹���ʤ��Ȥ���

(18:43)

_ �ʤ�ۤɤʡ�

http://d.hatena.ne.jp/kurimura/20091012/1255340288

��˽񤤤Ƥ��Ф��ͤ��ʤ��Ȥ狼��ʤ��ä���

�פ� tree ��ñ�ʤ� list ���Ѵ����Ĥ� ñ���� list �ˤʤä������Ǻ�����Ƥ롢 �äƤ����������ʤ����ͤʤ�����򤷤���

(19:14)

_ ����վ�

�Ȥꤢ���� tmpfs �ȤäƤߤ�����ˤ��Ƥߤ��� ����Ū�ʥ����å��Ϥ������ɡ��ޤ�����ʤ��ư���Ƥ�����

��äƤƻפä�������ɡ� dmesg �Ȥ��˾���Ĥ��Τϰ����Ȥ��Ʋ�ǽ����ʡ��� �ޤ� 5B hello �Ȥ��ϤǤ��󤯤ʤ뤫�餤�����ɡ�

���Ȥ� process group ���ݤ���褦�ˤ���Ȥ� setpgid �� setpgrp �ζػߤäƤΤ����ä��ʤ���

(23:06)

�����Υĥå���(��2��) [�ĥå��ߤ������]

_ bero [>�Ȥ��Ƥ��� gcc �ʤ�Ƶ��η��Τޤޤ� stack ni yasasiku �ʤ�Ȥ����ä⤢��ޤ��͡� �Ǥ⤳..]

_ shinh [���������Ǥ��͡��ޤ� OCaml �Ȥ� Haskell �Ȥ����Τؤ�Τ������� list �򸫤�ȺƵ��ǽ�����������..]


2009-10-13

_ require 'yaml'

YAML �⥸�塼��ऺ����������

http://d.hatena.ne.jp/shinichiro_h/20090826#c1255355058

��ʤ�Ȥ����褦�Ȥ��Ƥ롣

�ޤ� parser �� emitter �˥Х�������Τϳμ¡�

require 'yaml'
o = "-\n \n-"
p o == YAML::load(YAML.dump(o))

�� false ���֤��Τ����顣

  • parser �� literal �� fold ��������˶�������ιԤ�����ȶ������Ȥ���
  • emitter �϶�������ιԤ�����ʸ����� literal �Ȥ��ƽ��Ϥ����ǽ�������롣

�Τ����줫���Х���Ĵ�٤Ƥʤ����ɤ��֤����̤˹ͤ������ԡ�

�Ȥꤢ���� parser �ΥХ�ľ�����Ĥ� ruby ��������äƤ� syck �Υ������ɤ��������ɡ� ���äȤ��� yacc ����������Ƥ������ �ʤ�ǥ��ꥸ�ʥ�� gram.y �Ȥ� token.re �Ȥ����äƤʤ��Ρ�

������ _why �����ˤĤ����ꥸ�ʥ�Υ����ɤȤ��ɤ��ˤ��뤫�褯�狼�餺��

�Ȥ����櫓�Ǥ��ä��ϤȤꤢ�������᤿��

�ޤ��ʤ�ˤ��轤���� emitter ¦�Ǥ�ä����������� Ruby �ν�����������ԤĤ�� �����Ф�����������������������͡�

�ǡ��ޤ���

class String
  def to_yaml_style
    :quote1
  end
end

�Ȥ��������ɤ��褦�˻פ��Τ����ɡ� ���� quote1 �ˤ��Ƥ���ޤ���! �ʤ󤫥����ɤ�ʣ������ʤ�����ɡ� ʣ���Ԥ��ϤäƤ�� literal �ˤ���äƤΤ�ͥ�褵��Ƥ봶�����ʤ���

���� YAML::Syck::Scalar#style= �Ȥ����᥽�åɤ⤢��ߤ��������ɡ� �����ɤ��Ȥ����Ȥ��Ϥ��äѤ�狼��ʤ���

���Ȥ��� rdoc �Dz����狼��Τ�������

http://doc.okkez.net/191/view/method/Object/i/to_yaml_style

�ǡ��ʤ� syck �򸫤Ĥ�����

http://github.com/indeyets/syck

token.re �ɤ�Ǥ���ʤ�Ȥʤ��狼�äƤ����� �褷�ʤ��ä�!

diff --git a/lib/token.re b/lib/token.re
index 9d9c855..4d16363 100644
--- a/lib/token.re
+++ b/lib/token.re
@@ -308,6 +308,7 @@ TAB = "\t" ;
 SPCTAB = ( SPC | TAB ) ;
 ENDSPC = ( SPC+ | LF ) ;
 YINDENT = LF TAB* ( SPC | LF )* ;
+YINDENT2 = LF TAB* SPC* ;
 NULL = [\000] ;
 ANY = [\001-\377] ;
 ISEQO = "[" ;
@@ -966,7 +967,7 @@ ScalarBlock2:

 /*!re2c

-YINDENT             {   char *pacer;
+YINDENT2            {   char *pacer;
                         char *tok = YYTOKEN;
                         int indt_len = 0, nl_count = 0, fold_nl = 0, nl_begin =
 0;
                         GOBBLE_UP_YAML_INDENT( indt_len, tok );

�Ǥ� parser ľ���Ƥ��̣�͡���

������ɤ���ä��� quote ʸ����Ȥ��ǽ��Ϥ��Ƥ���뤫�ä��äǤ��͡�

(08:42)

_ �Ȥꤢ����

�ѥå��Ϥ���äȽ������ƺ��Υ��ƥʤäݤ��ͤ˥᡼�뤷�Ƥ�������

��ʤ��Ȥ�� emitter �Ǥ��͡� �̤� yaml �饤�֥��Ȥ����ͤ����󥹥ȡ��뤹������ݤ����ɡ�

(09:26)


2009-10-14

_ ���������ޤ��ʤ��Ȥ�����

�ʤˤ��ͤ���˾Ū�˥إ��ʸ����򤹤�Ȥ����ä�褯���롣 ���ɶ���Ū�ˤɤ�ʥإ��������ä����Ф��Ƥʤ��ä��Τǡ� Ŭ���˥����򤢤��äƥإ������ʸ����������õ���Ƥ����� �����Ƥ�ñ�줬­��Ƥʤ������䤹�Τ����ɡ� ���䤹���θ���������ɤ���Ū�Τ�Τ����Ĥ���Ϥ����ʤ���

  • DS => ����ɥ��ץ� DS
  • MT => MT mersenne
  • ���� => ���� �ַ�
  • span => span style => span style height
  • NTT => NTT goo

���Ȥϲ����Τꤿ���ä��Τ�������Ĥ��ʤ��褦�ʥ����꤬ ���ޤˤ���Ϥ��ĤȻפä��Τ����ɡ��ճ��Ȥʤ��ä��� �԰դˡ֤Ϥ�ؤä��פȤ��Ǹ������Ƥ��������������ɤʤ��� �ܵ��ǰտޤ��狼��ʤ��ä��Τϡ� �ֺ��ۡס�Ź��פʤɤ����ä��� ������shinh�פȤ����Τ⤢�ä������ϰ��β�����Ԥ��Ƥ����Τ���

���ȤϤɤ�ʤνФƤ��뤫�ʡ�Ū�˸������Ƥߤ��Τ�����ʡ� �ֳز� �������ס�����ۤ����ס֥���ư��פʤɡ� ���������֥ץ��� ɱ �ǡפ⡣

(00:48)

_ YAML�����

��� JSON module �����äƤ�� JSON �Ȥä���Ȥ����Ȥˤ�äƲ�褹�뤳�Ȥˡ�

http://github.com/shinh/caddy

rm ~/.golf/ag/Count\ diamonds\ level\ *.db

�Ȥ����Ƥ��� caddy update ����Ф��֤󤦤ޤ������ޤ���

�������ޤ������ YAML �Ϥ�ä� ����˵�ǽ¿��������ʡ��Ȥ����פ��򶯤������� �ޤ���ǽ񤭤䤹���ΤϤ���������ɡ� ����ڥ��ꥢ�饤���Ȥ��Ƥ� JSON �����������Τ���ͤ���

������ inspect => eval �Ǥ⤤������������ɡ� �ޤ� eval �Ϥ���äȶ������⤷���Τǡ�

���Ƥ���������Ǥ����ʲ��Υ����ɤ����äơ�

eval(s.inspect)
  • s ��ͳ��ʸ���󤫤����٤����Ǥ�ե����ɼ¹Բ�ǽ��ȴ��ƻ�Ϥ��뤫
  • s ��ͳ�� ruby ���֥������Ȥ������٤����Ǥ�ե����ɼ¹Բ�ǽ��ȴ��ƻ�Ϥ��뤫

�Ǥ��ʤ������ʵ������뤱�ɡ� �Ǥ���Ȥ����� kurimura ����Ȥ��� ������ȯ�����Ƥ��줽���ʡ�

(01:16)

�����Υĥå���(��13��) [�ĥå��ߤ������]

Before...

_ ku-ma-me [��Marshal.dump �� JSON �ȤäƤ��������Ȥ����Τ� Ruby �θ���פäƤ����ʤ�Ǥ����� ��Num..]

_ shinh [�����Ϥ����뤫�Ϥ狼��ޤ��󤬡��ͤ��������Ȼפ��Τϡ������򽸷פ���ġ�������ʳ��Ǻ�äƤ���ʤ󤫤��ʤ��Ȼפ���..]

_ naruse [> ��Marshal.dump �� JSON �ȤäƤ��������Ȥ����Τ� Ruby �θ���פäƤ����ʤ�Ǥ����� ��..]

_ ku-ma-me [������������չ�¤�ϳΤ��˼�֤Ǥ��͡��ͤ�������򤽤��ʥͥ��Ǥ���]

_ �ʤ� [�����Ƥ���ƻ��akr�����̲�ѤߤǤ���ޤ�: http://raa.ruby-lang.org/project/a..]


2009-10-18

_ ���饤�ʡ����Τ� quine

���ΤȤ������̤�

perl -e'$_=q(printf"perl -e%c\$_=q($_);eval%1\$c$/",39);eval'
ruby -e'eval Q="puts %(ruby -e%ceval Q=%p%c)%[39,Q,39]"'

�����꤬û��������ɡ� �ʤ󤫤ޤ��ޤ����θ�������ˡ�Ϥ��ꤽ�����ʤ���

��������Ȥ�����äȵ��������Ƥ�͡�

ruby -e"eval Q=%(puts %(ruby -e%p)%%(eval Q=%%(%s))%Q)"

(02:03)

_ �ʤˤ�����������

�Ȼפä����ս� single qoute �ˤǤ������͡�

ruby -e"eval Q=%(puts'ruby -e%p'%%(eval Q=%%(%s))%Q)"

(02:04)

_ Jeff Dean's talk

http://www.cs.cornell.edu/projects/ladis2009/talks/dean-keynote-ladis2009.pdf

�Ѥä��ɤ������

  • a web search touches 50+ separate services, 1000s machines
  • BigTable Coprocessors
  • Spanner

�����꤬���äƤ�������ʤ��ꥹ�Ȥ�­���줿��

Spanner �ϲ����Ȥ�Ǥ�ʤ���Τ�����褦�Ȥ��Ƥ���Ȥ������᡼����

�ǽ�ο����� google ���äƷ빽�Ӥä��ꤷ�����Ȥΰ�Ĥ��ä��� �������®�������Ǥ��������� ���������塼�˥󥰤��줿�����Υޥ����ֻ����Ƥ�Τ��ʤ��� �������������ϻפäƤ����Τ����ɡ� �ºݤˤϤ��餤��������Υޥ��󤬤�����äƤ��ΤǤ��ä��� �ޤ����Ť˹ͤ���ȥͥåȥ��®���櫓������ ������ޤ��Ȥ������⤢��Τ�������ɡ�

(02:35)

_ �ե�����񤭹���

tmpfs ��Ȥ��������Ѥ����� ����Ǥ��֤�ե�����Ĥ��ΤϤ��ʤ����Ѥˤʤä��Ȼפ��Τǡ� �ե�����񤤤��Ȼפ�����ƤϾä����� ����Ū�ˤ� hello.rb 12B * 3 �����ʤ�����ɡ� ¾�ˤ⤢�ä����ʤ���

(03:17)

_ SELinux

����� SELinux �Τ��ٶ������Ѥ�餺�櫓�狼���ʡ��Ȼפä��Τǡ� SELinux �ΤäƤ�ͤ��ޤ�������ʹ������ �ߤ��̵�����������ȤϤ���Ȥ������Ȥ��ä���

Google suggest �Ȥ��� SELinux ���Ф��ơ� ��̵���ס���ߡס�̵�����פʤɤ� �������դ��ñ��� suggest ���Ƥ����ȶ����Ƥ��ä���

����Ǥ��������� hamajis ���Ф��� �����Ͽ���Ϻ google�פȤ��Ф��Ƥ��䤬��Τ� �ɤ��ʤ���Ȥ������ä򤷤���

�Ǥޤ� TTEdit �Ȥ��� ttf ���ڤˤ����줽���� ���եȤ򶵤��Ƥ��äơ� ����� CSV ����� import �Ȥ����Ǥ���Τ� �ʤ��ʤ������������ä��Τ����ɡ� �ɤ��⾮��꤬�����ʤ������Ϥ���ΤǤ��ä��� �㤨�� UnitsPerEm �򥭥�Τ��������ˤ������Τ����ɡ� �Ǥ��ʤ��ݤ��ä���

�ޤ�����ʤ���ʤ� 5x5 font �� �١����ˤ��� TTF ���äƤߤ��ꤷ���� chrome �Ǹ���Ȥɤ��ˤ�ʸ���κ����˿���������ʤ��� ����� Ahem �Ǥ�Ʊ�����Ȥ����顢 Layout tests ���餻�Ƥ���Ϥ��Τؤ�̵���ʤ�褦�ˤȤ����Ƥ���Τ��ʤ���

�ʤ�ˤ��� TTEdit �Ȥä� CSV ���� import ����ΤϷ빽���ɤ��������顢 Ahem �١����� fontforge-dev �Ǻ�줿�ꤹ��Ȥ����Τ��ʡ�

�Ĥ� Ahem ��ä����Υ�����ץȤȤ�������м�ü��Ф䤤�Τ����ɡ�

http://hixie.ch/resources/fonts/iw-generator.py

�Ϥʤ� 500 �ʤ��

(04:05)

_ fetchmail

�Ѹ�������ե�����������˽񤤤Ƥ����Τϲ����ȥХ�������ä�����

http://www.tlug.jp/docs/cathedral-bazaar/cathedral-paper-jp-8.html

(04:38)

_ signal

http://d.hatena.ne.jp/w_o/20091018

signal �Ϥߤ�ʤ��������� �Ȥꤢ���������Ȥ��ƽ񤤤Ƥߤ롣

#include <signal.h>
void (*signal(int signum, void (*handler)(int)))(int);
void static (*(* const signalp)(int, void (*)(int)))(int) = &signal;

���ޤꤹ�餹��ȤϽ񤱤ʤ��ä��� const �ΰ��֤οҾ露��ʤ����´��Ȥ��ä���!

typedef �� storage-sepecifier �ǡ��إ�ʰ��֤˽񤱤�Ȥ������á�

int typedef i;

�Ȥ������ֱ黻�ȹͤ�����ɤߤ䤹������Ȥ������ä��ä�������ɡ�

int* typedef ip;

�ȤϽ񤱤ʤ��Τǡ��ޤ��������ʤΤǤ��ä���

int const typedef * const i;
struct {
    int x;
    int y;
} typedef pos;

�⤲�⤲

(05:42)

_ SSE����

http://krypton1.at.infoseek.co.jp/x86/x86ext.htm

���礦�٤��

(14:37)

_ Core 2 Duo

��ñ��ˤ��äƤ⿧������櫓����

http://ja.wikipedia.org/wiki/Intel_Core_2

���Υᥤ��ޥ���� R61 �ϡ�

Intel(R) Core(TM)2 Duo CPU     T7250  @ 2.00GHz (FSB=800MHz, L2=2MB)

��������վ�ˤ��褦�Ȥ��Ƥ� X60 �ϡ�

Intel(R) Core(TM)2 CPU         T5600  @ 1.83GHz (FSB=667MHz, L2=2MB)

��Ҥ� X61 �ϡ�

Intel(R) Core(TM)2 CPU         T7300  @ 2.00GHz (FSB=800MHz, L2=4MB)

�ޤ��֤��ϥ��ڥå�����ο�������ɡ�

T7200  @ 2.00GHz (FSB=667MHz, L2=4MB)

���Τؤ������ Merom �Ȥ�������Ĥǡ� �����ޤ��¤˻����褦�ʤ�ΤʤΤǤ��ä��� Core 2 Duo �ޥ��� 4 ��Ȥ����äƤ�Ȥ������¤ˤ⡢ �����Υ��ڥå��������褦�ʤ��Ȥ������¤ˤ⡢ �ᤷ���ʤ�ΤǤ��ä���

�����Ǥ��Ҥ� Mac Pro �Ϥ��֤� SSE4 �Ȥ����봶�����ʡ�

(17:22)


2009-10-19

_ SELinux

�ʡ���Ȥʤ����ܤ����ˤĤ���Ƥ����� ����ǽ񤯡�

  • SELinux �Ȥϡ� linux kernel �Ǥʤ󤫥ץ������Τ�뤳�Ȥ˥������ƥ�����ƥ����ȥ١��������¤Ȥ����������롣
  • ls -Z �Ȥ� ps Z �Ǥɤ����������ƥ�����ƥ����ȤΥե�����/�ץ����������狼�롣
  • �ݥꥷ�����ư�ǥ��åȤ��Ƥ����Τ����ѤʤΤ� hoge.te, hoge.fc ��񤯤��Ȥˤ�ä� make �Ǻ�줿�ꤹ��褦�ˤʤäƤ롣
  • ����� reference ����Ȥ������ۤ���Ƥ��Τ����äơ����Ĥ���� distribution ����¤����Ŭ�������ۤ��Ƥ��롣
  • strict mode �Ǥϴ������ƤΥץ�����������Ǥ��ʤ��Τ��ǥե���Ȥ����ɡ�����Ϸ빽���������ؤʤΤ� targeted mode �Ȥ�������Ĥ����̤Υǥ����ȥ�ӥ塼�����ǤϻȤ��Ƥ��ơ������������Υץ�����(�פϥ�����)�����Ǥ��뤳�Ȥ򸺤餹���Ȥ����褦�ʴ����ǤǤ��롣
  • targeted ���ä˲�����ꤷ�Ƥʤ��ץ������� unconfined_t �Ȥ������Τ��Ĥ��ơ����Ǥ�Ǥ��롣
  • ���Ȥ��֤� MLS �Ȥ������Τ⤢�롢���ʤ󤫷��Ȥ��ǵ�̩�ǡ������纴�ʾ夬���������ġ��Ȥ���������Ĥݤ���
  • �ץ������Τ�뤳�Ȥ����¤���񼰤ϴ���Ū�� whitelist ������

���ơ���ꤿ�����Ȥ� unconfined_t ����ۤ�ξ����������¤�å�ä��� �Ĥޤ� blacklist �ʴ����� policy ���ꤿ��������ɡ� ����޴�ñ�ǤϤʤ������ʤ����ʡ� unconfined_domain_noaudit �äƥޥ����� /usr/share/selinux/default/include/system/unconfined.if �ˤ��뤫�顢 ����򥳥ԤäƤ���ɬ�פ���������Ĥ��ʤ��褦�ˤ��롢�äƴ������ʤ���

�ʤ� allow kern_unconfined ~{ setpgid } �Ȥ��������Τ���

(05:19)

_ ����վ� sandbox

����ޤǤΤ��餹��: SELinux �Ϥ����ؤ��񤷤��ä�

�������ͤ��Ƥ� kernel module ������ �Ϥ뤫�˥ޥ��ʤ󤸤�ʤ����Ȥ��������˻�ꡢ ���������Ǥ�äƤߤ����� ���ˤȤ��ƤϤ�䤳�����Τ�񤯤� ���Ѥʤ��Ȥˤʤꤽ���ʤΤǡ� �ְ㤨�褦�Τʤ����餤��ñ�ʤ�Τˤ��롣

  • setuid, setgid, setsid, setpgid �� root �ʳ��� EPERM ��
  • accept, bind, listen, socket ������ϡĶػߤ��������ɡ� execution server ���Ȥ��̿����Ǥ��ʤ��ʤ�����ʡ��Ȥꤢ������α���ʡ�
  • exec �μ¹Բ����Ͽ���Ƥ�����
  • getpriority(1764, __NR_execve) �� exec �μ¹Բ��������褦�ˤ��Ƥ�����
  • setpriority(1764, __NR_setuid, 0) �Ȥ��� EPERM �� system call ���¹Ԥ��줿����ꥻ�åȤ��� getpriority �Ǽ�����
  • setpriority(1764, __NR_getpid, pid) �� setpid ��
  • setpriority(1764, __NR_setpriority, 0) �����϶ػߡ�����Υ�����Ȥ� exec ����ε�Ͽ����¤����Ƥʤ���������å���

����ʴ����Ǥɤ����ʤ��� ��äƤߤ褦

(22:46)


2009-10-20

_ kernel module sandbox

http://github.com/shinh/ags/blob/master/be/modules/sandbox.c

�����󤳤�ʴ����Ǥ���ʤ���ɤ������� ��ñ�ʤ��Ȥ������Ƥʤ��Τǡ� ���٤��� kernel �����Ѥʤ��ȤˤϤʤ�ʤ��ä���

������ǽ餫�餳������Ф褫�ä��ʤ���

(00:23)

_ setpid

http://github.com/shinh/ags/commit/4264152293a449bd7ec4c43496716c2981829050

���������� �������ñ���ʤ��� �����˺ǽ餫�餳�����Ƥ���Ф褫�ä������

(00:45)


2009-10-21

_ �дؿ�

sin-x ����˶����Ƥ�餦��

http://ja.wikipedia.org/wiki/�дؿ�

�褯����2�Ĥ����Ȥ��� hash �ͤ�ɤ��׻����뤫Ǻ��櫓�ʤ�����ɡ� �ܼ�Ū�ˤ��δؿ��Ϥ���ä��٤��������ɡ������ʤ����⡢�͡�

����äȤ�äƤߤ��� Ŭ�����Ͱ������Υڥ������̤˺�ä�Ŭ�����ͤù��ࡣ

http://github.com/shinh/test/blob/da1e28b9fd201ca2d203d3e187cc280e9a8b9f9a/bijection_hash.cc

�ϥå���ؿ��Ȥ��Ƥ�ñ�ʤ뤫������ �褯���� x + y * prime �ߤ����ʥ�ġ� ����Ȥ����дؿ����򤽤줾��ȤäƤߤ���

bijection_hash.gif

�ǽ��Ω���夬����ʬ���Ͱ褬�ۤ���ޤäƤ�ΤǤ���ޤ�ط��ʤ���

  • ñ�ʤ뤫���������餫�˰�����
  • �дؿ���̩�٤��������٤��뤦���Ͼ��ͤ����ʤ�������������ä��᤽����
  • ̩�٤������ʤ�����̤Τ�Ĥ���٤Ƥ��֤� hash �η׻����Τ��٤��Τǥ��Ĥ���

�ƴ����Ǥ����͡�

(00:10)

_ smjs ��������

http://shinh.skr.jp/m/?date=20070219#p01

�λ��񤤤Ƥ���ĤϤ��ĤΤޤˤ��ʤ��äƤ�ݤ����ʡ�

(03:16)

_ SVNSearch

http://svnsearch.org/svnsearch/repos/WEBKIT/search?start-index=20&logMessage=hamaji

�����ߤ�ȥѥå������狼�뤦���� �ʤ󤫤��ä���������դȤ����Ĥ��ƤƤ����ߤ�������

Chromium �����ϥ��ߥå��ˤʤ����Τ������Τ���̯�͡� 9����äƤ�������

http://tinyurl.com/yj2la4v

(04:33)

_ failwithf

http://d.hatena.ne.jp/camlspotter/20091020/1256049332

via http://twitter.com/chunjp/status/5021818819

��������ư���ʤ��ΤϤʤ��ʤ��������

let failwithf fmt = Printf.kprintf (fun s -> failwith s) fmt;;

���Ѥ����餦�������� ������������ (string -> 'a) ������ (fun s () -> failwith s) �Ǥ� unit ����ؿ������äƤ�äƤ��ȤʤΤ���

�Ƥ��ȤϤ����Ȥ���?

let failwithf fmt = Printf.kprintf (fun s () -> failwith s) fmt;;
(failwithf "hoge: %s" "hii") ();;

�����󤳤첿���򤷤����������

���� fmt ��ξ�դˤ�����ͳ��褯�狼��� ñ��

let failwithf = Printf.kprintf (fun s -> failwith s);;

�������ʤʤˤ�������󤫤ʤ���

(10:54)

�����Υĥå���(��5��) [�ĥå��ߤ������]

_ kinaba [let failwithf = Printf.kprintf (fun s -> failwith s);; ���� ..]

_ shinh [�����ढ�꤬�Ȥ��������ޤ������󥿥ץ꥿�����̤ä��Τ��̤�󤸤��? �ȻפäƤ��ޤäƤޤ������������˥���ѥ������..]

_ jijixi ['a �� '_a �ϰ㤦��ΤǤ��� ���줾��δؿ�����Ȥä���˷����ɤ��ʤäƤ뤫�Τ���Ƥߤ�Ȥ狼�뤫��]

_ mame [value restriction �Ȥ������ޤ��� http://ftp.yl.is.s.u-tokyo.ac.j..]

_ Waecnhro [���δ֤����Ϻ�λ��� http://www.stlouisbusinesslist.com/business/5..]


2009-10-22

_ ����վ�Ʒ�

��ĥ���鵢�ä���ư���������٤ˤʤäƤ���ɤ��Τ���

�����Ϥ�����������ä���������Τǡ� ���Ȥ�70����Ȥ������ե����������������� ��Ǥ��ݤߤʤ�����г�Ȥ��������Ȥϻפ�����

(01:32)

_ ����

18���줫��

����� basic �� erlang �����줾��إ�ʤ��Ȥ��Ƥ� setpgid �Ȥ� setsid �Ƥ�Ǥ� warning ���Ф�Τ����⤤�ʤ��� �ϤƤ��ơ�

�빽�ƥ��Ȥ����񤤤����̤äƤ��ϤΤ�¿���ΤϤ��꤬�������ɡ�

�����󸽥���վ�� maxima �� exec count �ְ�äƤ����ʵ������������ɤ����Τ��ʡ�

(02:10)


2009-10-23

_ literacy

http://d.hatena.ne.jp/Hamachiya2/20091022/literacy

�����Ϥ������̤긫�ƿ����פä��Τ��ä��� �ʤ�Ȥ�������ɽ�����񤷤�������ɡ�

�ޤ�����򸫤����Υ��󥿡��ͥåȥѥ�桼��Ū�ʿͤȤ��� �ɤ������ӥ��ϲݶ⤵��������ȻפäƤ�褦�� ����οͤȤ���ȿ���Ϥޤ��� ��Ȥ겵�Ȥ����������Ȼפ�������ɡ� �ޤ�����Ϥ���Ǥ����Ȼפ���

�����ʤ󤫡�����ʰ�̣�ǥ����ӥ���¦�Ȥ����� ��餬�Ҥˤʤꤦ�롢�ץ������񤯷Ϥοͤ� ����ϤҤɤ�Ū�ʤ��Ȥ�����Τϡ� �ޤ��������Ϥ狼�뤱�ɤ��֤ʤä������̤⤢�뤫�ʤ��Ȥ�����

������ҤȤ�����ˤϤǤ��ʤ����ɡ����֤�����¿���� �ɼ��ʥ����ӥ������󥿡��ͥåȾ��̵���Ǥ��뤳�Ȥ˴���Ƥ��ơ� ���Ĥ��Υ����ӥ���¦�����̵���ǥ����ӥ��󶡤��ĤĤ� ���٤����������Ƥ��Ҥ��빽���̤��뤳�ȡ� ����¿������������Ǥ��뤳�Ȥ��ΤäƤ�󤸤�ʤ����ʤȻפ���

�Ǥޤ��������ɼ��Ǥ���̵���ǻȤ��륵���ӥ��ʤ�ƤΤ� ������̤˸���㤷�ʤ���������Τǡ� �����ä��͡��Ϻ����Ʊ���褦�ʹͤ������³����󤸤�ʤ����ʡ��Ȼפ��� ���ä��Ϲ���Ƕ�Ԥ��Ǥ�̵���ʤΤ� �ʤ�Ǥ��ä��϶������Ȥ��Ƥ��? ����Ǥ⤦������Ϥ�����ʤ���? Ū�ʡ�

�Ǥޤ��������ϴ��ǡ֥�ƥ饷�פȸƤ�Ǥ��Τ���Ʃ���� ���������͡��ο͸�������ä�����ʤ�ޤ�����������ɡ� �ͤϤ���޸���ʤ��Ƥष��������󤸤�ʤ����ʤ��Ȥ��פäƤ��ơ� ��������ǤϤ��ο�ã���ͥåȴ��줷�Ƥʤ��󤸤�ʤ��ơ� �ͤ������Ť��ͥåȤˤ������줷�Ƥ��� �Ƕ�ΥͥåȤδ��Ф˴���Ƥʤ��ä��äʤ󤸤�ʤ����ʤ��Ȼפ���

�Ǥޤ����̤��̤˴��ФΥ��줬���äƤ⤢��ޤ�����ʤ�������ɡ� ���ʤ��Ȥ⼫�Ȥ�ꥳ��ԥ塼���Ȥ��ͥåȤȤ��˾ܤ����ʤ��Ǥ����� ����ҤȤ����ʬ�Ǥ���ʾ塢 ñ�˥����Ĥ��ƥ饷­��ͤ��ץ��㡼�Ȥ������դ���Τ� �ޤ��ʤ󤫰㤦�󤸤�ʤ����ʤ��ȡ�

�����ӥ���¦�Ϻ��Υ桼���Ϥ���������������ɤ��⤦���褦���� �äƹͤ���Ȥ��� �ץ�����ޤϺ��Υ桼���ϥХ��Ȥ�������Ҳ�Ū�˵����Ƥ���ʤ����� �����Ⱥ�����äƹͤ���Ȥ��� �ޤ����ä��Ϥιͤ����򤹤����������ʵ���������

�����������Ȥ�פä���

(11:13)

�����Υĥå���(��3��) [�ĥå��ߤ������]

_ naruse [��������֤�Ȥ�ϤƤ᡼�����ץ��㡼�פȤ������ȤǤ��͡� ���䡢�ޤ���������ä�Ʊ�դ����ʤ�Ǥ�������餬����..]

_ shinh [�����˽񤤤Ƥ��뤳�Ȥ����ƻ�Ū�ʰո��Ǥ����Ҥ����ۤ����ΤǤϤ���ޤ��󡢤Ȥ��Х��ʤ��Ƚ񤭤����ʤ��ΤǴ��ۤ��Ƥ�..]

_ shinh [������Ҥ���̤�� naruse ���󤬤ɤ������Ȥ�����ꡢ���ä�����ѤȤ��������ä����Τ���ΰ��������٤Υ����..]


2009-10-25

_ ����

http://risky-safety.org/~zinnia/d/2009/10/#20091021-t0-h1-p3

�Ŀ�Ū�ˤ� topcoder �Ȥ��ʤ�ޤ�����դ����򿿷��˥������᤹��ΤǤ����� ���꤬�ޤ����������˶ᤤ�Ȥ�����̣�ǡ�

id:sumim ���󤬤�äƤ�����褦�ˡ� �֥����Ȥ�������ˤʤäƤ������򤤤Ƥߤ�äƤΤϷ빽�����ʤ��ȴ����ޤ��� ���Ȥ��ޤ� wikipedia �Ȥ��ˤΤäƤ륢�르�ꥺ��� �ºݤ˽񤤤Ƥߤ�Ȥ������Ǥ������������Τ⤤���������Ƥ��ޤ��� ���ʤ��� mutex �񤤤Ƥ��ΤϤޤ��ˤ���ʴ�����

http://d.hatena.ne.jp/shinichiro_h/20091018#1255797222

(01:27)

_ �����˻��äƤ����٤���Υꥹ��

  • ����
  • �ѥ��ݡ���
  • �Ρ���PC
  • AC�����ץ�
  • USB�����֥� * 2
  • LAN�����֥�
  • HHK
  • ���ͥ롼��
  • (ɬ�פʹ�ʤ�)���󥻥�ȥ���С���
  • ����ʥ����
  • ����ɥ�����
  • �Ҥ�����
  • ����
  • ��åץ��꡼��
  • ���ȥԡ��Τ�����
  • ����Ƥ��ʤ��ޤ���߻�
  • ��ʡ���줿�ʥ������� * 3
  • �礭��������
  • ���ܤ�
  • �Ť��ʤ���ˡ��
  • �ڥ�
  • ��ȴ��
  • �����ۥ�

�����Ͻְִ�ư�λ��ؤȽְִ�ư����λ��ؤ��ߤ����͡�

(01:35)


2009-10-27

_ dame_rev

http://d.hatena.ne.jp/camlspotter/20091026/1256567062

http://twitter.com/shinh/status/5194338611

http://twitter.com/shinh/status/5194346481

�����ɤ⤦!

08049860 <camlDame_rev__dame_rev_58>:
 8049860:       83 ec 04                sub    $0x4,%esp
 8049863:       89 c1                   mov    %eax,%ecx    # �ʤ��Τ���������� eax �ʤΤ��͡�
 8049865:       83 f9 01                cmp    $0x1,%ecx    # �ʤ��Τ�� nil ������ɽ���� 1 �ʤΤ��͡�
 8049868:       74 46                   je     80498b0 <camlDame_rev__dame_rev_58+0x50>
 804986a:       a1 40 b5 05 08          mov    0x805b540,%eax    # 0805b540 B caml_young_ptr �ʤ�������! �Ȥꤢ���� GC �ط��ݤ��� young �ä������̤Ȥ���������Ĥ�����
 804986f:       83 e8 0c                sub    $0xc,%eax    # �ʤ��Τ���͸��餷����¸���ʤ����Ƥ�ߤ�����!
 8049872:       a3 40 b5 05 08          mov    %eax,0x805b540
 8049877:       3b 05 44 b5 05 08       cmp    0x805b544,%eax    # 0805b544 B caml_young_limit
 804987d:       72 3a                   jb     80498b9 <camlDame_rev__dame_rev_58+0x59>    # ����ιԤ��褬 GC �ʤΤǡ��ޤ� GC �ط�
 804987f:       8d 58 04                lea    0x4(%eax),%ebx    # �����������֡��ʤ󤫤��֤�ꥹ�Ȥγ��ݤ�����äƤ� ebx ������ΤǤ��衢���֤�
 8049882:       89 1c 24                mov    %ebx,(%esp)   # ���֤󤳤줬���� ebx=[]
 8049885:       c7 43 fc 00 08 00 00    movl   $0x800,-0x4(%ebx)    # (%eax) ����ʤ��Τ�Ǻ�ब�������򸵤� eax �ΤȤ���������Ƥơ������󤳤�Ϥʤ������
 804988c:       8b 01                   mov    (%ecx),%eax    # x �� eax �����줿
 804988e:       89 03                   mov    %eax,(%ebx)    # ebx=[] �� car �� [x] �ˤ���
 8049890:       c7 43 04 01 00 00 00    movl   $0x1,0x4(%ebx)    # ebx=[] �� cdr �� 1 (��ä� nil ���) ��Ĥä���
 8049897:       8b 41 04                mov    0x4(%ecx),%eax    # xs �� eax �������
 804989a:       e8 c1 ff ff ff          call   8049860 <camlDame_rev__dame_rev_58>    # �Ƶ��ƤӽФ�
 804989f:       8b 1c 24                mov    (%esp),%ebx    # �����å����֤��Ƥ����� [x] ����äƤ���
 80498a2:       83 c4 04                add    $0x4,%esp
 80498a5:       e9 16 08 00 00          jmp    804a0c0 <camlPervasives__$40_167>    # 0x40 �� '@' �ʤΤǤޤ������������Ȥ�����
 80498aa:       8d b6 00 00 00 00       lea    0x0(%esi),%esi    # �����줳����뤳�Ȥ����!!! �� �Ȥꤢ���� gdb �� break �������Ƥ�ߤޤ�ʤ���
 80498b0:       b8 01 00 00 00          mov    $0x1,%eax
 80498b5:       83 c4 04                add    $0x4,%esp
 80498b8:       c3                      ret    
 80498b9:       e8 3a d7 00 00          call   8056ff8 <caml_call_gc>
 80498be:       eb aa                   jmp    804986a <camlDame_rev__dame_rev_58+0xa>

�狼�ä����Ȥϰ����� eax, ebx ��������Ϥ��ƤӽФ�������Ȥ������Ȥ��ä��� ���� GC �ޤ��Υ����ɤϤ�������ǤϤ褯�狼��� �Ƥ� [x] �Τ���� allocate �ݤ����Ȥ����㤦�ΤϤ���äȤ����Ƥʤ��ʡ�

���Ƽ��� @ ���ɤ⤦!

0804a0c0 <camlPervasives__$40_167>:
 804a0c0:       83 ec 04                sub    $0x4,%esp
 804a0c3:       83 f8 01                cmp    $0x1,%eax    # ��������������ä��餵�ä��Ƚ�������͡�
 804a0c6:       74 48                   je     804a110 <camlPervasives__$40_167+0x50>
 804a0c8:       8b 50 04                mov    0x4(%eax),%edx    # �������� cdr
 804a0cb:       8b 08                   mov    (%eax),%ecx    # �������� car
 804a0cd:       89 0c 24                mov    %ecx,(%esp)   # car ��������¸���Ƥ�����
 804a0d0:       89 d0                   mov    %edx,%eax    # cdr �����򼡤δؿ� call ���������ˤ���
 804a0d2:       e8 e9 ff ff ff          call   804a0c0 <camlPervasives__$40_167>   # �Ƶ�! (ebx=��������Ͽ��äƤʤ��ΤǤ��Τޤ�)
 804a0d7:       89 c1                   mov    %eax,%ecx    # ���äƤ����ꥹ�Ȥ� ecx �ˡ����λ�������������Ϥ��äĤ��Ƥ�Ϥ�
 804a0d9:       a1 40 b5 05 08          mov    0x805b540,%eax    # �ޤ� GC ������
 804a0de:       83 e8 0c                sub    $0xc,%eax
 804a0e1:       a3 40 b5 05 08          mov    %eax,0x805b540
 804a0e6:       3b 05 44 b5 05 08       cmp    0x805b544,%eax
 804a0ec:       72 28                   jb     804a116 <camlPervasives__$40_167+0x56>
 804a0ee:       8d 40 04                lea    0x4(%eax),%eax    # �ޤ������ eax �˥���ꥹ�Ȥ����ä��������
 804a0f1:       c7 40 fc 00 08 00 00    movl   $0x800,-0x4(%eax)
 804a0f8:       8b 1c 24                mov    (%esp),%ebx    # ��¸���Ƥ����� car ������
 804a0fb:       89 18                   mov    %ebx,(%eax)    # ���ݤ�������ꥹ�Ȥ� car ��������
 804a0fd:       89 48 04                mov    %ecx,0x4(%eax)    # cdr �ϵ��äƤ����ͤ�
 804a100:       83 c4 04                add    $0x4,%esp
 804a103:       c3                      ret    
 804a104:       8d b6 00 00 00 00       lea    0x0(%esi),%esi   # �ޤ��Ȥ��Ƥʤ������ʥ����ɤ�����͡�
 804a10a:       8d bf 00 00 00 00       lea    0x0(%edi),%edi   # �ޤ��Ȥ��Ƥʤ������ʥ����ɤ�����͡�
 804a110:       89 d8                   mov    %ebx,%eax    # ������������������ꥹ�Ȥ��ä����ʤΤǡ�ñ����������򤫤������ɤ�!
 804a112:       83 c4 04                add    $0x4,%esp
 804a115:       c3                      ret    
 804a116:       e8 dd ce 00 00          call   8056ff8 <caml_call_gc>
 804a11b:       eb bc                   jmp    804a0d9 <camlPervasives__$40_167+0x19>
 804a11d:       8d 76 00                lea    0x0(%esi),%esi

�����Ȥ���ϡ� ��ľ�ɤ����Ƥ����ʤä��ĤȻפäƤ��ޤ��ʡ� ���줬�ؿ�������

���������������Ȥ����Ȥʤ�� list �� append ����Τ� allocation ������ȯ�����Ƥ�����! �äƤ���

�Ǥޤ��ɤ����Ƥ� O(n^2) �Ǥ����ʤ��Τǡ� �ޤ� GC �Ǥ�������٤��ʤ�Τ��ʤ���

(15:31)

�����Υĥå���(��6��) [�ĥå��ߤ������]

Before...

_ shinh [�Ȥꤢ�������줫�ʡ����ɤ�Ǥߤޤ����� http://citeseerx.ist.psu.edu/viewdoc/..]

_ shinh [�Ȥ����� OCaml ���路���ʤ��ϤĤä���������ɤ��ä��Ǥ��礦�� :-))))]

_ kik [x86�Ϥ褯�Τ�ޤ���lea�ϣ��Х���nop�Υ���ƥ�侩�ν����餷���Ǥ��衣]

_ shinh [�����ȤäƤ�쥸�����㤦���鵤�դ��Ƥʤ��ä���Ǥ������� nop �ʤ�Ǥ��͡���ޤ� padding �ʤ�������ʤ�..]

_ shinh [�Ȥ����� x86 ���路ά :-))))))))))))))))))]


2009-10-30

_ �ʤ��������

�Ż����ڤ����Ȥ����ܵ��������ˤ褯�ʤ��ȻפäƤ���Τǡ� �������ܵ��Ǥ���Ϥ����ʤ��Ȼפ���

���������������ܵ��DZѸ�ʤ�Ȥ��ʤ���󤫤ʤ��Ȥ� �פ��褦�ˤʤäƤ����� ����������Ϥ򤹤뵤�Ȥ���ʬ�Τ����Ȥ����Ȥ��� �����Ȥ��������ʤ��Τ����ɡ� �������饯���ƤȤ��������⤻���ˡ� �������������ޤ��ʤäƤ���٤����Ȼפ���

���ΤޤޤǤϤ����ʤ��� ������ܼ�Ū�Ǥʤ�����Ϥ��ĤΤޤˤ������ ���ۤ����Ƥ���٤�����ʤΤǤ��롣 �㤨�Х���ꥫ�����ܸ����̺��ѤȤ��� ������������ռ��Ф��꤬�ĤΤäƤ�����

(16:50)

_ rdtsc

x86 �Ǥ� "A" �Ȥ��Ǽ����Ƥ��Ф�������Ǥ����櫓�ʤ�����ɡ� x86-64 �ǤϿ������Ѥߤ�������

http://d.hatena.ne.jp/rero/20071208/p1

�褯�狼��󤱤ɥݡ����֥�� rdtsc �Ȥ��Ƥ� ����ʤ��󤸤Ǥ����Τ��͡�

http://github.com/shinh/test/blob/2a7a2bf7dbffae14851725154e187a636bb269ff/rdtsc.c

(17:05)

�����Υĥå���(��3��) [�ĥå��ߤ������]

_ naruse [shinh���󤬤����ѡ����ꤨ�������ˤʤ�С� �������뤵������������Ѱդ��Ƥ�������󤸤�ʤ��Ǥ��礦��]

_ n [�������뤵���Ѹ줬��� http://d.hatena.ne.jp/Ozy/20080916 ���Ȥ��ʤ��Ǥ��礦..]

_ shinh [�ޤ������餫�ޥ��ˤʤä��褦�ǤϤ���ޤ����ɤ͡� http://translate.google.com/tran..]


2009-10-31

_ w3m �� history ��ͭ

��ͭ�äƤ��������Υ��å����� �ҥ��ȥ���̤˻��äƤ��ߤ���������ɡ� ��¸�Ͼ�˸�����Ǥ��Ƥ������ߤ�����͡�

���å����� w3mcooksrv �ǽ������Ƥ뺣�ȤʤäƤ� ���� w3m �Τ�������ʬ�ΰ�ĤˤʤäƤ�������ɡ� �ޤ��̤˳ƥץ�������Ʊ���Ȥ������ߤ�����ʤ��Τǡ� ���ä����ä˥����в��Ȥ�����ޤǤ�ʤ��ΤǤ��ä���

http://github.com/shinh/w3m/commit/53a5adaecee42d46efb5b458defe0f1f03ccbeaf

�Ƥ��������å�����ɬ�פʥ����ߥ󥰤�����ɤ�äƤ����Τ� �ޤ�����ä��㤢��ʤ����ʤ���

(15:15)

_ w3m -ppl 14

screen �Dz��������ΤäƤɤ�����Τ������Τ��ʡ��� �ͤ�����̡��񤤤��̤�˥ե饰���åȤ���Τ��Ȥꤢ�����褵������

(16:24)

_ �����

i@uco ~> grep '^se ' /usr/share/skk/SKK-JISYO.L
se /�����/Selenium/��;����/��;��������/

����ʤ������

(16:25)

_ ���Ρ���ѡ���

i@um ~/wrk/sevil> ./dump
Sat Oct 31 17:00:08 um dump[13353] <Error>: kCGErrorInvalidOperation: _CGSFindSharedWindow: WID 40
Sat Oct 31 17:00:08 um dump[13353] <Error>: kCGErrorFailure: Set a breakpoint @ CGErrorBreakpoint() to catch errors as they are logged.
Screen size: (1280, 800)

CGSValue �� string ������Τ� CFString �ˤʤä��Τ��ʤ� �Ȥ����������ä��Τ��Ѥ��Ƥߤ��餽��Ǥ�ʤ󤫥��顼����

(17:01)

�����Υĥå���(��2��) [�ĥå��ߤ������]

_ ��� [> ��;����/��;�������� ��������(s)����(e)�˿��ӤƤ�äƤ��Ȥ��⡣]

_ shinh [�ʤ�ۤ�! ������������Τ褦�Ǥ��� i@uco ~> grep '^se ' /usr/share/skk/SK..]


�� 2009ǯ
10��
��
�� �� �� �� �� �� ��
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
1.shinh(2014-05-24 01:31) 2.���(2014-05-24 01:31) 3.shinh(2014-05-24 01:31)
search / home / index

���ƥ�󥯥ե꡼�Ǥ��� �������Ҥϼ�ͳ�˻��Ѥ��Ƥ��������ƹ����ޤ��� ����¾�Τ�Τ�GPL�����Ǥ���Ф�������Ѥ˴ؤ���ʸ��ϸ����ޤ��� �ʤˤ�����в����᡼�륢�ɥ쥹�ء�

shinichiro.hamaji _at_ gmail.com / shinichiro.h