12.08
Tue
ningleつかっててhttpsで通信させたいなーとおもって,
clackのコードとか見てたんですけど、少なくともバックエンドにhunchentootを使ってる時は簡単にできました。
こんな感じです。
clackupするときに、秘密鍵と証明書の設定をすればいいだけです。
ほかの、サーバをバックエンドに使う時とかどうなのかなーとか
おもってたらclackのissueで議論されてました。
HTTPS support via SSL
clackのコードとか見てたんですけど、少なくともバックエンドにhunchentootを使ってる時は簡単にできました。
こんな感じです。
clackupするときに、秘密鍵と証明書の設定をすればいいだけです。
ほかの、サーバをバックエンドに使う時とかどうなのかなーとか
おもってたらclackのissueで議論されてました。
HTTPS support via SSL
11.09
Mon
ansibleでサーバを管理しだしました。
すごいわかりやすくていい感じです。
簡単な例をメモしておきます。
apacheをインストールしてデフォルトでできる設定ファイルを置き換える例です。
置き換え先のファイルが置き換え元と違う場合はnotifyされてhandlerに書いてあることを実行できるみたいです。
たとえばapacheを再起動してます。
実行するには、管理用の端末からansible-playbookコマンドを叩けばいいです。
こんな感じに。 ansible-playbook -K -i ansible_hosts playbook.yml
sudoをyesにしてるので-Kが必要で、ansible_hostsにはtestserverとか書いてるホスト定義が書いてあります。
すごいわかりやすくていい感じです。
簡単な例をメモしておきます。
apacheをインストールしてデフォルトでできる設定ファイルを置き換える例です。
置き換え先のファイルが置き換え元と違う場合はnotifyされてhandlerに書いてあることを実行できるみたいです。
たとえばapacheを再起動してます。
実行するには、管理用の端末からansible-playbookコマンドを叩けばいいです。
こんな感じに。 ansible-playbook -K -i ansible_hosts playbook.yml
sudoをyesにしてるので-Kが必要で、ansible_hostsにはtestserverとか書いてるホスト定義が書いてあります。
おひさしぶりです
来春からネットワークをいじるようになると思うので、
勉強のためにL3スイッチとルータを買いました。
購入したもの

CentreCOM 9424T/SP-E と RTX1200
あと,PCとつなぐためのシリアルケーブルも持っていなかったので購入しました。
RTX1200に使うD-sub9 メス-メスのクロスケーブル
KRS-403XF3K
シリアルポートとか無いので、USBに変換. USB - D-sub9オス
BSUSRC0610BS
スイッチに使うきしめんケーブル
RJ45-DB9
これで設定できてます。
環境はLinuxMintですが普通につないだら/dev/ttyUSB0とかができて認識されました。
シリアル通信用のターミナルにはminicomを使ってます。
来春からネットワークをいじるようになると思うので、
勉強のためにL3スイッチとルータを買いました。
購入したもの

CentreCOM 9424T/SP-E と RTX1200
あと,PCとつなぐためのシリアルケーブルも持っていなかったので購入しました。
RTX1200に使うD-sub9 メス-メスのクロスケーブル
KRS-403XF3K
シリアルポートとか無いので、USBに変換. USB - D-sub9オス
BSUSRC0610BS
スイッチに使うきしめんケーブル
RJ45-DB9
これで設定できてます。
環境はLinuxMintですが普通につないだら/dev/ttyUSB0とかができて認識されました。
シリアル通信用のターミナルにはminicomを使ってます。
もう半年も時間が経ってしまっていたみたいなんですが、
TAPLを読んでた時に作っていた静的型付けで型推論のある関数型言語について書きます。
リポジトリ: https://github.com/moratori/protolang
実装に関してはとても単純です。
構文解析をyaccでやって、Commmon Lispのオブジェクトに変換します。
で、それに対して型推論と静的型検査をしてエラーがなければ、Common Lispのソースコードに変換します。
なのでコンパイルとか実行時の話は全部Common Lisp側の処理系(SBCLを意図)に任せられます。
使い方とかですが
SBCLをインストールしquicklispを入れてください
~/.quicklisp/local-projects とかで
git clone https://github.com/moratori/protolang.git してください.
あとはSBCLのREPLで
(ql:quickload :protolang)
(protolang::main)
してください
そうすると以下のようにつかえるとおもいます
>>> 1+2
3 : Integer
>>> [x] -> x+1
([x] -> +[x,1]) : (Integer -> Integer)
>>> def fact [n] -> if (n == 0) 1 n * fact[n-1]
fact : (Integer -> Integer)
>>> def search[f,n] -> if f[n] n search[f,n+1]
search : ((Integer -> Boolean) -> (Integer -> Integer))
>>> fact[search[[x] -> (x % 23) == 4 , 30]]
30414093201713378043612608166064768844377641568960512000000000000 : Integer
これを元にまともに使える言語を作りたいなーとかおもってるんですけどいつになるかわからないです笑
TAPLを読んでた時に作っていた静的型付けで型推論のある関数型言語について書きます。
リポジトリ: https://github.com/moratori/protolang
実装に関してはとても単純です。
構文解析をyaccでやって、Commmon Lispのオブジェクトに変換します。
で、それに対して型推論と静的型検査をしてエラーがなければ、Common Lispのソースコードに変換します。
なのでコンパイルとか実行時の話は全部Common Lisp側の処理系(SBCLを意図)に任せられます。
使い方とかですが
SBCLをインストールしquicklispを入れてください
~/.quicklisp/local-projects とかで
git clone https://github.com/moratori/protolang.git してください.
あとはSBCLのREPLで
(ql:quickload :protolang)
(protolang::main)
してください
そうすると以下のようにつかえるとおもいます
>>> 1+2
3 : Integer
>>> [x] -> x+1
([x] -> +[x,1]) : (Integer -> Integer)
>>> def fact [n] -> if (n == 0) 1 n * fact[n-1]
fact : (Integer -> Integer)
>>> def search[f,n] -> if f[n] n search[f,n+1]
search : ((Integer -> Boolean) -> (Integer -> Integer))
>>> fact[search[[x] -> (x % 23) == 4 , 30]]
30414093201713378043612608166064768844377641568960512000000000000 : Integer
これを元にまともに使える言語を作りたいなーとかおもってるんですけどいつになるかわからないです笑








