Line 1: Error: Invalid Blog('by Esehara' )

または私は如何にして心配するのを止めてバグを愛するようになったか

>> Zanmemo

あと何かあれは 「esehara あっと じーめーる」 か @esehara まで

Jupyter Notebook + RISE でスライド作ってトークしてきたというお話

今日の料理 Cookdo麻婆豆腐と手作り麻婆豆腐の自炊戦争が行なわれてから十数年たつが、正直Cookdoの麻婆豆腐の味は忘れてしまった。とはいえ、あらためてCookdoで作る気にはならんなー、ということで、丸善屋の麻婆豆腐の素を手にいれて作った。 メリットと…

YAPC8oji用に80枚まで作ったけど、没になったスライド 「プログラミング言語処理入門以前」 を公開します

今日の料理 はじめました。 没になったスライド プログラミング言語処理入門 (YAP(achimon)C::Asia Hachioji 2016 没スライド) from Esehara Shigeo 理由 YAPC8ojiでトークをすることになったので、登壇初心者のみなさんへというページを読んでいたら、「同…

今日のポエム: 「内側」から攻めるか、「外側」から攻めるか

今日の料理 100円の餃子は著しくコストパフォーマンスが高い。 Re: 一つの言語に集中できない phaendal.hatenablog.com を読んだ感想です。 多分、多言語を食いちらかしているような人間からすると、同じような悩みを持っていると思う。自分も、最近はRubyと…

オオギリダイバーという大喜利イベントに人工知能を持ちこんで参戦した話

今日のラーメン 人工知能は人間がボドルネックだった 日曜日は、オオギリダイバーというイベントがあり、それに『大喜利β』という人工知能が参戦すると聞いてきたので、元エンジニアで、ふらふらと大喜利に参加していた身としては、そりゃ参加しなきゃいけな…

PythonからRubyに移行した人間の印象

今日の料理 安物のねぎとろは、納豆と良くあう。 前提 はじめてのにき(2016-06-16) より。 このエントリの立ち位置について 元々はPythonを勉強していたのだけれども、仕事の関係上、Rubyを主軸にすることにした人間のエントリです。ちなみに、PythonとRuby…

Rubyでifとwhileをメソッド化する -- Smalltalkライクな構文をRubyにも

今日の料理 私は「ためしてガッテン」の信徒です。 はじめに いまYAP(achimon)Cのレジュメを書いているのだけれども、いろんなプログラミング言語を触ってみての感想が多く入ってきていて、乱雑な感じになっている。 いろいろなことを乱雑に詰めこむのは、自…

Racket(Lisp)で簡単なラムダ簡約機作った

街の風景 はじめに こないだ、知人の「会」という曖昧なことが行なわれ、そこに参加していたら、酔っぱらったtakano32さんが「Rubyでラムダ簡約機作っていて、これ凄く革新的だと思うんですけど、誰もスターを付けてくれないんですよ」とクダを巻いていだ。…

もう一つの人工知能の物語ーー『コンピュータは数学者になれるのか?』

今日の風景 類似性について まえおき 言いわけになってしまうが、著者はこの手の文献を正確に把握する知性について欠けているところがあるため、もしこの文章を読んで本書について興味を持ったら、是非購入してほしい。以下は、あくまでも購入の参考にして頂…

Rubyで書いていたら破滅したので、Lisp/Racket で書きなおしたお話 (『プログラミング言語の基礎概念』について)

今日のアート mograg garageで行われたKYOTAROさんという方が描かれた絵です。 手帳にも描いてもらいました。ありがとうございます!! 概要 タイトルが釣りっぽくなって申しわけない(だったらやらなきゃいいじゃん……)。 普段は練習にRubyを利用しており、ある…

Unlispとか言うものを作って遊んでいた

今日のまめ知識 ドヤにある扇風機のコンセントはこんな形をしている。 概要 言語処理的なものを作る上において、最小限のサブセットとして、TokenizeとParse、そしてそれに付随する環境について一通り学ぶことのできる最小のLispというものを考えていた。そ…

SKIコンビネーター入門以前(ついでに、PythonでSKIコンビネーター学習用ライブラリを書いた)

今日の料理 博多のソウルフードです。 サンポー食品 焼豚ラーメン 94g×12個出版社/メーカー: サンポー食品メディア: 食品&飲料この商品を含むブログを見る 概要 ラムダ計算を学習する上において、コンビネーターというものが登場する。これは、変数が全て束…

Pharo/Smalltalkで足し算できた!!!(全加算器と半加算器で)

概要 ビット同士を足しあわせる際、ビット同士による繰りあがりを表現する必要がある。これらを実現するため、論理回路として、全加算器と半加算器を作る必要がある。これらを作ることによって、最終的にビットの足し算ができるようにする。 はじめに ゲーム…

コラッツの問題を並列計算するコマンドをGolangで書く練習をする

今日の料理 カマンベールミルフィーユ鍋。 コラッツの問題 コラッツの予問題というとピンとこないかもしれないが、別名「3n+1問題」と言われたら、何処かで聞いたことがある人もいるんじゃないんだろうか。内容自体は簡単で、「任意の整数が与えられたとき、…

2進法への信奉 (Courseraの "From Nand to Tetris" Week2前半のおさらい)

今日の料理 砂肝のアヒージョ。 概要 Courseraでは、2進法で如何に計算するかということを説明していた。今回は、10進法を混じえながら、負の整数おび正の整数を如何に足すのか、について説明する。 n進法とは何か まず最初に、身近な10進法について考えてみ…

花よりNand(Courseraの "From Nand to Tetris" Week1おさらい)

