I've been following with interest the discussion on how to explain Monads to people. The thing I seem to get hung up on the most is notation. Most of the explanations are rendered in Haskell, which I am not familiar with. I understand the general concepts, but not the details of the syntax, which makes the explanations and examples hard to parse.My question is: is it possible to render and/or expl
Here they are: most of the CS textbooks I have ever written. Full text, freely available, plus machine-readable code. I think that modern IT is more in the problem domain than in the solution domain, i.e.: it has stopped contributing anything beneficial to humanity and is mostly used to cause suffering now. You may think otherwise, though. So go ahead, download my works. Maybe one of them turns ou
わたし的棚ぼた一万円選書 急に千葉さんに手渡された封筒、開けてみたら1万円札が1枚。何ごとかと思えば、同期の出張を代わったお礼をもらったらしい。 「葵はワンオペで育児してくれたから」と半分わけてくれました。 泡銭の1万円 これはもう、わたし的1万円選書をしろという思し召しなのでは……
再び多値関連の小ネタです。 PLT Scheme のあるライブラリを見ていて、こんな values の使い方を発見しました。 (filter values (list ...))一瞬 values が再定義されているのかな?と思って辺りを探したんですが何も無く、試しにやってみると > (filter values '(1 2 #f 3 4 #f 5)) (1 2 3 4 5)おお。 > (map values '(1 2 #f 3 4 #f 5)) (1 2 #f 3 4 #f 5)なるほど。 前回驚いた時と同様、「多値」イコール「2つ以上の値」という固定観念から抜け出せていなかったようです。このように1つの値に適用された場合は、ただの恒等関数 (\x = x) として機能するわけですね。 じゃぁ0値の場合はどうなるんでしょうか? > (values) >REPL での見かけ上は void
PLT Scheme のレファレンス・マニュアルを読んでいてちょっと驚いたことがあるので書きます。 compose 関数で合成する関数の中に、多値を返す関数を入れられるんですよ: (map (compose list split-path path->complete-path) (directory-list)) ; => ((#<path:C:\home\desktop\> #<path:onlisp.pdf> #f) ...)(split-path が多値を返す関数です) もしかして Scheme では普通なんでしょうか? どうやっているのか気になって、compose の定義 (collects/scheme/private/list.ss 内) を調べてみると (compose f g)とある時に、f の引数の数を procedure-arity という関数で調べ、それが 1 でな
すべての Microsoft 製品 Global Microsoft 365 Teams Copilot Windows Surface Xbox セール 法人向け サポート ソフトウェア Windows アプリ AI OneDrive Outlook Skype OneNote Microsoft Teams PC とデバイス Xbox を購入する アクセサリ VR & 複合現実 エンタメ Xbox Game Pass Ultimate Xbox Live Gold Xbox とゲーム PC ゲーム Windows ゲーム 映画とテレビ番組 法人向け Microsoft Cloud Microsoft Security Azure Dynamics 365 一般法人向け Microsoft 365 Microsoft Industry Microsoft Power Platform W
The Explorer The Adventures of a Pythonista in Schemeland/7 by Michele Simionato October 21, 2008 Summary In this installment I pave the way to the heart of Lisp, i.e. to the famous *code is data* concept. In order to do that, I will have to introduce two fundamental data types first: symbols and lists. SymbolsScheme and Lisp have a particular data type which is missing in most languages (with the
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く