最近巷では俄に型システムについての言及が増え、型システムポエマーが増えてる気がするので自分もその時流に乗りたい。 完全にポエムだけどなんかあったら随時指摘ください。直します。 TL;DR 言いたいことはまとめると次 型システムは程度問題なのでちょうどいいところを探すべき 型は万能でも強さが正義でもない(だから未だに研究されてる) よく知りもしないくせに計算機科学を侮辱するのはやめろ 予防線 あくまでポエムですので中身はないです 私は型理論専攻で学位はとったものの研究者ではないのであまり信用しすぎないように 型システムの過去 型システムは大まかに次のような利点があるとされてきた(個人的主観) 「異常」なプログラムを検出する仕組み 静的解析による分かりやすいエラーメッセージ 型そのもののドキュメント性 IDEでのcompletionに貢献 最適化に貢献 (数学に正しく裏打ちされたsemanti
Selection of images created from Processing examples in 2003 to show a range of 2D/3D techniques, drawing with geometry and photography, and networking and physical computing (electronics) capabilities. When we started Processing in 2001, the goal was to bring ideas and technologies out of MIT and into the larger world. One idea was the synthesis of graphic design with computer science, combining
Moving Towards Dialogue: Collaborating with your computer using typed holes! by Vaibhav Sagar For many people, their first (and only) experience of static types is being continually told off by their compiler. With a little gentle encouragement, it is possible to mend this dysfunctional relationship and move towards having a conversation instead. In this talk I’ll demonstrate typed holes, which
Now suppose Bob wants to transfer $50 to Dave. He can create a new transaction that says “take the first output of transaction t1, transfer $50 to Dave and transfer $20 back to me.”1 t2 It is important that Bob transfers the $20 “change” back to himself, because a transaction output can be “spent” (that is, used as an input) only once. This style of transactions is called “UTxO” style; UTxO stands
TL;DR 機械学習を仕事で使う人はどんな理論的内容を扱っているのか コードは GitHub にあるし研究は論文になるが、実業務で必要な理論的トピックに関してはなかなか目にする機会がない 自分がこれまでどんなことをしてきたのかを簡単にまとめてみた 以前 機械学習をやる上で線形代数のどのような知識が必要になるのか という記事を書いた。 これに関して知人と話している時に「ある程度知っている人がこれだけやれば十分みたいな話をするのは不適切じゃないか」という感じの話をした。 何が不適切かというのは色々な解釈がある。 ここでは、ある対象に関してそれなりに知っている人が考える「これで十分」というのは、暗黙の前提や関連事項の理解があったりして、表面に出てくるのはほんの一部を聞いてもそこまで役に立たない、という点を挙げておく。 これは結構広く成り立つことだろう。 まあそれ自体はそれでいいし、表面に出てくる
Go は goroutine という非同期の仕組みを提供していますが、使い方次第では色々なパターンが実装できる為、初めて goroutine を見た人はどの様な物が正解なのか分からない事があります。以前、このブログでも紹介した事がありますが Go の非同期の仕組みは一見単純な様に見えて実はとても奥深いのです。 Big Sky :: golang の channel を使ったテクニックあれこれ golang の channel は他の言語に見ない独特のパラダイムを開発者に提供します。 単純にスレッド間でメッセージングをするだけでもC言語で書けばそこそこの量になったり、慣れていない人であればど... https://mattn.kaoriya.net/software/lang/go/20160706165757.htm 2012 年に Rob Pike 氏が Google I/O で「Go
Threats to users’ privacy and security are growing. At Mozilla, we closely track these threats. We believe we have a duty to do everything we can to protect Firefox users and their data. We’re taking on the companies and organizations that want to secretly collect and sell user data. This is why we added tracking protection and created the Facebook container extension. And you’ll be seeing us do m
Baby’s First Rust+WebAssembly module: Say hi to JSConf EU! A secret project has been brewing for JSConf EU, and this weekend is the big reveal… The Arch is a larger-than-life experience that uses 30,000 colored LEDs to create a canvas for light animations. And you can take charge of this space. Using modules, you can create a light animation. But even though this is JSConf, these animations aren’t
Update: There’s a good discussion on Hacker News. Over on GitHub, David Yu has an interesting performance benchmark for function calls of various Foreign Function Interfaces (FFI): https://github.com/dyu/ffi-overhead He created a shared object (.so) file containing a single, simple C function. Then for each FFI he wrote a bit of code to call this function many times, measuring how long it took. Fo
hyper v0.12 Today sees the release of hyper v0.12.0, a fast and correct HTTP library for the Rust language. This release adds support for several new features, while taking the opportunity to fix some annoyances, and improve the extreme speeds! Look, some wild bullet points appeared: Faster! More correct. Embraces the http crate types. Adds HTTP2 support to both the client and server. The Client a
Async/await continues to move along swimmingly. We’ve accepted an RFC describing how the async/await syntax will work in Rust, and work is underway on implementing support for it in the compiler. We’re hopeful that users will be able to start experimenting with the syntax on nightly by early July. The RFC for async/await didn’t address one important thing: async methods. It is very important for p
Emacs 26.1 was recently released. As you would expect from a major release, it comes with lots of new goodies. Being a bit of an Emacs Lisp enthusiast, the two most interesting new features are generators (iter) and native threads (thread). Correction: Generators were actually introduced in Emacs 25.1 (Sept. 2016), not Emacs 26.1. Doh! Update: ThreadSanitizer (TSan) quickly shows that Emacs’ threa
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く