標準愚痴出力

個人的なIT作業ログです。もしかしたら一般的に参考になることが書いているかもしれません(弱気

2018-07-01から1ヶ月間の記事一覧

手短なクロージャーの説明を考えてみた。

関数の中で関数を定義できる 子関数は親関数のローカル変数を参照できる 子関数は親関数の外部にも放り出せて、そこでも親関数のローカル変数を参照できる ただし、子関数が定義された時点で見えていた変数のみ

「git new」コマンドをでっち上げる(Windowsでgitのサブコマンドを作る)

git

自分の場合、新規レポジトリを作る際、いつも定番的に実行しなければいけない作業がある git init 最初に空コミット作成 改行コード変換の無効設定 日本語ファイル名はそのまま表示させる メールアドレス等の設定 次の記事によると、「git-XXXX」という実行…

github の Releases のダウンロード数を curl と jq でお手軽に調べたいッ

次のような API があるようだ。 Releases | GitHub Developer Guide → List releases for a repositor 「GET /repos/:owner/:repo/releases」の意味が分かりにくいが、「:owner」と「:repo」を、レポジトリのオーナー名とレポジトリ名に置き換えればよいよう…

自前の io.* ライブラリを構築中

nyagos内蔵Luaで「lua_e "for line in io.lines() do print(line) end" < FILE」が FILE から読み込めない - 標準愚痴出力 ファイルまわりはシェル本体との密接な連携が必要なので、結局、io.* 以下の関数を全部自前バージョンで置き換えることにした。 最初…

例外がエラー戻り値よりも使いにくいシーンの例(説明用)

Go言語は例外がないのでアウトという人が多いわけですが、自分は「例外が取り扱いにくいシーン」というものを経験しているので、その点は実は肯定的なんですよね。 たとえば、コンストラクタで「様々な例外」が発生する時、下手に try の範囲を広げると「予…

nyagos内蔵Luaで「lua_e "for line in io.lines() do print(line) end" < FILE」が FILE から読み込めない

lua function can not read from STDIN redirected. · Issue #323 · zetamatta/nyagos うん、標準入力をうまいこと GopherLua 内の標準入力にアサインできていないせい で、GopherLua の開発元に相談してみた。 How to do io.input( <*os.File instance crea…

つらい、さすがの reflect も構造体の非公開フィールドに値を無理やりセットする用途には使えないかー

go

package main import ( "reflect" ) type privateOne struct { m1 string m2 string } func sub(from interface{}) interface{} { t := reflect.ValueOf(from).Elem().Type() obj := reflect.New(t) p := obj.Elem() p.Field(0).SetString("foo") p.Field(1)…

CSV を「安全」に Excel に読み込む Go プログラムを書いたー(pipe2excel.exe)

5/2 が「5/2」でなく、日付と解釈されて「5月2日」になってしまう =1+2 が「=1+2」ではなく、計算されて「3」になってしまう 関数まで実行されてしまうので、脆弱性となってしまう これを解決するには勝手に変な解釈がされないように、あくまで「文字列」と…