検索 - みる会図書館

検索対象: 月刊 C MAGAZINE 1993年4月号

月刊 C MAGAZINE 1993年4月号から 162件ヒットしました。

月刊 C MAGAZINE 1993年4月号


Li st 2 1X10 の 12 乗 は , giga の 次 の 大 量 数 す な わ ち tera て 、 す 。 す な わ ち そ の 漢 字 は , tera の よ う な 形 を し て い ま す 。 え ー , 1 .0E12 の 平 方 根 は 1000000 , す な わ ち 百 万 て 、 す よ 。 て 、 , こ の 百 万 と い う 病 気 の 治 療 そ の も の は , 私 の 場 合 は 比 較 的 軽 症 だ っ た た め , 即 日 帰 宅 て 、 き る た っ た 1 日 の 手 術 て 済 み ま し た が , そ の 手 術 の 傷 痕 が 痛 む の て 、 す 。 経 験 者 に よ る と , 術 後 約 1 か 月 は 痛 む と か 。 最 初 の 1 ~ 2 週 間 は , ろ く に 仕 事 も て 、 き ま せ ん 。 ち な み に 私 が 手 術 を 受 け た の は , こ の 百 万 病 に 関 し て は 日 本 最 高 の 権 威 と 言 わ れ る こ と も あ る , 新 宿 区 百 人 町 の S 病 院 て 、 す 。 そ の 病 院 が く れ る 注 意 書 に は , 「 翌 日 か ら ふ つ う の 生 活 に 戻 れ る 。 た だ し , ス ポ ー ツ な ど は 4 ~ 5 日 慎 め 」 と 書 い て あ る 。 私 の 場 合 , ワ ー プ ロ や パ ソ コ ン に 向 か っ て の 、 、 座 り 仕 事 〃 て 、 す か ら , 仕 事 を し て い る と 自 分 の 体 重 が 患 部 を 圧 迫 す る の て 、 す な 。 体 重 が , ふ と し た 拍 子 に 患 部 を 扱 っ た り も す る ( 痛 え ー っ ! ) 。 ど う も , あ ま り 長 時 間 の 座 り 仕 事 は , 傷 の 回 復 に 良 く な い よ う て 、 す 。 そ こ て 、 , 40 分 ぐ ら い 仕 事 を し た ら , 強 制 的 に 10 分 ぐ ら い は 立 ち 上 が っ て ぶ ら ぶ ら す る な ど , 休 み を と る よ う に し よ う と 思 い ま し た 。 そ う い う サ イ ク リ ッ ク な タ イ マ は , 市 販 の 電 器 製 品 な ど の 中 に は 存 在 し な い よ う て 、 す か ら , パ ソ コ ン に タ イ マ 役 を や ら せ れ ば い い じ ゃ な い か 。 ノ ヾ ソ コ ン を タ イ マ に 使 う 贅 沢 と い う わ け て 、 最 初 に 作 っ た の が , ocha0. c(List 1 ) て 、 す 。 、 、 ocha ′ ′ は 、 、 お 茶 ク , す な わ ち 休 憩 時 間 と い う よ う な 意 味 て 、 す 。 こ れ は , 見 て の と お り 簡 単 な プ ロ グ ラ ム て 、 , 指 定 し た 時 間 が く る と ブ ザ ー を 鳴 ら し , メ ッ セ ー ジ を 表 示 す る だ け て 、 す 。 そ の と き , 何 か の キ ー を 押 す と , 次 の 仕 事 時 間 ま た は 次 の 休 憩 時 間 の 計 時 が 再 開 し ま す 。 ま あ , こ れ を 作 る に あ た っ て , ち ょ っ と ctrlbrk( ctrlc ) ; dummy ニ fopen( "B:NOISE" if( ! dummy ) { printf( "Can't 叩 en NOISE file on B:Yn" ) ; ex i t ( 1 ) ; イ 1 ・ に っ 「 ー C う : リ -0- 1 ー ワ 300 4 ・ COOC 1 ー り 0 ワ ひ - ・ れ 0 っ ー -8- リ 01 よ ワ 3 り 0 イ 1 ・ - - っ 「 ー リ 0 リ -0- 11 ワ 」 ワ メ - - っ ー 一 リ -0- 1 一 ワ 300 イ は ・ t_n っ 「 ー - い 】 : 0 ー ー ・ ワ 300 イ 1 ・ : リ 叮 ー 一 リ -0- ー 1 ワ 朝 っ イ は ・ 00 り ひ 00000000 -4 ・ -4 ・ イ -4 ・ -4 ・ イ 1 ・ イ -4 ・ 4 ・ イ ′ -- 【 【 - -0- 「 の っ の っ っ っ 、 - っ b00 っ ー っ ー っ ー っ ー 「 ー 【 ー っ ー っ ー 「 ー っ ー い 0n0 - い 0n0n0 - い 0n0 - い 0- リ し 0 リ し 0 リ レ -0 : 0 : 0 : 0 : 0 -0 ・ i f ( argc 〉 1 ) = atoi( argv[ 1 ] ) ; i f ( argc > 2 ) = atoi( argv[ 2 ] ) : rest system( "CLS" ) : start ニ end = time( NULL ) : (time-t)( work * 60 ) ; elapseW eIapseR ー (time-t)( rest * 60 ) : while( 1 ) { maeF = maeB while( ( temp = end ー start ) く elapseW ) { ニ eIapseW t emp zan i f ( zan > 59 ) { / / 分 表 示 ニ ( i (t) ( zan / 60 ) + I; imaF if( imaF ! ニ maeF ) { / / 1 分 経 過 し た ら 表 示 す る printf( " \ r あ と %2d 分 , お 仕 事 を 頑 張 り ま し よ う . maeF imaF; }else{ 〃 秒 表 示 ( i n t ) zan + 1 ; i maB if( imaB ! = maeB ) { / / 1 秒 経 過 し た ら 表 示 す る printf( " \ r や れ や れ , あ と %2d 秒 で 休 憩 で す よ . maeB imaB; imaF ) ; imaB ) : end : t i me ( NULL ) : keyclr(); printf( " \ r さ あ , 立 ち 上 が っ て 休 憩 し ま し よ う ( hit any key) ⅶ ⅱ e ( ! kbh i t ( ) ) { diskaccess() ; / / フ 。 サ ・ 一 が な い た め テ ・ イ ス ク ア ク セ ス の 音 を 利 用 す る keyclr(); / / 今 押 さ れ た キ ー を キ ー ハ 。 ッ フ ア か ら 捨 て て お く start end; pr i n t f ( ” Yr maeF ー maeB while( ( temp - end ー start ) く elapseR ) { ニ eIapseR temp zan i f ( zan 〉 59 ) { = ( i (t) ( zan / 60 ) + l; imaF i f ( i maF ! = maeF ) { printf( " \ r あ と %2d 分 , 休 憩 時 間 で す . ' , imaF ) : maeF imaF; }else{ ( i n t ) zan + 1 ; imaB 汀 ( i maB ! ニ maeB ) { printf( " \ r 休 憩 時 間 は , 残 り %2d 秒 で す . " , imaB ) : maeB imaB ; keyclr(); printf( " \ r さ あ , ま た 元 気 に お 仕 事 を 始 め ま し よ う ! (hit any key)' ⅶ ⅱ e ( ! kbh i t ( ) ) { d i skaccess ( ) ; keyclr() ; printf( "\r start ニ end, end = t i me ( NULL ) ; tea. c(a TSR) List 1 : / * tea. c, a TSR : Jan. 1993 , bY hiwa 2 : 指 定 し た 時 間 が 経 っ た ら PC ー 9801 の プ サ ー を 鳴 ら す 3 : 4 : 典 型 的 な 利 用 例 : 意 味 : 「 休 憩 だ よ 」 5 : ピ ー , ピ ー , ピ ー 94 C MAGAZINE 1993 4

月刊 C MAGAZINE 1993年4月号


List 1 そ う い う 仕 組 み て 、 す 。 そ し て PJP 氏 作 の ロ カ ー ル シ ス テ ム の サ プ シ ス テ ム の ひ と っ て 、 あ る , LC COLLATE, strxfrm ( ) , strcoll ( ) は ど う な っ て い る か と い う と , こ れ も 実 は 相 当 に 複 雑 難 解 な ソ ー ス フ ァ イ ル 構 成 に な っ て い る の て 、 す が , 簡 単 に 言 う と く 文 字 ~ 文 字 種 ご と の ス テ ー ト 遷 移 の 規 約 を ロ カ ー ル フ ァ イ ル て 、 指 定 し , ラ イ プ ラ リ は そ れ に 基 づ く ス テ ー ト マ シ ン と し て 実 装 す る > と い う 仕 組 み て 、 す 。 PJP 氏 が 実 装 し た ロ カ ー ル の 機 構 に つ い て , 、 、 一 応 ク 完 全 に サ ポ ー ト と い う 留 保 つ き の 言 い 方 を 私 が す る の は , 氏 の LC COLLA TE の < 文 字 ご と の ス テ ー ト 遷 移 > と い う 方 式 て 、 は , 日 本 語 文 字 列 の ソ ー ト と い う 課 題 に 対 応 て 、 き な い の て 、 は な い か と い う 予 感 が す る か ら て 、 す 。 た と え ば , 漢 字 熟 語 が 音 読 み と な る ケ ー ス と 訓 読 み に な る ケ ー ス に 関 し て , 一 定 の 法 則 性 の よ う な も の は な さ そ う て 、 す し , ま た 漢 字 1 字 の 音 読 み 音 と 訓 読 み 音 と の 間 に も , 法 則 性 は な さ そ う て 、 す か そ こ て 、 私 の 予 定 と し て は , 1 月 の 前 半 を P JP 氏 が 作 っ た ロ カ ー ル シ ス テ ム の 徹 底 的 研 究 に あ て る つ も り て 、 い ま し た 。 氏 の 実 装 系 を 批 判 精 神 を も ち つ つ 勉 強 す る こ と に よ り , 日 本 語 の た め の ロ カ ー ル を 実 現 す る た め の ア イ デ ア の ひ と つ や ふ た つ が く こ と を , 期 待 し た の て 、 あ り ま す 。 ち な み に , 本 誌 の 昨 年 ( ' 92 年 ) 6 月 号 に は , JISC に 関 す る 記 事 こ う い う 本 質 的 が 2 ~ 3 載 っ て い ま す け ど , な 事 柄 に 関 し て は な ん ら 記 載 が あ り ま せ ん 。 locale は , ロ カ ー ル に す る と ロ ー カ ル と 紛 ら わ し い か ら , 日 本 語 て 、 は 、 、 ロ ケ ー ル 〃 と 呼 ぶ こ と に し た , な ん て く だ ら な い 話 は 書 い て あ り ま す が ・ ・ と こ ろ が , こ の 予 定 は , 私 自 身 の 病 気 治 療 の た め , 不 可 能 に な っ て し ま い ま し た 。 な ん ち ゅ う 病 気 か と い う と , 日 本 語 ~ 漢 字 の 勉 強 を 始 め て 間 も な く の ガ イ ジ ン な ら , こ の 病 名 を 表 す 漢 字 を 見 て , 思 わ ず , sqrt ( 1.0E12 ) だ ! と 言 う か も し れ ま せ ん ね 。 -0 ー 1 ワ 3 00 -4 ・ LO 石 0 叮 ー 8 0 1 人 ワ 」 00 -4 ・ ^ 0 叮 ー CO 0 リ 0 、 1 ワ 朝 00 ・ っ ー -8 0 1 ー ワ 3 ワ 0 -4 ・ LO ー 8 0 1 ー ワ 3 C-O -4 ・ if( imaB ! ニ maeB ) { / / 1 秒 経 過 し た ら 表 示 す る gotoxy( 1 , 1 ) : clreol ( ) : printf( " 喜 べ っ , あ と %2d 秒 で 休 憩 で す よ . maeB ー i maB : imaB ) ; end ニ time( NULL ) : gotoxy( 1 , 1 ) : clreol ( ) : printf( " さ あ , 立 ち 上 が っ て 休 憩 し ま し よ う ( hit any key) sound( 1000 ) ; while( ! getch() ) nosound(); end; start clrscr() ; maeF = maeB while( ( temp ニ end ー start ) く elapseR ) { eIapseR ー temp zan i f ( zan 〉 59 ) { ニ ( i nt ) ( zan / 60 ) + 1 ; i maF i f ( i maF ! ニ maeF ) { gotoxy( 1 , 1 ) : cl reol ( ) : printf( " 休 憩 時 間 は , 残 り %2d 分 で す . " , imaF ) ; maeF ニ imaF, }élse{ ( i n t ) zan + 1 : i maB if( imaB ! ニ maeB ) { gotoxy( 1 , 1 ) ; cl reol ( ) : printf( ” 休 憩 時 間 は , あ と %2d 秒 で 終 わ り で す . " , imaB ) : maeB ー imaB; end = t i me ( NULL ) : gotoxy( 1 , 1 ) ; c e 引 ( ) : printf( ” さ あ , ま た お 仕 事 の 時 間 で す ぞ ( hit any key) sound( 2100 ) : while( ! getch() ) nosound(); start ニ end; ocha. c ( 時 間 管 理 run on ワ ー プ ロ OAS 旧 30 シ リ ー ズ ( MS ー DOS ) ) LiSt 1 : / * ochal. c : 時 間 管 理 run on ワ ー フ 。 ロ OASYS 30 シ リ ー ス 。 (MS-DOS) * / 2 : / * Jan. 1993 , by hiwa * / 3 : 4 : # i ncl ude く s td i 0. h> 5 : # i ncl ude く con i 0. h> 6 : # i ncl ude く std ⅱ b. h> 7 : $include く dos. h 〉 8 : # i ncl ude く t i me. h > 9 : 10 : #define keycll 、 () while( kbhit() ) getch() 11 : #define diskaccess() fseek( dummy, 0 , SEEK_SET ) ; \ fputs( "abcdefghijklmnopqrstuvwxyz", fclose( dummy ) ; \ un ⅱ nk ( "B : NO I SE " ) : \ dummy ニ f 叩 en( "B:NOISE", 17 : i n t c trl c ( VO i d ) fcloseall(); un ⅱ nk ( "B : NOI SE" ) : 20 . return 0 ; 22 : } 23 : 24 : VOid main( int argc, char **argv ) 26 : int work, rest, imaF, maeF, imaB, maeB; t ime-t start, end, elapseW, elapseR, temp, zan ; 28 : FILE *dummy; 29 : 30 : : 55 : work res t 32 : setcbrk( 1 ) : 33 : dummy ) ; \ "wt 0 C 言 語 フ ォ ー ラ ム 93

月刊 C MAGAZINE 1993年4月号


耳 む ず か し な が ら ド ジ り ま し た 第 の 回 プ ロ グ ラ ミ ン グ は 時 の 経 つ の を 忘 れ さ せ る 岩 谷 宏 ジ ョ ン て 、 す 。 前 者 の BC 十 十 3.0 は , locale. PJP 氏 作 の ほ う は , ロ カ ー ル と い う 機 構 を C の ロ カ ー ル に つ い て h が あ っ た り , setlocale( ) , localeconv( ) , 一 応 完 全 に サ ポ ー ト し て い ま す 。 て 、 す か ら , 勉 強 し よ う と し た が 氏 の ラ イ プ ラ リ の ロ カ ー ル 関 連 の 部 分 は ソ strxfrm ( ) , strcoll ( ) な ど が 一 応 存 在 し て 前 回 ( ' 93 年 3 月 号 ) は , 各 社 の い わ ゆ る 年 末 い て , 一 見 も っ と も ら し い け ど , 実 は ロ カ ー ス コ ー ド の フ ァ イ ル 数 も 多 く , し た が っ ス ケ ジ ュ ー ル と い う や つ に 追 わ れ て , プ ロ ー ル と い う 機 構 自 体 は ま っ た く サ ポ ー ト し て , 構 成 も 複 雑 , そ し て そ の 理 解 は 難 解 て 、 す 。 ま あ , 今 ご く 簡 単 に 言 う な ら , ュ ー ザ グ ラ ム の コ ー ド が ま っ た く 登 場 し な い 駄 文 て い ま せ ん ( こ う い う こ と 言 う と , ま た あ の ポ ー ラ ン ド の 社 員 が , 一 応 、 、 理 屈 と し て は 正 て 、 お 茶 を 濁 し て し ま い ま し た 。 そ こ て 、 今 回 が く 口 カ ー ル フ ァ イ ル 〉 と い う 独 特 の フ ァ は , そ の 罪 滅 ば し を せ ず ば な る ま い し い ク 反 論 を 言 い そ う だ け ど , そ れ は こ の 際 イ ル を 書 け ば , setlocale( ) 関 数 が そ れ を 読 0 大 テ ー マ 「 日 本 語 処 理 の 標 準 体 系 」 に 対 し 無 視 ! ) 。 ん て 、 ロ カ ー ル を 新 ロ カ ー ル へ と セ ッ ト す る , て , そ の サ プ サ プ テ ー マ ぐ ら い て 、 あ る 「 日 本 ocha. c ( 時 間 管 理 run on PC ー 9801 シ リ ー ズ ( MS ー DOS ) ) 語 文 字 列 の ソ ー ト 」 と い う 課 題 を , 前 回 の 終 わ り の ほ う て 、 掲 げ ま し た か ら , C プ ロ グ ラ ミ ン グ の 雑 誌 に 載 る 記 事 と し て は , 次 は 当 殃 標 準 C(ANSI/ISO C) の ロ カ ー ル (locale) と い う 機 構 , そ し て 中 て 、 も , 文 字 の 薐 答 順 を 指 定 す る ロ カ ー ル カ テ ゴ リ て 、 あ る LC COL LATE に つ い て 研 究 し な け れ ば な り ま す ま い 。 そ し て , こ の ロ カ ー ル カ テ ゴ リ の 正 し い 設 定 の も と に , 上 記 の 課 題 の ソ リ ュ ー シ ョ ン と し て の 標 準 ラ イ プ ラ リ 関 数 , strxfrm ( ) と strc 。 11 ( ) の 私 家 版 を 実 装 し な け れ ば な 言 い 換 え る と , お 望 み の 仕 様 り ま す ま い ど お り の 両 関 数 が 実 装 て 、 き れ ば , 当 面 の 「 日 本 語 文 字 列 の 比 較 お よ び ソ ー ト 」 と い う 処 理 は 実 現 し ま す 。 さ て , 私 が ソ ー ス リ ス ト を 覗 け る 立 場 に あ る C の 標 準 ラ イ プ ラ リ の 実 装 系 は , 私 自 身 が 正 規 有 料 ユ ー ザ て 、 あ る BorIand C 十 十 V er. 3.0 と , あ と も う ひ と つ は , fThe Stan dard C Library 』 (). J. PIauger, Prentice -HaII, 1992 ) に 載 っ て い る PJP 氏 の 自 作 バ ー List 1 : / * ocha0. c : 時 間 管 理 run on PC ー 9800 シ リ ー (MS-DOS) * / 2 : / * Jan. 1993 , by hiwa * / 3 : 4 : # i ncl ude く std i 0. h 〉 5 : # i ncl ude く con i 0. h 〉 6 : # i ncl ude く s td ⅱ b. h> 7 : #include く d0S. h> 8 : # i ncl ude く t i me. h> 9 : 10 : void main( int argc, char **argv ) int work, rest, imaF, maeF, imaB, maeB, t ime-t start, end, elapseW, elapseR, temp, zan ; work = 40 ; rest i f ( argc 〉 1 ) work : at0i( argv[ 1 ] ) ; i f ( argc > 2 ) 20 : rest ニ atoi( argvC 2 ] ) : 22 : start ニ end ニ time( NULL ) : 23 : ( t i me-t ) ( work * 60 ) ; eIapseW 24 : eIapseR : (time-t) 、 ( rest * 60 ) : 25 : ⅶ ⅱ e ( 1 ) { 26 : clrscr(); 27 : 28 : maeF ニ maeB while( ( temp ニ end ー start ) く elapseW ) { 29 : 30 : ニ elapseW temp zan i f ( zan 〉 59 ) { / / 分 表 示 ニ ( i (t) ( zan / 60 ) + l; 32 : imaF if( imaF ! ニ maeF ) { / / 1 分 経 過 し た ら 表 示 す る 33 : gotoxy( 1 , 1 ) : cl reol ( ) : 34 . printf( " お 仕 事 を , あ と %2d 分 お 続 け く だ さ い . 35 : 36 : maeF ー imaF : 37 : }else{ / / 秒 表 示 38 : ( i n t ) zan + 1 : 39 : imaB imaF ) : 92 C M AGAZIN E 1993 4

月刊 C MAGAZINE 1993年4月号


0 0 こ の 本 は そ の タ イ ト ル ど お り , プ ロ グ ラ マ の 妻 た ち 19 人 が , 夫 の 仕 事 や 日 常 生 活 に つ い て 書 い た 工 ッ セ イ を 一 冊 に ま と め た も の て す 。 趣 味 , 子 供 , 仕 事 , 家 庭 , 奧 様 と プ ロ グ ラ マ の あ り の ま ま の 姿 が 書 か れ , 奧 様 か ら 見 た プ ロ グ ラ マ の 全 行 動 が 事 細 か に つ づ ら れ て い ま す 。 書 か れ た 夫 た ち は , 鏡 に 写 っ た 自 分 を 見 て い る よ う て ち ょ っ と 照 れ な が ら , 赤 く な っ た り 青 く な っ た り 顔 色 を 変 え な が ら , 少 々 気 ま ず い 思 い を し な が ら 読 む の て 、 は な い て し よ う か 。 ふ だ ん 物 い わ ぬ 奧 様 た ち は , 実 は こ ん な に も 冷 静 な 目 て プ ロ グ ラ マ て 、 あ る 夫 た ち を 見 て い る の て 、 す 。 32 C MAGAZINE 1 3 4 る の を 本 当 に 楽 し ん て い る よ う て す 。 ふ た 宮 川 夫 妻 は , ふ た り て い っ し ょ に 生 活 す 正 子 夫 妻 て す 。 っ た の は , 宮 川 良 彦 ・ 春 美 夫 妻 , 笹 井 龍 一 に 印 象 に 残 り , す て き な 人 た ち だ な あ と 思 19 人 の プ ロ グ ラ マ の 妻 た ち の 中 て 、 も と く い る の は 意 外 て 、 し た 。 ト , 専 業 主 婦 な ど , い ろ い ろ な 職 業 の 人 が て , 同 業 者 あ り , 教 師 , 経 営 コ ン サ ル タ ン こ の 本 を 読 む と , 妻 た ち の 仕 事 も さ ま ざ ま の 方 が 多 い の だ ろ う と 思 っ て い た の て 、 す が , こ れ を 理 解 し て く れ る 奧 様 も や は り 同 業 者 コ ン ピ ュ ー タ 業 界 は 時 間 が 不 規 則 な の て , な さ い ) 。 分 て , こ の 本 を 読 ん て 、 し ま い ま し た ( ご め ん 根 性 丸 出 し て ワ イ ド シ ョ ー を 見 る よ う な 気 の よ う な 生 活 を し て い る の か と , オ バ サ ン ど の よ う に し て 妻 と 出 会 っ て 結 婚 し て , ど 受 け ま し た 。 そ し て , プ ロ グ ラ マ の 方 は , も の が あ る な ら , ぜ ひ 読 ん て み た い と 引 き い ? 」 と 聞 か れ た と き , そ ん な に お も し ろ い 妻 た ち が 書 い た 本 が あ る け ど 書 評 を 書 か な す か ら , あ る 日 ダ ー リ ン か ら 「 プ ロ グ ラ マ の い た し , プ ロ グ ラ マ の 友 人 も い ま せ ん 。 て 、 私 は ダ ー リ ン と は 業 界 が ま っ た く 違 っ て ・ 今 月 の 書 評 ・ 『 プ ロ グ ラ マ の 妻 た ち 』 り て 築 地 に 買 い 出 し に い き 材 料 を 買 い こ ん て 、 き て , い っ し ょ に 料 理 す る 。 旅 行 す る に も あ り き た り て 、 な く , 言 葉 が わ か ら な く て も 身 ぶ り 手 ぶ り て ふ た り て 楽 し み な が ら サ バ イ バ ル 。 仕 事 も 同 業 者 同 士 だ か ら わ か り あ え る 。 こ ん な 夫 婦 は , お 互 い を 高 め あ い な が ら 楽 し ん て 、 暮 ら し て い る ん て 、 し よ う ね ! 本 当 に す て き て 、 す 。 笹 井 夫 妻 は , 奧 様 が 仕 事 す る 夫 を し つ か り 支 え , の び の び と 仕 事 て き る 環 境 を 与 え て い る こ と に 感 心 し ま し た 奧 様 は 「 夫 は 回 転 扉 て 、 つ な が っ た 「 大 人 』 と 「 子 供 』 の ふ た つ の 部 屋 を 持 っ て い て , そ こ を い っ た り き た り し て い る 」 と 書 い て い ら っ し ゃ い ま す が , 夫 の な す こ と す べ て を 認 め , ゆ っ た り と し た 気 持 ち て 、 家 庭 を つ つ み 込 ん て 、 い る よ う て す 。 そ し て , し つ か り 夫 の た づ な を 握 っ て い る , す て き な 奧 様 に あ こ が れ て し ま い ま す 。 こ の ほ か の 方 々 も 皆 か げ と な り ひ な た と な り 夫 を 支 え て い ま す 。 「 夫 が 仕 事 に 集 中 し て い る 間 は 部 屋 に 入 ら た ー ビ レ ッ ジ セ ン タ ー 編 ■ B6 判 並 製 / 254 頁 ■ L300 円 ■ ビ レ ッ ジ セ ン タ ー な い 」 「 打 ち 合 わ せ が 盛 り あ が る と , お 茶 を い つ 出 し て い い の か タ イ ミ ン グ が わ か ら な い 」 な ど な ど , こ の 本 を 読 ん て 、 初 め て , プ ロ グ ラ マ の 仕 事 が い か に た い へ ん か , わ か っ た よ う な 気 が し ま す 。 私 の ダ ー リ ン ( 近 藤 嘉 雪 ) も , 昼 は 会 社 て 、 プ ロ グ ラ ム を 書 き , 家 に 帰 っ て か ら 原 稿 を 書 い た り , 新 し い プ ロ グ ラ ム を 作 っ た り , か く れ て ゲ ー ム を し た り と , と て も 楽 し く 毎 日 を 送 っ て い る プ ロ グ ラ マ て す 。 私 は ま っ た く コ ン ピ ュ ー タ の こ と は わ か り ま せ ん 。 ダ ー リ ン と 結 婚 す る ま て 、 コ ン ヒ 。 ュ ー タ を 見 こ と な ど な く , 未 だ に ダ ー リ ン の 仕 事 の 内 容 も わ か ら ず 「 ご 主 人 の 仕 事 は ? 」 と 聞 か れ て も 「 コ ン ピ ュ ー タ の 仕 事 」 と し か 答 え ら れ ま せ ん 。 う ぶ な 私 は , 家 て 、 コ ン ヒ 。 ュ ー タ の 前 に 座 っ て い る と き , ダ ー リ ン は い つ も 仕 事 を し て る と 思 っ て い ま し た 。 て 、 も あ る 日 , ダ ー リ ン が コ ン ヒ 。 ュ ー タ て 、 ゲ ー ム を し て い る と ハ イ ス コ ア に ず こ ろ を 見 て し ま い ま し た 。 ら 一 一 つ と 並 ぶ 高 得 点 と ダ ー リ ン の 名 前 ・ ・ そ し て 親 切 に こ う し た ほ う が い い よ と 解 説 ま て 、 し て く れ て ・ ・ ・ ・ ・ ・ き っ と 今 ま て 、 遊 ん て 、 ば か り い た ん だ ・ 3 歳 の 息 子 と い っ し ょ に 「 パ パ 遊 ば 一 」 と し っ こ く せ が ん て 、 原 稿 の 締 め 切 り を 遅 ら せ る 原 因 と な る 自 分 た ち を し つ か り と 棚 に あ げ て , 冷 や か な 目 て 、 ダ ー リ ン を 見 る い け な い プ ロ グ ラ マ の 妻 が こ こ に い ま す 。 C マ ガ ジ ン を 読 ん て 、 い る プ ロ グ ラ マ の 皆 様 , お 宅 は ど う て 、 す か ? 「 ま た 新 し い コ ン ヒ 。 、 一 タ が ほ し い の ? 」 「 ま た 秋 葉 原 行 く の ? 」 「 も っ と 家 の こ と も 考 え て 」 な ど と 奥 様 か ら 少 な か ら ず 非 難 を あ び 「 も う 少 し 俺 の 仕 事 せ ら れ て い ま せ ん か ? も わ か っ て く れ 一 」 と 思 う 方 , こ の 本 を 奥 様 に そ っ と 手 渡 し て み ま し よ う 。 お 宅 と 比 べ て 夫 婦 ふ た り て 、 読 ん て 、 み る の も お も し ろ い ( プ ロ グ ラ マ の 妻 ・ 近 藤 清 美 ) て 、 す よ 。

月刊 C MAGAZINE 1993年4月号


ら , そ れ を フ ォ ル ダ に 入 れ ま す 。 1 年 前 , 私 て い る と お っ し ゃ い ま し た が , 今 日 で も 状 だ け て 、 使 わ れ て い ま す 。 こ の 種 の シ ス テ ム が 持 っ て い た フ ォ ル ダ は 12 個 て 、 し た 。 い ま 況 は 変 わ り ま せ ん か ? に 必 ず し も 必 要 な わ け て 、 は な い の て す 。 て 、 は 200 個 に 増 え て し ま っ て , メ ッ セ ー ジ を Atwood 混 乱 と い う わ け て 、 は な い の て 、 し ょ 結 局 , こ の 技 術 は 人 間 に と っ て も っ と シ 見 つ け る こ と さ え て 、 き な い 状 態 て 、 す 。 フ ォ う が , こ の 技 術 を 使 用 し て 開 発 さ れ た ア プ ン プ ル て 、 自 然 な モ デ ル を 提 供 す る と 思 わ れ , ル ダ の 中 に は 1 , 000 個 の メ ッ セ ー ジ が 収 め ら リ ケ ー シ ョ ン て は , こ れ ま て 、 に デ ー タ ベ ー 従 来 の レ コ ー ド 指 向 ア プ リ ケ ー シ ョ ン の 中 れ て い る も の も あ り , た と え ば 誰 か の 名 前 , ス を 扱 っ た こ と が な い か ら て 、 し よ う 。 つ ま て 、 も , 性 能 に 対 す る 条 件 が あ ま り 厳 し く な 電 話 番 号 や 住 所 , 進 行 中 の プ ロ ジ ェ ク ト な り , レ コ ー ド に 収 ま ら な い デ ー タ を 使 用 し い 場 合 に 使 わ れ る よ う に な る て 、 し よ う 。 従 ど , そ の と き は 保 存 す る 価 値 が あ る と 思 っ て い た わ け て 、 す 。 た と え ば , テ キ ス ト , イ 来 の レ コ ー ド デ ー タ だ け を 持 つ ア プ リ ケ ー メ ー ジ , グ ラ フ ィ ッ ク , 有 限 要 素 モ デ ル , て 保 存 し た わ け て す が , い ま て 、 は 欲 し い 情 シ ョ ン て 、 も , 低 レ ベ ル な リ レ ー シ ョ ナ ル モ 報 を 取 り 出 す こ と も て 、 き ま せ ん 。 VLSI デ ザ イ ン な ど て 、 す 。 こ の う ち , ど れ ひ デ ル を 使 う こ と の 猥 雑 さ を 考 え れ ば , こ の て 、 き れ ば そ う い う 情 報 は す べ て デ ー タ ベ と っ と し て レ コ ー ド に 入 れ ら れ る も の は あ 技 術 を 使 う 価 値 は 十 分 あ る て 、 し よ う 。 ー ス に 保 存 し て , い っ て 、 も 照 会 し て 検 索 て 、 り ま せ ん の て 、 , デ ー タ ベ ー ス に も 入 れ る こ 近 未 来 オ プ ジ ェ ク ト と は て 、 き な い の て 、 す 。 き る よ う ク ロ ス イ ン デ ッ ク ス を つ け た い と 指 向 技 術 戦 略 思 っ て い ま す 。 一 部 の リ レ ー シ ョ ナ ル デ ー タ ベ ー ス は 現 在 , 「 BLOB 」 と い う 概 念 を 取 り 入 れ て お り , L0tus N0tes の よ う な , 現 在 の メ ッ セ ー ジ ン グ & デ ー タ ト ラ ッ キ ン グ プ ロ グ ラ ム BLOB を 使 え ば 構 造 化 さ れ て な い ビ ッ ト ス ト 貴 社 は Microsoft 社 や Borland lnterna を 使 っ て 行 う こ と は で き な い の で す か 。 リ ン グ を 記 憶 て 、 き ま す 。 た だ , 本 当 に や り tion 社 な ど の 巨 大 企 業 と 比 べ る と 小 規 模 な Atwood 確 か に て 、 き ま す 。 実 際 , Notes は こ と は , メ モ リ 内 の グ ラ フ べ ー ス の ド ソ フ ト ウ ェ ア 会 社 で す が , オ プ ジ ェ ク ト 指 よ い 例 て 、 す ね 。 と く に , オ プ ジ ェ ク ト デ ー キ ュ メ ン ト を 永 続 的 に 記 憶 し て お く こ と て 、 向 の 技 術 を 今 後 ど の よ う に 展 開 し て い き た タ ベ ー ス 技 術 が PC プ ラ ッ ト ホ ー ム て 、 広 く 普 す 。 フ ァ イ ル を 使 う 場 合 , ま ず グ ラ フ を 取 い と お 考 え で す か ? 及 す る 前 は , Notes を 使 う の が い ち ば ん て 、 し り 出 し , そ の グ ラ フ を フ ラ ッ ト な リ ニ ア ス た 。 Notes は 基 本 的 に フ ォ ー ム や ス ク リ ー ン ト リ ン グ に し て か ら フ ァ イ ル に 書 き 込 む し 定 義 用 の GUI ビ ル ダ , ワ イ ド エ リ ア の 分 散 / か あ り ま せ ん て 、 し た 。 そ し て 使 い た い と き 複 製 デ ー タ を 扱 う オ プ ジ ェ ク ト デ ー タ ベ ー に は フ ァ イ ル か ら リ ニ ア ス ト リ ン グ を 取 り ス , そ し て 小 さ な ア プ リ ケ ー シ ョ ン レ イ ヤ 出 し て , グ ラ フ べ ー ス の ド キ ュ メ ン ト を 再 て 、 作 ら れ て い ま す 。 作 成 し な く て は な ら な い わ け て 、 す 。 今 日 の 技 術 て 、 は , こ れ と ま っ た く 同 じ ア BLOB を 使 っ て も 同 じ こ と て 、 す 。 BLOB は プ リ ケ ー シ ョ ン を 作 る に は , ひ と り の 専 従 構 造 の な い イ メ ー ジ に は う ま く 働 く の て 、 す 開 発 者 を 置 い た と し て も 数 か 月 は か か り ま が , 複 雑 な 構 造 の グ ラ フ べ ー ス の ド キ ュ メ す 。 と い う の も , 基 本 的 に は 汎 用 ツ ー ル を ン ト を 扱 い た い と き は , 同 じ よ う に し て ス 構 築 し よ う と す る か ら て , 率 直 に 申 し 上 げ ト リ ン グ を フ ラ ッ ト に し , BLOB に 入 れ て か て 全 然 使 い も の に な ら な い は ず て 、 す 。 ら も う 一 度 再 作 成 す る こ と に な り ま す 。 こ れ て 、 は , ま る て 、 仕 事 の あ と 自 宅 に 戻 る つ ま り , Lotus Notes は も は や 最 先 端 と き に , ガ レ ー ジ に 車 を 入 れ る 前 に そ の 車 の 技 術 で は な い と ? Atwood ま あ , Notes に は 6 種 類 の 組 み 込 み を 解 体 す る よ う な も の て 、 す 。 そ し て 朝 , 車 の エ ン ジ ン を か け る 前 に , 今 度 は も う 一 度 型 が あ り , 定 義 し た い 型 が そ の 型 と 一 致 し な い 場 合 に は , ど う に か し て そ の 型 を 合 わ 組 み 立 て な く て は な ら な い の て 、 す 。 自 動 車 せ な く て は な り ま せ ん 。 一 方 , オ プ ジ ェ ク て 、 は こ ん な バ カ げ た こ と は 許 さ れ な い の に , ト デ ー タ ベ ー ス を 使 え ば , ど ん な 型 て 、 も 定 ど う い う わ け か , ソ フ ト ウ ェ ア て 、 は 長 い 間 , 義 て 、 き ま す 。 み ん な 我 慢 し て き ま し た 。 先 ほ ど , 多 く の 人 た ち が フ ァ イ ル の 観 て 、 す か ら , こ の 技 法 は , 少 な く と も 最 初 点 か ら オ プ ジ ェ ク ト 指 向 デ ー タ ベ ー ス に 注 の う ち , 非 レ コ ー ド 指 向 の デ ー タ を 持 ち , 目 し 始 め , そ の コ ン セ プ ト に つ い て 混 乱 し 高 速 な 対 話 を 必 要 と す る ア プ リ ケ ー シ ョ ン 14 C MAGAZINE 1 3 4

月刊 C MAGAZINE 1993年4月号


田 典 ン ム ク ス 第 22 回 安 部 公 房 と コ ン ピ ュ ー タ イ ラ ス ト : 山 形 彰 吾 こ と さ え 実 感 て 、 き な か っ た 「 受 験 生 」 と い う 私 は 実 は こ の 「 ワ ケ ノ ワ カ ラ ナ イ 」 芸 術 に 立 場 だ っ た の だ か ら , こ れ は 当 然 だ 学 生 の こ ろ か ら と て も 興 味 を 持 っ て い た し , ツ 、 、 、 0 今 も 持 っ て い る 。 ア ブ ナ イ , な ど と い わ れ あ の と き は コ ン ヒ 。 ュ ー タ の プ ロ グ ラ ム と い う も の が い っ た い ど う い う も の て 、 あ る か , そ う だ が , 実 は こ の 「 前 衛 」 芸 術 の 人 た ち が 私 が か っ て だ ら し の な い 受 験 生 だ っ た と き , 受 験 と い う 自 分 の ま ま に な ら な い 現 実 や っ た こ と と い う の は , 現 在 考 え て も た い さ つ ば り 知 っ て は い な か っ た か ら , 私 は こ 世 界 か ら 逃 避 す る こ と ば か り 考 え て い た 。 の 言 葉 か ら 「 へ え , プ ロ グ ラ ム と い う の は こ へ ん に 示 唆 に 富 ん だ も の だ っ た 。 う い っ た も の だ っ た ん だ 」 と い う よ う に 理 解 前 衛 の め ち ゃ く ち や さ と は , い い 換 え れ こ ん な 私 が そ の 逃 避 の 先 を ど こ に 求 め た か と い う と , そ れ は 読 書 だ っ た 。 私 の お 気 に し た 。 の ち に こ の 仕 事 に 実 際 に 携 わ っ て み ば 「 人 間 は ほ ん と う は こ う い っ た も の て 、 は な る と , あ の と き の 「 質 と 量 」 と い う 話 の 半 分 い の か ? 」 と い う 疑 間 か ら き て い る 。 つ ま り 入 り は 安 部 公 房 だ っ た 。 人 間 の 行 為 に は 「 意 識 し て い る も の 」 と 「 意 識 は 本 当 だ が , あ と の 半 分 は 当 た っ て い な い 私 は こ の 人 の 乾 き き っ た 感 性 に , 何 か こ さ れ て い な い も の 」 が あ る 。 ま た 秩 序 立 っ た の て 、 は な い か , と 思 い だ し た 。 の 日 本 に あ る も の と は ま っ た く 違 っ た も の を 感 じ た 。 そ の 「 感 じ 」 が 何 よ り も 好 き だ っ と い う の は , プ ロ グ ラ ム を 組 む と い う 仕 も の と , そ う て 、 な い も の が あ る 。 「 あ っ ち の ほ う が 絶 対 に い い 」 と い う 行 為 て 、 も , 何 ら か た し , そ の 「 違 っ た 文 化 」 の に お い を , こ の 事 が , そ こ に 書 か れ て い る よ う に な ん ら 高 の 説 明 さ れ な い 理 由 て 、 そ れ が 行 わ れ な か っ 日 本 と い う 国 て 、 ふ ん ぶ ん と さ せ て い る , そ 級 な 仕 事 て 、 も な け れ ば , 人 間 の 頭 だ け が 働 の 文 体 か ら に じ み 出 て く る 挑 戦 的 な 雰 囲 気 い て い る よ う な 印 象 の 仕 事 て 、 も な か っ た か た り す る 。 私 た ち は 通 常 , 「 や ら な け れ ば な ら だ 。 だ か ら , あ の と き の 「 質 」 と は , 実 は ら な い こ と を や ら な か っ た り す る 」 行 為 は , が 好 き だ っ た 。 だ か ら , こ の 人 の 作 品 は 隅 か ら 隅 ま て 、 な め る よ う に し て 読 ん て 、 い た 。 「 捉 え き れ な い も の 一 一 た と え ば 労 働 と か 作 人 間 と し て の 自 分 の 弱 さ の た め だ , と 思 っ ど の 作 品 の ど こ に ど ん な こ と が 書 い て あ る て す ご し て い る 。 け れ ど も , そ れ は 本 当 に 業 」 と い う 意 味 て 、 あ り , そ れ を 「 捉 え き れ る か ま て 、 , ほ と ん ど 暗 記 す る ほ ど て 、 あ っ た 。 か も し れ な い も の 」 て 、 あ る プ ロ グ ラ ム と い う そ う な の だ ろ う か ? 私 は 人 の 文 章 を 読 む と き に は , 何 度 も 繰 り も の と 対 比 し た だ け の こ と て 、 は な か っ た か , テ パ ッ グ と 前 衛 返 し て 読 む こ と は し な い 。 穴 が あ く ほ ど の と 理 解 を し た 。 集 中 力 て 、 い っ き に 読 ん て 、 し ま う 。 そ し て こ 前 衛 芸 術 よ く 考 え れ ば 人 間 は 間 違 い を 侵 し た く て れ は お も し ろ い と 感 じ た ら , そ の 感 じ を と 間 違 い を 侵 し て い る わ け て 、 は な い 。 そ し て て も た い せ つ に す る 。 な ん だ か 二 度 以 上 同 じ と こ ろ て 、 , 安 部 公 房 は 劇 作 家 と か ア バ ン 怠 け よ う と 思 っ て 怠 け る わ け て 、 は な い ( も ち 文 章 を 読 む と , そ の 最 初 の 感 じ が 崩 れ て し ギ ャ ル ド の 作 家 と し て , 世 界 的 に 有 名 な 人 ろ ん , 同 じ こ と が て 、 き る な ら ば 苦 し い 道 よ ま い そ う て 、 怖 い の だ 。 だ か ら , 作 品 中 の 文 間 だ っ た 。 「 ア バ ン ギ ャ ル ド 」 の 語 源 は フ ラ 章 を 覚 え る と い う 行 為 も , 実 は 1 回 し か 読 ん り は 楽 な 道 を 選 ぶ , と い う の と は 違 っ た 意 ン ス 語 だ が , 日 本 語 て 、 は 「 前 衛 ( 芸 術 ) 」 と 訳 味 て 、 だ ) 。 な ぜ 人 間 は 間 違 い を 侵 す の か 。 そ て 、 い な い そ の 結 果 な の だ 。 だ か ら , そ れ て 、 さ れ る 。 日 本 人 て 、 は な い が , 前 衛 と 呼 ば れ れ は 本 当 は 必 然 的 に そ う い っ た 道 を 歩 か さ 覚 え て い る , と い う の は 相 当 印 象 が 強 か っ と い う こ と て 、 も あ る 。 る あ る 作 曲 家 が ヒ 。 ア ノ の 曲 と 称 し て 休 符 だ れ て い る の て 、 は な い か ? 確 か 「 第 四 間 水 期 」 と い う 作 品 だ っ た と 記 け て 、 て 、 き て い る 楽 譜 を 書 い た り し た 。 そ の こ う 考 え て く る と , 実 は , そ れ ま て 、 の 心 憶 し て い る が , そ の 中 て 、 安 部 公 房 は コ ン ヒ 。 理 学 と か が や っ て い た こ と は 「 だ れ か が だ れ 曲 は 当 然 演 奏 さ れ て い る の に ま っ た く 奏 者 ュ ー タ ソ フ ト ウ ェ ア に つ い て 「 プ ロ グ ラ ミ ン が ヒ 。 ア ノ に 触 れ ず に 終 わ っ て し ま う , と い か の い う こ と を 聞 か な い の は ど う し て か ? 」 グ と い う の は 質 を 量 に 変 換 す る 作 業 だ 」 と 書 う も の だ っ た か ら , こ れ が 最 初 に 演 奏 さ れ と い う 問 い か ら 「 ど う や っ た ら 人 を 自 分 に 従 わ せ る こ と が て 、 き る か 」 と い う こ と を 「 科 学 」 い て い る 。 こ の 作 品 を 読 ん だ 当 時 の 私 は こ た と き は , た い へ ん に セ ン セ ー シ ョ ナ ル に の 意 味 を 半 分 理 解 て 、 き な い て 、 い た 。 取 り 上 げ ら れ た と 聞 い て い る 。 今 て 、 も こ の し た も の て 、 し か な か っ た , と い う こ と に 気 も ち ろ ん , コ ン ヒ 。 ュ ー タ と い う も の が ど う い う も 作 品 は 「 前 衛 」 を 語 る と き に は 欠 か せ な い 作 が つ く 。 の て 、 , ど ん な と こ ろ て 、 使 わ れ る の か と い う 品 と し て 有 名 だ 人 間 の 無 意 識 に 光 を 当 て る , と い う 作 業 質 と 量 100 C MAGAZINE 1993 4

月刊 C MAGAZINE 1993年4月号


に 一 彡 売 List 2 C 言 語 で の 実 現 86 : } 39 : 40 : 42 : 43 : 44 : 45 : 46 : 47 : 48 : 49 : 50 : 52 : 53 : 54 : 55 : 56 : 57 : 58 : 59 : 60 : 62 : 63 : 64 : 65 : 66 : 68 : 69 : 73 : 74 : 75 : 76 : 80 : 82 : 83 : 84 : 85 : 88 : 89 : 92 : 93 : 94 : 96 : 97 : 98 : 99 : 1 0 0 : 1 0 1 : 102 : 103 : 104 : 105 : 106 : 107 : 108 : 109 : 1 10 : 1 1 2 : 1 1 3 : 1 1 4 : 1 1 6 : 1 19 : 120 : 1 2 1 : 122 : 123 : 1 2 4 : 125 : FILE こ れ ま て 、 の 試 用 て 、 ツ ー ル の 有 効 性 は 一 応 確 認 て 、 き た が , 実 用 性 を 高 め る た め に 不 可 欠 な の は 高 速 化 て 、 あ る 。 イ ン タ ブ リ タ て 、 あ る awk に 速 度 を 求 め る の は 無 理 な よ う て 、 あ る 。 そ こ て 、 同 じ 機 能 を C 言 語 て 、 実 現 す る こ と ど う せ 書 き 直 す の て 、 あ れ ば よ り 高 速 化 を 期 待 し て LCS の 計 算 に 再 帰 を 使 う 方 式 を 改 め , [ 文 献 1 ] の 漸 化 式 を 用 い る こ と に し た 。 な お , LCS の 計 算 部 分 は [ 文 献 1 ] に 掲 載 さ れ た リ ス ト を ほ ば そ の ま ま 流 用 し て い る 。 転 載 を 快 諾 い た だ い た 疋 田 氏 に 謝 意 を 表 す る 。 ま た , フ ァ イ ル の 読 み 込 み バ ッ フ ア の ハ ン ド リ ン グ 方 法 は [ 文 献 幻 の 松 田 晋 氏 の 記 事 を 参 考 に し て い る 。 こ の 改 良 に よ っ て 速 度 は 飛 躍 的 に 高 ま っ た 。 筆 者 は i386 / 20MH の プ ロ セ ッ サ に EMS を の せ て い る が , 数 百 行 程 度 の ソ ー ス て 、 あ れ ば ほ と ん ど 一 瞬 に し て 候 補 シ ン ボ ル が 表 示 さ れ , 極 め て 快 適 て 、 あ る 。 C の ソ ー ス リ ス ト を List 2 に 示 す 。 こ の プ ロ グ ラ ム て 、 は 同 一 シ ン ボ ル の 重 複 を 取 り 除 く の と 予 約 語 を 除 外 す る 目 的 て 、 シ ン ボ ル 表 を 使 っ て い る 。 ま た , シ ン ボ 、 ル 表 の 探 索 に は オ ー プ ン ハ ッ シ ュ を 用 い て い る 。 予 約 語 を 表 に 入 れ る の は 予 約 語 の 判 定 に 比 較 を 繰 り 返 す の を 避 け , ロ ジ ッ ク を 単 純 に す る た め て 、 あ る 。 て ソ ー ス フ ァ イ ル か ら 切 り 出 さ れ た す べ て の シ ン ボ 、 ル は い っ た ん ハ ッ シ ュ 表 に 入 れ ら れ る 。 そ の 後 て 、 予 約 語 以 外 の す べ て の シ ン ポ ル の LCS を 計 算 す る 。 最 後 に 表 か ら LCS の 上 位 10 個 の シ ン ポ ル を 取 り 出 す 。 冒 頭 て 、 述 べ た よ う に タ イ プ ミ ス に は , 発 生 頻 度 に 一 定 の 傾 向 が あ る こ と が 知 ら れ て い る 。 そ れ を 考 慮 に 入 れ LCS に よ る 判 定 に 加 え 誤 り や す い パ タ ー ン の 近 似 度 を 高 く 評 価 す る 仕 組 み を 入 れ れ ば , よ り 実 用 的 に な る と 思 う 。 し か し プ ロ グ ラ ム が ど う 評 価 し よ う と , 最 終 的 に は ユ ー ザ が 判 断 す る わ け だ か ら , 適 当 て 、 も か ま わ な い と い う 考 え 方 も 成 り 立 つ 。 筆 者 は こ の ま ま て 、 も か ま わ な *sym; Reviced : 11 / 20 / ' 92 Written: 梓 史 郎 C の 予 約 語 は 判 定 の 対 象 と し な い 。 な お 、 pattern に は 正 規 表 現 は 指 定 で き な い 。 ま た 、 を 探 し 出 し 、 上 位 の 1 0 個 を 標 準 出 力 に 出 力 す る 。 file 中 か ら pattern に 似 て い る ワ ー ド ( シ ン ポ ル ) フ ァ イ ル は C プ ロ グ ラ ム の ソ ー ス コ ー ド を 想 定 し て い る 。 Function: pattern サ ー チ の パ タ ー ン f ⅱ e 調 べ る 対 象 の フ ァ イ ル like コ マ ン ド like file pattern Usage: main(argc, argv) Char **argv; reg i S t er i ; if (argc ! ニ 3 ) { printf("Usage: like file-name symbolYn") : ex i t ( 1 ) ; if ((in=f 叩 en(* + + argv, printf("YtCan' t open %sYn" *argv) ; ex i t ( 1) : set-rsv-words() ; make-name-table() : lcs(* 十 十 argv) ; print_winners() : ex i t ( の ; fc lose ( i n) ; / * set reserved words int0 name table * / / * picup words from file & set it intO name table * / / * calculate LCS between names in table & pattern / * print results * P i c 叩 words from f Ⅱ e & set i t i n t 0 name tabl e name table emploied simple hash method register char *p; make-name-table() char char Char Char int Char Char int Char Char *buff : *next_head; *top; *head; *tail len , : &buff[BUFF_LEN ー wordCSYM_LEN + 1] : *start; W_S ー ze : *rfind(char * , char*); *skip-to(char * , t 叩 ニ head : &buff[l]; while ((len = fread(head, next_head = rfi nd(head for (p ー top; p く next_head; 十 十 p ) { switch (*p) { case ' \ ' while ( + + p ) { i f ()p : 十 十 p ; break; and comments / * remove literals & character constants char * ) : sizeof(char), 十 len, / * find right most cr/nf tail 128 C MAGAZINE 1993 4

月刊 C MAGAZINE 1993年4月号


月 刊 情 報 処 理 試 験 の ノ ウ ハ ウ を 結 集 ! 情 報 処 理 受 験 参 考 書 ・ こ れ だ け は 知 っ て お き た い 情 報 処 理 の 基 礎 知 識 定 価 1 , 650 円 ・ 初 め て 受 験 す る 人 の た め の 情 報 処 理 入 門 1 / 2 / 3 1 ・ 定 価 1 , 240 円 3 / 定 価 1 , 400 円 ・ 情 報 処 理 技 術 者 試 験 受 験 用 語 ハ ン ド ブ ッ ク 定 価 1 , 860 円 ・ 第 2 種 情 報 処 理 技 術 者 試 験 ソ フ ト ウ ェ ア 徹 底 マ ス タ ー 定 価 2 , 500 円 ・ 第 2 種 情 報 処 理 技 術 者 試 験 ハ ー ド ウ ェ ア 徹 底 マ ス タ ー 定 価 2 , 580 円 ・ 第 2 種 情 報 処 理 技 術 者 試 験 CO L 徹 底 マ ス タ ー 改 訂 版 定 価 2 , 900 円 ・ 第 2 種 情 報 処 理 技 術 者 試 験 FORT N 徹 底 マ ス タ ー 定 価 2 , 890 円 ・ 一 石 ニ 鳥 の プ ロ グ ラ ミ ン グ 学 習 書 ! 流 れ 図 で 学 ぶ プ ロ グ ラ ミ ン グ ス 門 定 価 2 , 200 円 ・ 第 2 種 情 報 処 理 技 術 者 試 験 午 前 問 題 オ リ ジ ナ ル 演 習 18 定 価 2 , 300 円 ・ 第 2 種 情 報 処 理 技 術 者 試 験 午 後 問 題 オ リ ジ ナ ル 演 習 定 価 2 , 400 円 ・ 第 2 種 情 報 処 理 技 術 者 試 験 実 戦 模 擬 テ ス ト 定 価 2 , 200 円 ・ ア セ ン ブ ラ CASL を マ ス タ ー ! 短 期 合 格 ! ア セ ン プ ラ C 定 価 1 , 900 円 ・ 1993 年 度 第 1 種 情 報 処 理 試 験 総 整 理 と 徹 底 対 策 定 価 2 , 000 円 ・ 1993 年 度 版 第 1 種 情 報 処 理 技 術 者 試 験 問 題 集 定 価 2 , 400 円 ・ プ ロ グ ラ ム 設 計 が わ か る ! 短 期 合 格 ! プ ロ グ ラ ム t 定 価 2 , 200 円 ・ 第 1 種 情 報 処 理 技 術 者 試 験 プ ロ グ ラ ム 設 計 徹 底 マ ス タ ー 定 価 2 , 900 円 ・ お 近 く の 書 店 で お 求 め く だ さ い ・ 定 価 は 税 込 で す ソ フ ト バ ン ク 出 版 事 業 部 150 C MAGAZINE 1993 4 モ ニ タ 募 集 BORLAND C 十 十 Ver. 3 ℃ e e s , R ① ① 綴 じ 込 み 葉 書 で ご 応 募 く だ さ い QUATTRO PRO fo 「 提 供 : ボ ー ラ ン ド ( 株 ) TEL 03 ( 5350 ) 9370 BORL Å ND 0 、 FORWJNDQWS TEL 03 ( 5350 ) 9370 提 供 : ホ ー ラ ン ド ( 株 ) バ ッ ケ ー ジ ク ッ シ ョ ン Turbo C 十 十 C & C 十 十 コ ン パ イ ラ DOS 環 境 ・ Windows 環 境 の 両 方 に 対 応 し た プ ロ 1 名 3 名 様 の Windows 提 供 : ホ ー ラ ン ド ( 株 ) TEL 03 ( 5350 ) 9370 ( 希 望 メ デ ィ ア を 明 記 し て く だ さ い ) 1 名 『 COMPUTER LANGUAGEJ 提 供 : C マ ガ ジ ン 編 集 部 ! ゝ ー リ 島 弖 - の ナ D EC. PHARAOH 日 1 、 第 0 料 PER 効 と さ せ て い た だ き ま す 。 2 名 Turbo C 十 十 の パ ッ ケ ー ジ と 同 じ デ ザ イ ン の ク ッ シ ョ ン ◇ 綴 じ 込 み の 葉 書 に 必 要 事 項 ( ア ン ケ ー ト の ・ 応 募 の 注 意 る 場 合 , 綴 じ 込 み 葉 書 以 外 で の こ 応 募 は 無 ◇ 記 入 も れ や モ ニ タ 番 号 が 複 数 記 入 さ れ て い 番 号 ) を 明 記 の う え こ 応 募 く だ さ い 。 回 答 , 住 所 , 氏 名 , 電 話 番 号 , 希 望 モ ニ タ ① 巻 頭 イ ン タ ビ ュ ー ② Programming on Purpose 綴 じ 込 み 葉 書 裏 面 の き 記 事 評 価 ア ン ケ ー ト に は 右 記 の 数 字 を こ 記 入 く い 。 ③ 提 携 記 事 「 AWK は 一 味 違 っ た 言 語 だ 」 ④ 提 携 記 事 「 論 理 を 自 然 に 記 述 で き る PROLOG 」 ⑤ 提 携 記 事 「 C プ ロ グ ラ ミ ン グ の 中 で ex と yacc の 使 い 方 」 ⑩ X68k 活 用 講 座 ⑥ フ リ ー ソ フ ト ウ ェ ア 最 新 レ ポ ー ト ⑦ BOOk Review ⑧ 特 集 「 ゼ ロ か ら 学 ぶ C 言 語 入 門 」 ⑨ djgcc 詳 解 講 座 Hello GCC WorId ⑩ 実 践 ア ル ゴ リ ズ ム 戦 略 解 法 の テ ク ニ ッ ク ① 丹 羽 信 夫 の 迷 走 プ ロ グ ラ ミ ン グ ⑩ 新 MS ー DOS プ ロ グ ラ ミ ン グ 入 門 @Try The C 十 十 ◇ モ ニ タ に 選 ば れ た 方 に は , 後 日 ア ン ケ ー ト な ど の 形 式 で 編 集 に こ 協 力 い た だ き ま す 。 こ 了 承 く だ さ い 。 ◇ 締 め 切 り は 4 月 18 日 必 着 で す 。 @Readers' Room @lnformation from Compiler Makers @C マ ガ 電 脳 ク ラ ブ ⑩ フ ィ ン ロ ー ダ の あ つ ば れ ご 意 見 番 @News Square @Conference Room $ANSI C ー more $Dr. 望 洋 の プ ロ グ ラ ミ ン グ 道 場 ⑩ 三 田 典 玄 の ラ ン ダ ム ア ク セ ス ⑩ C 言 語 フ ォ ー ラ ム

月刊 C MAGAZINE 1993年4月号


セ ロ か ら 学 ぶ 集 特 い 説 明 の 途 中 て T い ま 説 明 さ れ た こ と 全 部 と 。 私 が あ な た に 期 待 し て い る こ と は こ の 覚 え な く ち ゃ な ら な い の 」 と び つ く り し て 三 つ て 、 す 。 よ ろ し い て 、 す か 。 し ま う か も し れ ま せ ん 。 専 門 用 語 も い ろ い ろ 出 て き ま す 師 の 0 厂 1 ロ ロ ス ン 」 の 構 成 文 法 も 覚 え る 必 要 が あ り ま す 。 「 c 言 語 プ ロ グ ラ ミ ン グ レ ッ ス ン 」 て 、 は 覚 え る べ き ポ イ ン ト を て 、 き る だ け は っ き り と 書 く つ も こ の 入 門 講 座 は 毎 月 次 の よ う な 章 立 て て 、 り て 、 す 。 て 、 す か ら , あ な た も 覚 え よ う , お 送 り し ま す 。 仕 事 を し な い 。 プ ロ グ ラ ム と は 仕 事 の と 努 力 し て み て く だ さ い レ ビ ュ ー コ ー ナ ー て 、 は , 前 の 月 に 学 ん だ 内 容 が 書 か れ た も の て あ る 。 プ ロ グ ラ 考 え る こ と こ と の 復 習 を 行 い ま す 。 マ が プ ロ グ ラ ム を 書 き , コ ン ヒ 。 ュ ー タ あ な た に 期 待 す る ふ た つ 目 の こ と は 「 考 え 今 月 の ポ イ ン ト て 、 は , そ の ま ま 覚 え て し は そ れ を 読 ん て 、 仕 事 を す る 。 プ ロ グ ラ る こ と 」 て 、 す 。 私 が い ろ い ろ 説 明 す る の を ま う C の 表 現 を ひ と つ か ふ た つ 紹 介 し ま す 。 ム を 書 く た め の 言 葉 が プ ロ グ ラ ミ ン グ た だ 覚 え る だ け て 、 は ( 残 念 な が ら ) 不 十 分 そ の 意 味 を 説 明 し て 実 際 に 使 っ て み ま す 。 ロ 語 て 、 あ る 。 プ ロ グ ラ ミ ン グ 言 語 に は て 、 す 。 こ の ポ イ ン ト は そ の ま ま 覚 え て し ま い ま し い ろ い ろ な 種 類 が あ る カ ℃ 言 語 は そ の 中 「 そ れ は な ぜ だ ろ う 」 て 、 も よ く 使 わ れ る 言 語 て あ る 。 」 「 本 当 に そ う だ ろ う か 」 バ リ エ ー シ ョ ン て 、 は , 今 月 の ポ イ ン ト て 、 ー ト 2 て 、 話 し た 内 容 は 以 下 の よ う な こ と 「 あ れ と こ れ は ど こ が 違 う の だ ろ う 」 覚 え た C の 表 現 を い ろ い ろ と 書 き 換 え て 練 習 て 、 す 。 こ う い う 問 い か け を 自 分 自 身 て 、 行 っ て , し ま す 。 応 用 編 と い っ た と こ ろ て す 。 「 プ ロ グ ラ マ は エ デ イ タ を 使 っ て ソ ー ス よ く 考 え て く だ さ い 。 不 思 議 な こ と に 考 工 ク セ サ イ ズ て 、 は , 日 本 語 て 、 書 か れ た 問 プ ロ グ ラ ム を 書 く 。 書 い た ソ ー ス プ ロ え れ ば 考 え る ほ ど 覚 え る こ と も 楽 に な っ 題 を プ ロ グ ラ ム の 形 に 作 り 上 げ る 練 習 を し グ ラ ム を コ ン パ イ ラ を 使 っ て コ ン パ イ て く る も の て 、 す 。 「 記 憶 は 元 金 を 増 や し , ま す 。 ル す る と , コ ン ピ ュ ー タ 上 て 動 作 す る 思 考 は そ れ を 複 利 で 増 や す 」 の て 、 す 。 答 え ミ ス テ ィ ク て 、 は , 今 月 の ポ イ ン ト に 関 係 プ ロ グ ラ ム ( 実 行 フ ァ イ ル ) が て き あ が は す ぐ に 見 つ か る か も し れ ま せ ん し , し た プ ロ グ ラ ム の 間 違 い を 集 め ま す 。 い わ る 。 今 月 号 の 付 録 デ ィ ス ク に は 「 SE3 」 と 年 後 に 見 つ か る か も し れ ま せ ん 。 け れ ど ば 間 違 い 探 し ク イ ズ て 、 す 。 い う エ デ イ タ と 「 LSI C ー 86 Ver. 3.30 試 も た い せ つ な こ と は あ な た が 自 分 て 、 積 極 ハ イ グ レ ー ド て 、 は , 今 月 の ポ イ ン ト に か 食 版 」 と い う コ ン パ イ ラ と が 収 録 さ れ て 的 に 考 え よ う と す る こ と な の て 、 す 。 ら め て , 難 し い 話 を ち ょ っ ぴ り し ま す 。 い る 。 こ れ は イ ン ス ト ー ル と い う 作 業 や っ て み る こ と の 部 分 は 必 ず し も 今 わ か ら な く て も か ま い を 行 う と 自 分 の コ ン ピ ュ ー タ て 、 使 う こ あ な た に 期 侍 す る こ と の 三 番 目 は , 学 ん ま せ ん 。 と が て 、 き る 。 実 際 に 小 さ な プ ロ グ ラ ム こ と を 実 際 に コ ン ヒ 。 ュ ー タ を 使 っ て 「 や 今 月 の ツ ー ル て 、 は , 毎 月 簡 単 な ツ ー ル を を 書 い て 試 し て み よ う 。 」 っ て み る こ と 」 て 、 す 。 「 覚 え る 」 「 考 え る 」 は 作 り ま す 。 こ て す て に , 普 段 の 生 活 て は 使 わ な い ど ん な 勉 強 に も 必 要 な こ と て 、 す 。 し か し ち ょ っ と 能 書 き が 長 く な っ て し ま い ま し コ ト バ が ポ ン ポ ン 出 て き て い ま す ね 。 プ ロ こ の 三 番 目 の 「 や っ て み る 」 は コ ン ヒ 。 ュ ー た 。 そ れ て 、 は さ っ そ く 今 月 の 「 レ ッ ス ン 」 を グ ラ ミ ン グ 言 語 だ の コ ン パ イ ル だ の 。 慣 れ タ の 勉 強 て は と く に 重 要 て 、 す 。 先 ほ ど 「 コ 始 め ま し よ う 。 な い う ち は こ れ ら の 用 語 に ア レ ル ギ ー を 起 ン ピ = ー タ を 持 っ て い る こ と が 望 ま し い 」 こ し て , や だ な , と 思 い が ち な も の て す 。 と い っ た の も そ う い う 意 味 か ら て 、 す 。 私 も コ ン ピ ュ ー タ を 学 び た て の こ ろ は そ う ー コ ー ナ ー 本 誌 に は 付 録 と し て ソ ー ス リ ス ト が 収 め て し た 。 け れ ど も そ こ て め げ な い て く だ さ ら れ た フ ロ ッ ヒ 。 ー デ ィ ス ク が 付 属 し て き ま す か ら , コ ン ピ ュ ー タ を 持 っ て い れ ば 先 月 の 復 習 を す る レ ビ ュ ー コ ー ナ ー て す 。 「 コ ン パ イ ル 」 と い わ れ て も す ぐ に は ピ ン そ こ か ら 直 接 プ ロ グ ラ ム を 入 手 て 、 き , 自 今 回 は 特 集 の パ ー ト 1 , パ ー ト 2 の 内 容 を 復 と こ な い の は 当 た り 前 て 、 す 。 い ま か ら 一 年 分 の 目 て 、 動 作 を 確 認 す る こ と が て 、 き ま す 。 習 し ま し よ う 。 か け て ヒ 。 ン と く る よ う に す る の が こ の 連 載 こ れ は 学 ぶ う え て 、 非 常 に た い せ つ な こ と ー ト 1 て 話 し た 内 容 は 以 下 の よ う な こ と の 目 的 な の て 、 す か ら 。 た だ 言 葉 の 字 面 に は て す 。 て す 。 慣 れ て お く よ う に し ま し よ う 。 : 覚 え る こ と , 考 え る こ と , や っ て み る こ 「 コ ン ヒ 。 ュ ー タ は プ ロ グ ラ ム が な け れ ば 「 エ デ イ タ を 使 っ て プ ロ グ ラ ム を 書 く 」 特 集 ゼ ロ か ら 学 ぶ C 言 語 入 門 51 List 今 月 の ポ イ ン ト 八 ロ ー ワ ー ル ド #include く stdio. h> ma i n ( ) P r i n t f ( " He Ⅱ 0 , ⅵ d. %n " ) ;

月刊 C MAGAZINE 1993年4月号


も こ の 方 法 を 変 え て い ま せ ん 。 お も し ろ い こ と に , 第 一 世 代 の シ ス テ ム は す べ て こ う し て 動 い て い た の て 、 す 。 ち な み に , 第 一 世 代 と は , 工 ン ジ ニ ア リ ン グ チ ー ム が 初 め て ID の 参 照 解 除 に 取 り 組 ん だ シ ス テ ム と い う こ と て 、 す 。 第 一 世 代 ア ー キ テ ク チ ャ Ontos 社 や Servio Technology 社 な ど の べ ン ダ は 第 一 世 代 の ア ー キ テ ク チ ャ に 縛 ら れ て し ま っ て い る の で し よ う か ? ま た , 今 後 の 技 術 に 適 応 し て い く こ と は で き る の で す か 。 Atwood ま あ , 最 初 に 始 め た 会 社 と い う の は , 一 度 間 違 い を 犯 し て し ま っ た ら , あ と て 、 軌 道 修 正 す る こ と は 難 し い て 、 し よ う 。 す で に 第 一 世 代 の 技 術 を ベ ー ス に し て い る た め に , 身 動 き で き な い 状 態 だ と ? Atwood そ う て 、 は な く , シ ス テ ム 内 部 の ア ー キ テ ク チ ャ を 定 義 し 直 す ほ ど , 時 間 的 に 余 裕 が な い と い う こ と て 、 す 。 何 し ろ と て も し か し , そ れ て 、 も す べ て 解 決 と い う わ け 競 争 の 激 し い 業 界 な の て 、 , 既 存 の べ ー ス に こ の こ と か ら , オ プ ジ ェ ク ト を ひ と つ ひ に は い き ま せ ん 。 こ う や っ て デ ィ ス ク か ら 改 良 を 加 え る こ と は と て も 困 難 て 、 す 。 た と え ば メ モ リ に 効 率 よ く 転 送 し た と し て も , メ モ 初 期 の ア ー キ テ ク チ ャ に は , ハ ー ド 側 て 、 と っ メ モ リ に 入 れ る の て 、 は な く , リ の 中 の オ プ ジ ェ ク ト を ど う や っ て 行 き 来 10 , 000 個 を 同 時 に 入 れ る べ き だ と い う 教 訓 長 い オ プ ジ ェ ク ト ID へ の 参 照 を 解 除 て 、 き る を 得 ま し た 。 こ の 方 法 は ひ と つ だ け て 、 は あ す る の か と い う 問 題 が 残 っ て い ま す 。 と い う 利 点 が あ り ま し た 。 問 題 は , そ れ が り ま せ ん 。 大 量 の オ プ ジ ェ ク ト を 取 り 出 し , 先 ほ ど も い っ た よ う に , 私 た ち は シ ン グ オ ペ レ ー テ ィ ン グ シ ス テ ム の 開 発 者 に よ っ ル ユ ー ザ 向 け の ア プ リ ケ ー シ ョ ン と 同 じ 速 て 書 か れ た こ と て 、 , そ の 人 た ち は オ プ ジ ェ 各 要 素 の 一 貫 性 を 保 つ よ う , 一 種 の 閉 鎖 処 度 て 、 , デ ー タ 構 造 の 特 定 ノ ー ド か ら 別 の ノ ク ト は フ ァ イ ル だ と 思 い , す べ て の オ プ ジ 理 を 行 う こ と も て 、 き ま す 。 ー ド へ と ひ と つ の 命 令 て 、 移 れ る よ う に す る し か し , こ の オ プ ジ ェ ク ト を ど こ て 、 切 る ェ ク ト 参 照 に 間 違 い を 犯 し て し ま っ た こ と を 目 指 し て い る の て 、 す 。 残 念 な こ と に か は , た と え ド キ ュ メ ン ト て 、 も そ う 簡 単 て 、 て 、 す 。 こ れ は 容 易 に 想 像 て 、 き ま す 。 も は や ハ ー ド 側 て 、 長 い オ プ ジ ェ ク ト ID の 参 は あ り ま せ ん 。 と い う の も , ド キ ュ メ ン ト フ ァ イ ル を メ モ リ に 入 れ る の は 20 ~ 30 ミ 照 を 解 除 す る こ と は て 、 き な い の て 、 , ソ フ ト は オ ー サ ー と Postscript の 形 式 て 、 表 現 さ れ る リ 秒 て 、 済 み ま す 。 と こ ろ が , シ ス テ ム ソ フ ウ ェ ア て 、 行 う し か あ り ま せ ん 。 の て 、 , ど こ て 、 切 れ ば よ い か 迷 っ て し ま う か ト を 書 い て い た 人 た ち は , こ の オ プ ジ ェ ク 従 来 は , 2 レ ベ ル の ハ ッ シ ュ テ ー プ ル を 使 ら て 、 す 。 も う ひ と つ の 方 法 は , メ モ リ に セ ト ソ フ ト の す ば ら し さ に 感 心 し て , 非 常 に っ て 32 ビ ッ ト の オ プ ジ ェ ク ト ID を 参 照 し , グ メ ン ト を マ ッ プ す る 方 法 て 、 す 。 セ グ メ ン 小 さ な オ プ ジ ェ ク ト に い た る ま て 、 , ま っ た セ グ メ ン ト を 示 す ポ イ ン タ を 得 て か ら , 今 ト は 100 ペ ー ジ て 、 も け っ こ う て 、 す し , ド キ ュ く 同 じ 方 法 て 、 や ろ う と し た の て 、 す 。 あ と て 、 度 は 次 の 32 ビ ッ ト を 取 り 出 し , オ プ ジ ェ ク メ ン ト 全 体 は 1 万 ペ ー ジ て 、 も 10 万 ペ ー ジ て 、 も シ ス テ ム ソ フ ト を 検 査 し た と こ ろ , オ プ ジ ト テ ー プ ル を 介 し て そ の 32 ビ ッ ト を 細 か く か ま い ま せ ん 。 し た が っ て , 100 ペ ー ジ の 中 ェ ク ト の サ イ ズ が す べ て 6 ワ ー ド て 、 あ る た め 切 る こ と て , そ の オ プ ジ ェ ク ト へ の ポ イ ン に は 膨 大 な 数 の オ プ ジ ェ ク ト が 収 め ら れ て に , シ ス テ ム は 奇 数 の ミ リ 秒 ご と , も し く ト に し て い た わ け て 、 す 。 は 6 ワ ー ド ご と に 異 常 を き た す こ と が わ か り い る こ と に な り ま す 。 12 C MAGAZINE 1993 4