yosaka


略歴

大学時代にC言語をはじめるが、よくわからず挫折。
その後、Rubyを知り簡単なスクリプトを書くようになる。
関数型言語を勉強したくなりHaskellをやったが、よくわからず。 ;Haskellも勉強し直し中
その後、たまたま本屋でみょーに口と目が大きい魚の表紙のオライリー本を見かける。その本はプログラミングGaucheというらしい。
自宅に帰って、wikiで調べると何か凄いらしいとわかり、後日購入。
その後は、ほとんどGaucheでコードを書くようになる。
コンピュータ関係は本当に勉強することが一杯あるなー。
これだけでも一生やっていけそうだ。


perl

perl入門してみる。
cpanが楽しみ。


C言語

プログラミング言語Cとプログラミング作法を読み終えた。
Cは良い言語。
そういえば、どっかで読んだけどCのインデントが8なのは、ネストを深くしてはいけないという教訓から来ていると書いてあったんだけど、どうなんだろ?


haskell

プログラミングHaskellを読み終えた。
RWHは7章まで読んだ。
haskellはボトムアップというより、トップダウンな感じがする。
だけど、保守にはコストがかからないだろうな。


gaucheでスクレイピングしたときの覚書

必要なライブラリ

htmlprag.scmは壊れているhtmlでも読み込んでshtmlやsxmlに変換できる。htmlパーザ!
rfc.httpは、http-getでサイトからページを取得するために必要。
sxml.sxpathは、htmlpragで変換したshtmlやsxmlの各要素や属性などを検索するために使う。
gauche.charconvはUTF-8以外の文字コードを扱うために使う。

 (use rfc.http)
 (use sxml.sxpath)
 (use gauche.charconv)
 (load "~/lib/scheme/htmlprag.scm")
 
;; http-getでページを取得して、文字コードを自動判定してUTF-8にする。 (define *html* (ces-convert (values-ref (http-get "practical-scheme.net" "/") 2)) "*JP"))
;; htmlをshtmlに変換 (define *shtml* (html->shtml *html*))
;; sxpathでアンカーテキストを探す (define *anchor-text* ((sxpath "//a/text()") *shtml*))
;; *anchor-text*を表示 (for-each print *anchor-text*)

最終更新 : 2016/02/29 01:01:53 UTC