ときどきの雑記帖 RE* (新南口)
memento mori
半袖のシャツを全部しまった
結局、 半分だけしまった日からはあまり半袖を着なかったので 半分と言わずもうちょっとしまっておいてもよかった (人生そんなもん)。
Noise
という本を読んでいる(いた)のだけど、 その下巻の p.132に
だから、一つの仕事だけに注目して評価するのは正しくないし、 歪んだインセンティブを与えることになりかねない。 (中略) たとえば営業担当者の売り上げやプログラマーの書いたコード行数といった 数値指標はあるにしても、こうした数字は額面通り受け取らず、 なんでも気前よく買ってくれる顧客の多い地区を担当しているとか、 非常に条件の厳しいプログラムを請負ったなど、状況を考慮する必要がある。
というのがあって
喫茶店
家からかなり近いところに喫茶店があることに改めて気がつく。 メジャーなチェーン店などではないので 実際に入ってみないどんな店なのかよくわからんけど、 論文読めるような雰囲気だといいなあ。
仮面ライダーX
無印、V3と続いたMXでの仮面ライダー放送が今週(10/21)からXに。
V3になってから(なんなら無印の終盤でも) かなり「もやもや」するところがあったんだけど 当時はどう観てたんだろうなあ自分🤔
渋谷
あそこもなくなるのかあ。
確か「電人ザボーガー」とか「父親たちの星条旗」「硫黄島からの手紙」 「立喰師列伝」なんかはここで観たはず。 最近はご無沙汰だったなあ。
建て替え前まで含めると ファーストガンダムの3部作、イデオン、逆襲のシャアなども。
Modula-2
gpc (Pascal)の開発が止まってるよね という話は以前に書いたけど、 Modula-2がGCCに入るとかいう話を見てびっくり。
Modula-2 GCC Compiler Front-End Patches Sent Out for Review: https://t.co/LFqayc7jNq Comments: https://t.co/fn4HIAvs9Y
— Hacker News (@HNTweets) October 15, 2022
実は結構好きだったりするのよ>Modula-2
ただまあこの時代にどうなのかとか コンパイラーのフロントエンドだけで リンカーなどはそのままで大丈夫なのか などとは思うのだけど。
- Modula-2 GCC Compiler Front-End Patches Sent Out for Review | Hacker News
- Modula-2 GCC Compiler Front-End Patches Sent Out For Review - Phoronix
- [PATCH] 0/19 modula-2 front end patches overview
GNU grep
なんかよくわからんタイトルだなあと思ったので(ry
We are stuck with egrep and fgrep (unless you like beating people)
ん-。
本文もところどころ気になる箇所があるけどまあ。
verse
Haskell (GHC) 開発者 Simon Peyton Jonesインタビュー。彼は21年間勤めたMicrosoft Researchを去り、Epic (ゲーム会社)でVerse言語の開発にたずさわる。この言語はいずれ Unreal Engine 5に搭載される予定。https://t.co/VnPXkAmLMq
— 新山祐介 (Yusuke Shinyama) (@mootastic) October 16, 2022
へーと思いつつ Simon Peyton Jones を見ると
Recorded 2022-02-01. Published 2022-03-25.
ちょっと前の配信だったんですね。 おそらく新山さんの今回のネタ元はHNだと思うんだけど (このツイートの後に見つけた)、 時間差があってスレッドが立つのは割とよくある話>HN(に限らんか)
んで、
Transcript
もあったりするのがありがたい。 そしてVerseってどんなの? というところなんだけど 正直よくわからん😄
ブループリントがなくなるということはないでしょうけど、おそらくUE5には"Verse"という完全オリジナルで非常にモダンなスクリプト言語が追加されることが既に情報として出ていますね。https://t.co/uXhCbbHokV https://t.co/JnjDNFMgPQ
— alwei (@aizen76) May 29, 2021
Looks like @EpicGames is bringing scripting to @UnrealEngine. They showed it off working with @FNCreate on today's livestream, so UE5 support is likely. It is a completely new programming language and it might be called Unreal Verse. pic.twitter.com/6EybTsrctk
— Saji (@saji8k) December 17, 2020
- Interview with Simon Peyton Jones about new Verse Language developed by Epic, his job at EpicGames related to Verse and many Haskell related topics. : programming
- Verse, the new unreal scripting language - General / Feedback for Unreal Engine team - Unreal Engine Forums
- UnrealVerseGuru | Epic Developer Community
- Any word on “Unreal Verse” scripting language? : unrealengine
podcast Haskell Interlude の他の回のゲストも見てみたけど すみませんほとんど存じ上げませなんだ。
構文塩
"Syntactic salt (構文塩衣?)" という考え。Syntactic sugarがコードを書きやすくするのに対して、こちらは間違ったコードを書きにくくする。たとえば型宣言や if文の"}" のかわりに "end if"など。また実際の塩と同様、プログラマの血圧を不健康なやり方で上げる働きをもつ。https://t.co/t8TMzUH5tm
— 新山祐介 (Yusuke Shinyama) (@mootastic) October 18, 2022
ハッカーズ大辞典
だと 「構文塩」という訳になっていたと思う>syntactic salt
調べてみたらうぃきぺにもちょこっと。
糖衣構文はプログラムの意味としては同じものを、よりわかりやすい構文で書けるものである。 ジャーゴンファイルの syntactic sugar の項[3]では、アラン・パリスの「構文糖はセミコロンのガンをひきおこす」 という言を引用[4]している(ジャーゴンファイルのこの記述は、そのひとつ前の項目である「構文塩」 (syntactic salt) の項[5]にある「構文塩は不健康にプログラマの血圧を上げる」という記述と対応していて、 colon cancer(結腸癌)とセミコロンを掛けてもいる。
goawk
benhoyt/goawk: A POSIX-compliant AWK interpreter written in Go, with CSV support をちょっと眺めてみた。 Goは(まだ)よくわからんのだけど
goawk/value.go at master · benhoyt/goawk
const (
typeNull valueType = iota
typeStr
typeNum
typeNumStr
)
// An AWK value (these are passed around by value)
type value struct {
typ valueType // Type of value
s string // String value (for typeStr and typeNumStr)
n float64 // Numeric value (for typeNum)
}
のように、数値(typeNum)と文字列(typeNumStr)に加えて numeric stringもあるようだ。 そして
goawk/interp.go at master · benhoyt/goawk
// Set up ARGV and other variables from config
argvIndex := p.program.Arrays["ARGV"]
p.setArrayValue(ast.ScopeGlobal, argvIndex, "0", str(config.Argv0))
p.argc = len(config.Args) + 1
for i, arg := range config.Args {
p.setArrayValue(ast.ScopeGlobal, argvIndex, strconv.Itoa(i+1), numStr(arg))
}
のように外部からのデータをnumStrとして扱っている (POSIXにある条件全部を確認してはいない)。
Rustはもっとわからないんだけど
rusty_awk/awkval.rs at master · kat0h/rusty_awk
// 比較のルール
// 両方が数字 -> 数値として比較する
// それ以外 -> 文字列に変換して比較する
// POSIXの記述は誤りです
//
えーと…
readme.mdでも同様の記述があるけど、 POSIXとgawk、nawkの仕様が違う(それも勘違いなんだけど) としても そこから「POSIXの記述は誤り」 としちゃうのはねえ・
- expr.rs
- main.rs
- def.rs
rusty_awk/def.rs at master · kat0h/rusty_awk
#[derive(Debug, PartialEq, Clone)]
pub enum AWKVal {
Num(AWKFloat),
Str(AWKStr),
None,
}