今日の料理 鳥ハムサンド。 はじめに 最近始めたことの一つに、「Coursera」の「Build a Modern Computer from First Principles: From Nand to Tetris 」というコースを受けはじめたというのがある。最近だと、日本語訳された教科書として『コンピュータシ…

隠れた名作タイル型ウィンドウマネージャー・i3wmのススメ

概要 Linuxのウィンドウマネージャーの系統として、ウィンドウを敷きつめるタイプの「タイル型ウィンドウマネージャー」というものが存在している。このi3wmは後発のウィンドウマネージャーなだけに、手が届く作りとなっているので、今回は振り返りついでに…

フロイドの循環検出法とポラード・ロー法による素数判定

今日の料理 自宅超会議の様子です。クローズドソース。あと汚ない。 概要 ある数の因数を見つけ出すためには、ポラード・ロー法という方法がある。このポラード・ロー法は、フロイドの循環検出法と呼ばれる、循環を見つける方法が関連してくる。今回は、簡単…

Pharo(Smalltalk環境)においてFizzBuzzを書くためのwalkthrough

概要 Smalltalkという名前を聞いたことがある人はいるけれども、実際に触ったことのある人は少ないのではないだろうか。そういう人のために、今回はPharoを利用してFizzBuzzを書くことによって、文法と環境のひとめぐりしたことをメモしようと思う。 はじめ…

フェルマーの小定理を使った素数テストを追う

今日のラーメン 稲荷屋 概要 素数を検査する方法には、いわゆる「ふるい法」と呼ばれる方法を使った決定的な方法と、「だいだいこのような式に該当するならば、素数だろう」といった推測に基づく、確率的な方法がある。確率的な方法の一つに、「フェルマーの…

掛け算と平方乗算を実装する

今日の料理 概要 『その数式、プログラミングできますか?』を読んでいたところ、一番最初に掛け算を実装する話が出てきた。掛け算は確かに身近な計算であるけれども、ではこれを効率良く計算する方法とはいったいどういうものなのかを考えるのは面白く、ま…

「Burrows Wheeler 変換」と逐次構築

今日の肉 笑点における楽太郎の座布団みたいなもの。 概要 テキスト処理方法の一つとして、Burrows Wheeler 変換というものがある。丁度手元に、その辺りを論じた本があったので、練習がてらに実装してみることにした。 はじめに 自分の書架を整理していたら…

「1ドルを任意のコインに両替する組み合わせ数」を計算する(両替問題)

今日の料理 肉きしめん 概要 なんらかの金額が与えられた場合に、それを両替するコインの組みあわせ数を求められる問題が、いわばプログラミングの基礎的な問題として使われることが多い。今回は、木構造を作るような再帰的な関数を定義し、この問題にチャレ…

素数候補を効率よく絞りこむ「Wheel factorization」について調べたこと

今日の料理 サーモン漬け丼 概要 素数リストの求め方に関しては、前回アトキンのふるいを紹介した。この他にもWheel factorizationという方法がある。調べてみたところ、直接的な日本語の紹介が乏しいので、実装したついでに、調べた範囲のことについてメモ…

Rubyで、「エラトステネスのふるい」を改良したと言われる「アトキンのふるい」をいまさら実装する

今日の料理 ニラを入れすぎた 概要 素数のリストを作成する際に、エラトステネスのふるいが有名だが、それを改良した「アトキンのふるい」というものがある。今回は、他のコードを参考にしながら、自前で実装してみて、思ったことを書き残しておきたいと思う…

Racket(Scheme)で素因数分解をするようなプログラムを書いてみる

今日の料理 すきやき 概要 ある数が与えられた際に、素因数分解を行なうプログラムを練習がてらに書いてみた。これは数論の本に示唆されていた解法に基づくものである。 今回は、どのようにそのプログラムを実装したかについて、メモをしておく。 はじめに …

Rubyで、矢印キーにて伸びたり縮んだりするようなバーをコンソール上で実現する

今日の料理 油あげの鍋 概要 CUI(キャラクター・ユーザー・インターフェイス)上で、何かしらの常駐コマンドを作成した場合、キーイベンドによって、何らかの操作が出来たほうが望ましい場合がある。そういったコマンドをRubyで作ろうとした場合、意外にもま…

Ubuntuというか、Linuxにおける、デスクトップ通知バルーンを検討する

概要 自分が使っているのはUbuntuだ。そして、恐らく殆どのLinuxにおいて言えることだと思うが、これらの特徴とは、カスタマイズ性の高さという部分にある。それは、MacについているGrowlのような、バルーンでお知らせする親切なアイツについても、同じこと…

余は何故キーボード配列をqwerty配列からColemak配列にしたか

簡単な概要 普段使うキーボード配列をcolemakに変更した。採用した理由としては、colemakが、qwerty配列を改良したものであるという理由からた。ただし、キーボード配列を変更することは、多くのデメリットがある。例としては、他人に自分のPCを利用すること…

高階関数と関数オブジェクトとラムダについての自分なりのメモ書き

近況 正しく、そして簡単に書くことが、一番の壁だということを実感する。 概要 『関数プログラミング』という本の中においては、「関数そのものと関数を引数に適用したものを混合してはならない(p.9)」としている。というのは、「関数プログラミングにおい…

プログラムにおける「関数」とは何かについて、自分なりのまとめ

近況 自宅サーバーが起動しなくなったため、中身に保管してある電子書籍のPDFが取り出せず、大量の知性が失われている。 要旨 以前に「関数型プログラミングの初心者」に向けて質問したときに、そもそも関数とはなにかについてわからなかったという質問があ…