万年素人からHackerへの道

万年素人がHackerになれるまで殴り書きするぜ。

  • ・資産運用おすすめ
    10万円は1000円くらい利益
    資産運用ブログ アセマネ
    • ・寄付お願いします
      YENTEN:YYzNPzdsZWqr5THWAdMrKDj7GT8ietDc2W
      BitZenny:ZfpUbVya8MWQkjjGJMjA7P9pPkqaLnwPWH
      c0ban:8KG95GXdEquNpPW8xJAJf7nn5kbimQ5wj1
      Skycoin:KMqcn7x8REwwzMHPi9fV9fbNwdofYAWKRo

    CommonLisp Mac初める WebサーバWoo

    Lispはいろんなのがあるけど、sbclにした。 Common LispのWebサーバ「Woo」がだから。

    依存系のインストール(面倒なのでbrew

    brew install libev
    brew install sbcl

    パッケージ管理?QuickLispのインストール

    quicklisp.lisp がDLされ、それがあるフォルダで行う

    curl -O http://beta.quicklisp.org/quicklisp.lisp 
    sbcl --load quicklisp.lisp

    そのあとで、SBCLを起動

    sbcl

    その起動内したターミナルで初期化 ※~/quicklisp/setup.lisp"にはすでに入ってるっぽい。

    (load "~/quicklisp/setup.lisp")
    (ql:add-to-init-file)
    

    これで晴れてqlコマンドが実行できる。

    Wooのインストール

    (ql:quickload :woo)
    
    [package woo.ev.event-loop].......................
    [package woo.ev.condition]........................
    [package woo.ev.util].............................
    [package woo.ev.socket]...........................
    [package woo.ev.tcp]..............................
    [package woo.ev]..................................
    [package woo.response]............................
    [package woo.queue]...............................
    [package woo.specials]............................
    [package woo.worker]..............................
    [package woo.signal]..............................
    [package woo]....
    (:WOO)

    となればインストールされたっぽい。

    一旦SBCKから抜けて、

    hello_world.lispのファイルに書く

    (ql:quickload :woo)
    
    (woo:run
      (lambda (env)
        (declare (ignore env))
        '(200 (:content-type "text/plain") ("Hello, World"))))
    

    起動

    sbcl --load hello_world.lisp

    起動できる。

    5000がデフォルトのポートらしいので、

    http://localhost:5000 にアクセスすると、"Hello World"と表示される。