タグ

ブックマーク / cpplover.blogspot.com (48)

  • Erlangについて思うところ

    職場の今までいた部署が潰れてしまったので、新しい部署で仕事のためにErlangを学んでいる。基礎的な文法については学び終わったので、現時点でのErlangについての雑感を書いておこうと思う。 Erlangは多数派のプログラミング言語とはだいぶ違う文法を持っている。終端記号がドットであることもそうだが、比較演算子もだいぶ違っている。多くの言語が!=を使うなか、Erlangは/=を使っている。Less than or equal toが=<であるのも多数派とは異なっている。ただし、Greater than or equal toは>=だ。一貫性がない。 終端文字はドットだが、関数の中には一つの式しか書くことができない。式はカンマで区切ることができるので、以下のようになる。 func() -> expr1 , % カンマ expr2 , % カンマ expr3 . % ドット このような文法はリ

  • 侮辱的な報酬額の大学講師の仕事依頼がやってきた。その額なんと月2.7万円

    あるミッション系の大学から講師委嘱の依頼がやってきた。その科目は私の個人的な知識と経験から興味深い話がたくさんできるであろう分野で、具体的には、著作権特許権と検閲、電子書籍とDRM、著作権特許権の保護する範囲を越えようとする不自由なソフトウェアライセンス、岡崎図書館事件、兵庫県警Alertループ事件神奈川県警CoinHive事件、あるいはの出版事情や再販制度といった内容を取り扱うことになる。 例年70-80人の履修者がいて、1学期間に1コマ100分が14回に加えて内容の理解の確認のための課題と評価だ。 単純計算で一ヶ月に7時間の授業と、準備時間を授業時間と同じぐらい確保し、課題作成と80人分の回答を評価する時間を考えると、最低でも月に20-30時間ぐらいは必要だ。質をあげようとすればもっと長時間の労働になるだろう。大学なので報酬は安くても引き受けるとして、期間を定めた個人請負なので時給

    R2M
    R2M 2019/11/17
    ボイラー室勤務とセットだったら受けてもらえたかも知れないね
  • 職質裁判で不当判決が出たので控訴する

    職質裁判の一審判決があまりにも不当すぎる。判決文はGitHubで公開している。 https://github.com/EzoeRyou/calling-110-is-suspicious 判決文では、東京都(警察)側の多くの虚偽の主張は認定されなかった。以下は認定されなかった東京都(警察)による虚偽の主張である。 江添はパトカーとすれ違った際、顔をふせ足早に走り去った すれ違った場所の近くにある自動販売機で飲み物を買っていることからありえない 江添は手を小刻みに動かす所作をなした 裁判所の判断では言及されず 江添は吉野家の看板をひっくり返した 裁判所の判断では言及されず 江添は自らの意思で駐車場に向かった 江添は走った 特に最後の項目はとても興味深い。私は走ったところ警察官らに取り押さえられて駐車場に押し込められたわけで、裁判所は走ったのは怪しいとしている。しかしなぜか東京都(警察)の主張

  • Linus Torvalds様、ユーザースペースの互換性を壊した開発者に強い態度をお示しになる

    Linuxカーネル4.18から、userns mountに対して暗黙にSB_I_NODEVを設定するようになったために、既存のsystemdのnspawn実装が壊れた。 以下が問題のパッチだ。 https://github.com/torvalds/linux/commit/55956b59df336f6738da916dbb520b6e37df9fbd Linuxカーネルにおいては、ユーザースペースの挙動は変えないという強い下位互換保障がある。以前のバージョンのカーネルで動いていたユーザースペースのコードが新しいバージョンのカーネルで動かなくなった場合、それは理由が何であれ新しいバージョンのカーネルのバグであるとみなされる。たとえそれが、ドキュメント化していない明示的に保証されているわけではない昔のカーネルの暗黙の挙動であれ、その挙動に依存している既存のユーザースペースのコードがあるので

  • 本の虫: TempleOSの作者Terry Davisが列車に引かれて死んだ

    Man killed by train had tech following | The Dalles Chronicle Man killed by train had tech following By Neita Cecil As of Friday, Septem - Pastebin.com 両親と喧嘩をして勘当され路上生活をしていたTerry Davis(Terrance Davis)が8月11日に列車に引かれて死んだことが確認された。享年48歳。 Terry DavisはTempleOSの作者だ。 TempleOS 読者の多くはTempleOSを知らないだろう。TempleOSとはx86-64 Ring-0上で動作するOSだ。プロセス分離はなく、メモリ保護もなく、そもそも仮想メモリではなく物理メモリアドレスを直接使うOSだ。コンセプトは古き良きCommodore 64の現代

    R2M
    R2M 2018/11/10
  • 本の虫: 帰ってきたきれいなリーナス・トーバルズ、無作法な開発者をたしなめる

    Linus Torvalds Shows His New Polite Side While Pointing Out Bad Kernel Code - Phoronix 人の心の読み方を学んで復帰したリーナス・トーバルズは、さっそく無作法なプルリクエストをたしなめている。その文章は大文字センテンスも4文字言葉も使っていない優しいものに変わっている。 問題はプルリクエストはBigBenゲームコントローラーに対するドライバーの追加で、このドライバーはデフォルトで有効にされていた。これはLinuxカーネルの慣習にそぐわないものだ。新しく追加された名前もきいたこともないようなデバイス用のドライバーが、いきなりカーネルでデフォルトで有効にはされないものだ。新参者のドライバー開発者は、大抵自分のドライバーはとても重要で、自分の所有しているデバイスは全員所有しているのでデフォルトで有効にするのは当然

    R2M
    R2M 2018/10/30
  • 本の虫: Linus、今までの行いを謝罪し一時的にカーネルメンテナーの立場を退いて人の気持ちを勉強してくると発言

    Linus、今までの行いを謝罪し一時的にカーネルメンテナーの立場を退いて人の気持ちを勉強してくると発言 完全に背景事情を調べ上げたわけではないのだが、どうもLinusが毎年参加しているLinuxカーネルの会議に、Linusがスケジュールを間違えて参加できなくなるという事態が発生した。当のLinus人はもう20年も続いている会議だし自分がいなくてもやっていけるだろうと楽観視していたが、会議自体がLinusの都合にあわせてリスケジュールされた。 LinuxにおいてLinus Torvaldsといえば第一人者であり極めて重要な存在で、そのLinusが毎年参加している重要な会議にLinusが参加できないとあれば、その他のあらゆるコストを度外視して根回し調整を行い、Linusが参加できるようにイベント全体のリスケジュールを行うのは人間の感情から考えて当然である。しかし当のLinus人は他人の感情

    R2M
    R2M 2018/09/17
  • 違法な職務質問を受けたので国賠訴訟を起こした裁判の傍聴のお知らせ

    私の裁判の傍聴をしたいという人が何人かいるので、ここで証人尋問の傍聴の告知をしておく。 日時: 2018年9月19日 水曜日 13時30分から16時頃まで 場所: 東京地方裁判所631号法廷 傍聴をするためには、指定の日時の少し前に東京地裁に行き、金属探知機のある入り口を通過し、そのままエレベーターで6階まで上がって時間通りに631号法廷に行くだけだ。特に予約や手続きは必要ない。また、途中退出してもよいそうだ。 裁判の内容だが、私は約1年前に警察官から違法な職務質問を受けたので東京都を相手に起こした国賠訴訟だ。 の虫: 警察官に職務質問をされた話 の虫: 濫用に当たる職務質問を受けたと考えたので弁護士に相談して訴訟を起こすことになった話 裁判を起こすことになって初めて知ったのだが、警察というのは地方自治体の行政であるので、東京都内で生じた警察の行為について裁判を起こす場合、被告は東京都

    R2M
    R2M 2018/08/13
  • NPMのESLintのパッケージにマルウェアが混入された問題

    Postmortem for Malicious Packages Published on July 12th, 2018 - ESLint - Pluggable JavaScript linter https://github.com/eslint/eslint-scope/issues/39 要約 2018年7月12日に、攻撃者がESLintメンテナーのnpmアカウントを不正利用し、悪意あるコードが混入したeslint-scopeとeslint-config-eslintパッケージをnpmレジストリに公開した。インストール時に、悪意あるパッケージがダウンロードされ、pastebin.comからコードを実行し、このコードはユーザーの.npmrcファイルの中身を攻撃者に送信する。通常.npmrcファイルにはnpmでパッケージを公開する際のアクセストークンが含まれる。 悪意あるパッケージ

    R2M
    R2M 2018/07/14
  • C++に提案されている静的例外

    C++に静的例外が提案されている。 [PDF] P0709R1: Zero-overhead deterministic exceptions: Throwing values 例外はそのパフォーマンスへの影響が懸念され、一部のC++プロジェクトではコンパイラーオプションによって例外自体が無効化されていた。 これは由々しき事態だ。というのも、例外は標準C++の機能の一部であり、標準ライブラリは例外の存在を前提にして設計されている。例外が無効化されているということは、それはもはやC++ではない。C++風の別言語を使っていることになる。 なぜ例外は忌避されるのか。例外のパフォーマンスが非決定的だからだ。例外の実装はスタックからの確保ではなくヒープからの動的なメモリ確保が必要で、例外のキャッチにはRTTIによる型情報の比較が必要だ。 ifとgotoによるエラー処理のパフォーマンス特性は決定的に見

    R2M
    R2M 2018/07/11
  • glibcのabortマニュアルの中絶方針ジョークについて

    Who controls glibc? [LWN.net] 「glibcのabortのマニュアルにはabort(終了)とabortion(中絶)をかけた中絶ジョークがあり、これはマニュアルとして有益ではなくて混乱の元なので削除するというパッチが提出され、受け入れられたが、RMSの反対により差し戻された」 これだけ読むとくだらない出来事のように思えるし、人によってはこのジョークの存在が好ましくないとか下品だと思うかもしれない。しかし、これは単に下品なジョークで片付けてよい問題ではない。実は音はもっと深いのだ。 まず、ジョークの内容は中絶ジョークではなく、中絶方針ジョークなのだ。 glibcのabortのマニュアルには以下の記載がある。 将来の変更警告:連邦検閲規制委員会に提案された方針によれば、この関数を呼び出すことができる可能性についての情報を我々が与えることが禁止されるかもしれない。我々

    R2M
    R2M 2018/05/09
  • nVidia、GeForceのデータセンターでの利用を禁止する

    NVIDIAが規約変更によりGeForceのデータセンター利用を制限。大学などの研究活動にも大ブレーキ - WirelessWire News(ワイヤレスワイヤーニュース) また清水亮がポエムを書いている。困るんだよね、名前の同じ人間にそういうことをされると私まで詩人だと思われてしまう。 nVidiaは確かに邪悪で不自由で存在自体が人道上の罪にあたる極悪企業であり、かのLinuxカーネルの最高開発者であるブリリアント・アッスホールの称号も名高いリーナス・トーバルズにも中指を突き立てられてFから始まるとてもここで書くことができないほどの醜悪極まりない侮辱の四文字言葉で罵られたほどの救いようのない時勢の読めない烏合の衆ではあるが、まさか自らの飯の種であるデータセンターへの利用を禁止するほどの寓話に出てくる金の卵を生む鶏を割くほどの阿呆ではないだろう。どれどれ、この私が直々にソースとやらを検証し

  • LLVMがWindowsのデバッグ情報フォーマットのPDBをサポート

    LLVM Project Blog: LLVM on Windows now supports PDB Debug Info この数年、clangをWindowsでソフトウェア開発するための世界級のツールチェインにするために尽力してきた。このことについては、すでに何度も書いてきたことだ。LLVMは完全なABI互換を実現した(ただしバグ互換ではない)。互換性を実現するのが難しい分野にデバッグ情報があるが、この2年間で、LLVMは飛躍的な発展をとげた。とりあえず結論を先に書くとこうだ。WindowsでClangを使うと、PDBデバッグ情報が出せる。 背景:CodeView VS PDB CodeViewは1980年台の中頃にMicrosoftによって考案されたデバッグ情報フォーマットだ。様々な理由で、他のデバッガーはDWARFという独立したフォーマットを開発し、これは標準化されて、多くのコンパ

  • 濫用にあたる職務質問を受けたと考えたので弁護士と現場検証してきた

    承前 の虫: 警察官に職務質問をされた話 の虫: 濫用に当たる職務質問を受けたと考えたので弁護士に相談して訴訟を起こすことになった話 さて、弁護士と職務質問を受けた現場にいって当時の流れを再現してきた。 ところで、私は今回の濫用に当たる職務質問を受けたことを弁護士に相談して、裁判費用と弁護士報酬を合わせて61万円を支払った。こう書くと、にわかにカンパを支払いたいという連絡が何件もやってきた。61万円は少ない額ではない。幸い、私には貯蓄と収入があるので、生活に影響を与える出費ではない。 この問題に身銭を切ってまで感心を寄せる人間がこれだけいるのだという可視化のためにカンパを受け取るというのも考えたが、現在、生活が困窮しているわけでもなく、またこれ以上の出費が見込まれるわけでもなく、かつ出所のわからない金をあまり受け取りたくはないというのもある。第一その金は61万の支出と相殺して所得はなか

    R2M
    R2M 2017/07/24
  • Bjarne Stroustrupのプログラミング入門書の査読の感想

    C++の設計者ストラウストラップによるプログラミング入門書の最新版日語訳が、9月に @asciidwango から出版されます。 https://t.co/ssT9ubfXtT — アスキードワンゴ編集部 (@asciidwango) August 5, 2016 アスキードワンゴ編集部からBjarne StroustrupのProgramming -- Principles and Practice Using C++というの第二版の邦訳が出版される。初版は翔泳社が出していたが、C++14に対応した改訂版の第二版の版権が空いていたので、アスキードワンゴから出すための作業をしていた。私は邦訳の査読をした。 今年になってから半年は、ずっとこのの査読をしていた。このためにC++標準化委員会の最新の文書を把握する作業が数ヶ月ほど滞った。そして、この仕事は、私がドワンゴに入社して以来、最悪の

    Bjarne Stroustrupのプログラミング入門書の査読の感想
    R2M
    R2M 2016/08/07
  • MITがSICPを教えなくなった理由

    Programming by poking: why MIT stopped teaching SICP | posterior science このNYC Lisp meetupの動画で、Gerry Sussmanに対する質問として、SussmanとAbelsonの古典、The Structure and Interpretation of Computer Programs(SICP)に基づく、伝説的な6.001講義をなぜMITはやめたのかと聞かれている。 Sussmanの回答としては、SussmanとHal Abelsonは1980年代から延々と教え続けるに嫌気が差し、1997年に、学部長の事務所に行って、「俺らはやめる。後どうするからは勝手に考えろ」と宣言した。より重要なこととしては、SICPのカリキュラムは、今日のエンジニアリングに求められるエンジニアを育てることができないからで

  • 闘会議2016のアナログゲームのとある運営スタッフの感想

    闘会議2016のアナログゲームのインスト要員として2日間運営スタッフとして入っていたので、その感想を書く。 筆者は江添亮、ドワンゴにエンジニアとして雇われている。ドワンゴのボードゲーム同好会のメンバーでもある。今年の闘会議でも、アナログゲームは設置される。もちろんカタンもある。カタンのインストをするために運営スタッフとして参加した。 今回の闘会議には不安が大きかった。なにしろ、今回のアナログゲームエリアには、30卓ほど立てるという予定である。1卓にスタッフを2人配置するとして、60人必要になる計算だ。60人ものボドゲがインストできるスタッフをどこから集めてくるというのか。あまりにも無謀すぎる。私が一切関わっていない会社の企画するイベントが失敗するのは私の知ったことではないが、カタンのインストが失敗し、カタンに悪い印象を与える事態だけは、ガチのカタンプレイヤーとして見過ごすことはできぬ。そこ

  • Archユーザー、rm -rfしてMSIのラップトップのUEFIのバグを発見する

    No POST after rm -rf / / Kernel & Hardware / Arch Linux Forums No POST after rm -rf / | Hacker News Mount efivarfs read-only · Issue #2402 · systemd/systemd Archのインストールを消去したかったので、遊びのためにMSIのラップトップで"rm -rf --no-preserve-root /"してみたArchユーザーのラップトップが文鎮化してしまった。なぜだ。 調査の結果、おそらく/sys/firmware/efi/経由でEFI変数(EFIの規格で定められているマザーボードが提供する小容量の不揮発ストレージ)に書き込みを行ったためだと判明した。 EFI変数に書き込むのは、EFI規格上完全に合法な操作であるが、どうやらファームウェアの不具

    R2M
    R2M 2016/02/18
    うーん、バグというには情報が少なすぎるかな。
  • 今年遊んだビデオゲームの感想

    今年はFallout 4が発売されたため、久しぶりに大金を投じてゲームPC環境を構築した。今年遊んだゲームの感想を書いてみる。 何か他にも面白いゲームがあれば教えてほしい。筆者は一人称シューターが好きだ。ステルス要素は嫌いだ。Ubisoftのゲームはグラフィックだけの見せかけで肝心のゲームは中途半端で、かつUPlayというクソみたいなDRMがあるので避けることにしている。 Borderlands 2 FPS版Diabloといったゲームだ。レベルがあり、敵と武器の強さがレベルによってスケールする。武器の強さは乱数によってさらに増減する。前作と違い、ストーリーもなかなかよい。特に、ハンサムジャックという敵がとてもよい味を出している。サイドミッションにもボイスとストーリーが付いている。とても中毒性のあるゲームだ。 ただ、前作と比べて、とても死にやすいバランスになっている。 そして、ラスボスとD

  • Minecraftクライアントからdockerの管理ができるminecraftサーバー: Dockercraft

    docker/dockercraft 公式の未改変Minecraftクライアントから接続してDockerの管理ができるMinecraft互換サーバー、Dockercraftが公開されている。 Dockercraft Dockercraftの実行方法 1. Minecraftのインストール: Minecraft Minecraftクライアントは改変していないので、公式リリースをそのまま使える。 2. Dockercraftイメージをpullするかビルドする。 docker pull dockercraft もしくは、 git clone git@github.com:docker/dockercraft.git docker build -t dockercraft dockercraft 3. Dockercraftコンテナーを実行する docker run -t -i -d -p 255

    Minecraftクライアントからdockerの管理ができるminecraftサーバー: Dockercraft
    R2M
    R2M 2015/11/18
    そういや次のWin10大規模アップデートがRedstoneだったよな。もしかして関係あるのか?w