タグ

プログラミングに関するytakanoのブックマーク (5)

  • 8月新刊情報『並行プログラミング入門』

    『並行プログラミング入門 ―Rust、C、アセンブリによる実装からのアプローチ』 高野 祐輝 著 2021年8月24日発売予定 384ページ ISBN978-4-87311-959-5 定価3,520円(税込) 複数のプログラムを同時に実行する「並行プログラミング」は、処理速度を飛躍的に向上させる手法で、タスク管理、プロセス管理、スレッド管理をはじめ、複雑な仕組みについての幅広い知識とテクニックが必要となります。書はRustとアセンブリ、そして一部Cを使い、CPUのアトミック命令、グリーンスレッド、アクターモデル、π計算、ソフトウェア・トランザクショナルメモリ、async/awaitなど、並行プログラミングに関する理論的な背景から実装までをカバー。さらに、アセンブリ実装の理解を深めるため、AArch64とx86-64アーキテクチャの説明も付録として収録。一歩一歩、着実に理解できるように、

    8月新刊情報『並行プログラミング入門』
  • 大学でRustを教えた話 - 未完成な論を綴るブログ

    このブログ記事は、Advent Calender 2020, Rust 3、23日目の記事となります。自分は現在大学で教員をしていまして、セキュリティ系の研究室に所属しています。現在はセキュリティの講義を担当しており、そこでRust言語を教えているため、その内容を紹介しようと思います。 はじめに 皆さんご存知のようにソフトウェアの脆弱性は今でも大きな問題となっていますが、それを完全ではないにしろ根から解決するための技術的手法として型システムが注目されています。型システムの考え自体は古くからありますが、最近ではRust言語が登場し、OSなどいわゆる低レイヤーなソフトウェアも型システムの恩恵を預かることができるようになってきました。SMTソルバや定理証明などと言った難しい(かつ面白い)手法でC言語やC++言語で書かれたソフトウェアを解析する方法もありますが、セキュアソフトウェアを語る上では、

    大学でRustを教えた話 - 未完成な論を綴るブログ
  • プログラミング言語と論理学の狭間にてさけぶけもの - 未完成な論を綴るブログ

    情報科学をやってきたのだから、死ぬまでに一度自作のプログラミング言語を作ろうと思ったのが2016年後半ぐらいである。プログラミング言語とオペレーティングシステムは情報科学を志した者は誰もが一度は目指す道である(たぶん)。 しかし、思い立ったは良いが、プログラミング言語の研究は論理学を基礎としており、その当時は論理学のろの字もわからなかった。実際には、JAISTの学生時代に小野先生の数理論理学の講義を受けたのだが、その当時は「ANDとOR計算ね」ぐらいの認識しかなかったという体たらくであった。当時は大堀先生もJAISTでStandard MLの講義をしていたので、今にして思えば受講しておけばよかったと思う。 そんなこんなで基礎を習得するのに2年弱かかってしまって、今ようやく自作プログラミング言語の実装に取り掛かっているわけである。報はプログラミングという情報科学にそびえ立つエベレスト、いや

    プログラミング言語と論理学の狭間にてさけぶけもの - 未完成な論を綴るブログ
  • 【読書メモ】アンダースタンディング コンピュテーション - 未完成な論を綴るブログ

    チューリング・マシンとはイギリスの数学者チューリングが考案した計算モデルである。チューリングとは第二次世界大戦中にナチス・ドイツ軍の暗号Enigmaを解読した人物である。チューリングは当時、、今で言うコンピュータの原型となる機械を実装して、Enigmaの解読を行ったそうだ。チューリングの軌跡については、イミテーション・ゲームという映画で描かれており、内容もなかなかおもしろいのでおすすめである。 イミテーション・ゲーム エニグマと天才数学者の秘密 [Blu-ray] 出版社/メーカー: ギャガ 発売日: 2016/12/02 メディア: Blu-ray この商品を含むブログを見る 計算モデルとRuby実装 計算モデルとは、その名の通り計算機の動きを数学的に表したものとなる。現在の計算機は、ノイマン型コンピュータと呼ばれていて、アメリカ数学者・物理学者のフォン・ノイマンが考案した構成をとって

    【読書メモ】アンダースタンディング コンピュテーション - 未完成な論を綴るブログ
  • 第一回: はじめに (bindで毎回詰まる人の為のパーサーコンビネータの仕組み)

    この投稿は、一連の「bindで毎回詰まる人の為のパーサーコンビネータの仕組み」のシリーズ第一回となります。 Spracheを使っていた所、理屈を理解したくなりました。 そこで、以下のペーパーを読みました。 Monadic Parser Combinatorsを読んだ これは非常に良く書けていて、面白かったのですが、 1. GoferというHaskellライクな言語で書かれているので、C#やJava畑の人は読みにくい 2. 一番つまりやすいbindやreturnといった仕組みのコアの部分をさらっと流してしまう 3. 原理を理解するだけなら必要無い一般化が、内容を読みにくくしてる 4. あまりweb上のオープンな場所に日語のドキュメントを見かけない 5. bind(またはSelectMany)の非常に良い具体的な応用例となっている という事で、日語でもこういう文書があったらいいと思いました

    第一回: はじめに (bindで毎回詰まる人の為のパーサーコンビネータの仕組み)
  • 1