タグ

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

  • Erlangについて思うところ

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

  • 違法な職務質問をされたので東京都を訴えた裁判の控訴審は棄却、理由は突然に

    職務質問裁判の控訴は棄却された。判決文は以下から読むことができる。 https://github.com/EzoeRyou/calling-110-is-suspicious 2年前の7月3日、職務質問を受けた。 警察官に職務質問をされた話し この職務質問は明らかに違法であると感じたので、弁護士に相談の上、東京都に対して国賠訴訟を起こした。警察官というのは各都道府県の下に位置する行政組織なので、警察を訴えるというのは、その警察の所属する都道府県を訴えるということになる。 一審判決は請求棄却。理由としては、「最初の10分間は不審事由がないが、刃物などの危険物を入れることができるリュックを背負っていたから声をかけ10分間その場にとどめて話をするのは違法ではない。このとき110番通報を要請したことは不審事由にあたりその後の1時間20分の職務質問は不審事由が存在するために合法である」というわけのわ

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

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

  • また初心者にプログラミングを教える機会があった

    プログラミングでわからないところがあるので教えてほしいと以下のようなことを聞かれた。 こういうJavaScriptの関数がある。 // valuesは配列 // elementはvaluesの要素型の値 // 配列valuesに値elementと等しい要素があるならばそのインデックスを返す。 // それ以外の場合、-1を返す function find_index( values, element ) { for ( let i = 0 ; i !== values.length ; ++i ) { if ( values[i] === element ) return i ; } return -1 ; } 質問は、「なぜreturn -1にelseはいらないのか」というものであった。 似たような問題に、昔遭遇した気がするが、別人だ。 まずここにelseを書くべき文法はJavaScrip

  • マイクロソフト、無駄な抵抗を辞めてWSLに本物のLinuxカーネルを同梱する

    Announcing WSL 2 | Windows Command Line Tools For Developers 「自分らはLinuxカーネルだ。防衛を解除して投降せよ。自分らの技術上の差異は自分らのものとする。自分らの文化は自分らの益とする。抵抗は無意味だ。」 マイクロソフトはWSL 2で物のLinuxカーネルを同梱して利用すると発表した。 最初のWSLは、マイクロソフトによるLinuxカーネルのシステムコールの互換実装であった。これは様々な互換性とパフォーマンスの問題を抱えていた。互換性は果てしなく低く、パフォーマンスは主にファイルシステム周りがとてつもなく遅かった。 新しい実装であるWSL 2では、物のLinuxカーネルを使い、完全なシステムコール互換性を実現する。このLinuxカーネルはマイクロソフトによってビルドされている。最初のバージョンはLinux 4.19となる

  • 職質裁判で不当判決が出たので控訴する

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

  • 職質裁判一審で不当判決、曰く、110番通報を要請することは不審事由にあたる

    警察官に職務質問をされた話が2017年の7月、これが違法な職務質問であると考えたので国賠訴訟をし、一審判決が今日言い渡された。 曰く、「原告の請求を棄却する」。負けたわけだ。ではなぜ負けたのか。判決の言い渡しでは主文しか読み上げられないので、判決文を取りに行く。 当日は、東京都(警察)の主張によれば、パトカーで私とすれ違った際、私を視認し、しばらくみていたところ、私はパトカーを見るなり顔を伏せて足早に通り過ぎたということだ。裁判所は東京都(警察)のこの主張を採用しなかった。というのも、車道と歩道の間には植え込みが多くあり、私をしばらく見るなど不可能であるからだ。したがって今回の職務質問は適切な不審事由なしで始まっていることが認められた。 その後10分間ほど、私を路上にとどめて職務質問が行われた。裁判所はこれを適切であると判断した。不審事由がなく始まった職務質問ではあるが適切だそうだ。 その

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

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

  • 本の虫: Vimconf 2018のスタッフをしてきた

    VimconfとはテキストエディターVimに関する発表をするカンファレンスだ。国際カンファレンスを意識し、発表の多くは英語で行われている。今年は他ならぬVimの作者であるBram Moolenaar人を招待している。 去年のVimconf 2017には、雇用主のドワンゴがスポンサーをしていたので、スポンサーチケットで参加をした。 今年のVimconf 2018もドワンゴはスポンサーをしていたが、去年は私がスポンサーチケットを使ったので遠慮をして今年は別の同僚に譲った。自腹で行こうかと思ったが、チケット販売サイトはクレジットカードからの入金しか受け付けなかったので、購入を断念した。 残念、今年は参加できないか、と思っていたところ、運営スタッフから人手不足で当日のスタッフが足りないので来てくれと言われ、急遽スタッフとして受付のチケットもぎりをすることになったので、結果的に今年も参加することに

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

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

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

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

  • 本の虫: GCCのgit移行が難航中

    GCCはgitへの移行を計画しているが、GCCの既存のsubversionレポジトリをgitレポジトリに変換する作業が難航している。 GCCの移行作業を検証しているのは他ならぬEric S. Raymond(ESR)だ。 ESRお手製の変換ツール、reposurgeonはsubversionからgitへの変換ができる。 Resource page for reposurgeon 3.44 しかしGCCは30年もの歴史を持ち、そのsubversionレポジトリも複雑だ。 ESRはGCCのためにreposurgeonのバグを潰し、勢い変換しようと試みたが、意外な障害に出くわした。メモリ不足だ。 GCC's Conversion To Git Is Being Held Up By RAM, a.k.a. Crazy DDR4 Prices - Phoronix ESRの所有する64GBのメモリ

    lepton9
    lepton9 2018/07/31
  • しないでマイクロソフトのスタイルガイドライン準拠の翻訳

    マイクロソフトは将来的に買収する見込みのGitHubで.NETのドキュメントを公開している。ハロウィーン文書が公開された頃のマイクロソフトからは考えられないほど変わったものだ。 https://github.com/dotnet/docs.ja-jp その中にある変数名の命名規則に関するスタイルガイドラインについて書かれたドキュメントの文章がおかしい。 https://github.com/dotnet/docs.ja-jp/blob/live/docs/standard/design-guidelines/names-of-type-members.md しないで動詞または動詞句は、メソッドの名前を指定します。 しないで名詞、名詞句、または形容詞を使用してプロパティの名前を付けます。 しないで次の例のように、"Get"メソッドの名前に一致するプロパティがあります。 しないで後に"List

  • 世の中にはプログラミングを理解できない人間が存在する

    現在、C++によるプログラミングの入門書を書いているので、初心者のプログラミングの学習過程にとても興味がある。私自身も初心者の気持ちを取り戻すためにHaskellを学んでみた。最初の数日は頭が痛くなるほど難しかったが、そこを過ぎてみれば後は楽になってしまった。結局、初心者の気持ちはあまりわからなかった。結局、プログラミングの基礎はすでに学んでしまっているので、 先日、FizzBuzzがわからないから教えてくれという知人がいたので、これは初心者の気持ちを知るいい機会と話を聞いてみたところ、想像を絶する世界が見えてきた。 まずこれが動かないと悩んでいたコードだ。 for ( int i = 0 ; i <= 100 ; i++ ) { } else if ( i % 15 == 0 ) { Debug.log("FizzBuzz") ; } else if ( i % 3 == 0 ) { D

  • 年収1200万円と2億の資産でできる贅沢はパトロネージュ

    以下のはてな匿名ダイアリーの記事が注目を集めている。 贅沢な生活って何が楽しいの?(追記しました 独身34歳男、年収900万+配当収入300万くらい。 贅沢の良さがわからない。 家は相続で貰ったので家賃無し。金融資産は相続したものと合わせて2億を超えた。 生活費は月に12万くらい。配当込みで年間800万以上金が増えていく。 別に金を使うのが嫌いなわけではない。ただ、使う気がおきない。 この増田は1200万円の年収と2億の資産を保有している。増田が過去に行った贅沢は以下の通り。 飛行機のファーストクラス(100万円) ホテルのスイートルーム(100万円) オーダーメイドのスーツ(50万円) 懐石料理(20万円) ステーキ(10万円) これらの贅沢がありきたりでつまらないのは当然だ。なぜならば、これらの贅沢には、何も1200万円の年収と2億円の資産は必要ないからだ。ただ100万円を貯金して一度

    lepton9
    lepton9 2018/02/04
  • 物理的に近くの相手とファイル共有する方法

    以下のようなTweetを読んだ。 ごめん言葉足らずだった。インターネットへの通信品質を信頼できないコミケ会場で、ビューワであるスマホやタブレット端末にPDFを送りつけたいんだ。 https://t.co/gzbcQKXkEN — ろ。まのふ (@kamiya344) January 19, 2018 インターネットが普及してからもうかれこれ20年以上もたつが、未だにこの問題が解決できていないのは嘆かわしいことだ。なのでこの問題を解決してみよう。 ただし、今回の問題は、大量に人が集まるため無線通信が難しい状況で、物理的に近い場所にいる相手とのファイル共有だ。 ファイルの転送自体は、前後にインターネット回線を確保してから行ってもいい場合は、どこかに暗号化したファイルを公開しておき、現場では復号鍵を配布すればいいだろう。 しかし、その場で直ちにファイルを転送したい場合はどうするのか。この場合、物

    物理的に近くの相手とファイル共有する方法
  • nVidia、GeForceのデータセンターでの利用を禁止する

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

  • 国際標準規格の紹介 〜ISO国際標準規格プログラミング言語C++について〜

    はじめに こんにちは、C++標準会員の江添です。 今日は普段から表に出ている、閉鎖的なゲーム開発では使われていない開発環境についての紹介をします。 今回紹介するのは、ISO国際標準規格プログラミング言語の「C++」です。 なんと表の世界では、国際標準のプログラミング言語は、コンパイラーベンダーやC++利用企業と行ったC++に利害関係を持つ多数の代表が国際標準規格を制定しているのです。当たり前でしょ? C++は以下のような特徴を持っています。 エラーに気づきやすい静的型付け言語 C++経験者が理解しやすい言語仕様 OSに依存しない移植性の高いC++実装 実行環境に依存しないC++規格準拠の挙動の定義 C/C++の関数・クラスに最初からバインドされている 今でもクローズな実装の詳細のわからないプログラミング言語がたくさんあり、それらを使うデメリットは数多くあります。 国際規格の言語を使うのは様

  • オーストラリア警察が世界最大の児童ポルノサイトを11ヶ月運営していたことが判明

    VG exposed the largest child sexual abuse forum. It was run by the police. ノルウェイのタブロイド紙のヴェルデンス・ガング(VG)は、Tor経由でアクセスできるいわゆるダークウェブの中で世界最大の児童ポルノサイトであるChilds Playは、オーストラリア警察によって運営されていたことをつきとめた。この顛末は倫理的にも技術的にも興味深い。 この児童ポルノサイトは、当時ダークウェブの児童ポルノサイトの中でも世界最大級の規模を持っていた。各国の警察は様々な捜査の上、このサイトを運営していた二人の逮捕に至った。そして、Webサイトは、各国警察相談の上、おとり捜査が合法な国、オーストラリア警察、アルゴスの手に委ねられた。アルゴスはWebサイトのホスティングをオーストラリアのレンタルホスティングサービス、Digital Pa

  • VS CodeがDOMによるターミナル実装のパフォーマンスを改善できなかったためCanvasに変更

    Integrated Terminal Performance Improvements Electronという史上まれに見るそびえ立つクソのようなGUIプラットフォーム上で実装されているVS Codeが、ターミナルの実装をDOMによるものからCanvasによるものに変更したそうだ。これは、DOMによる実装ではパフォーマンスの改善が十分にできなかったからだという。 DOMでターミナルを実装する際の問題ごととして、テキスト選択、テキストアライメント、GC、パフォーマンスを上げている。 テキスト選択:ターミナルのテキスト選択を実現するためにDOMのテキスト選択の挙動をだいぶ上書きしなければならない。 テキストアライメント:一部の文字はモノスペースになってくれず、workaroundとして一文字ごとに固定長のspanで包む必要があるが、これはパフォーマンス上よろしくない。 GC:DOMでターミナ