C++に関するQuramyのブックマーク (6)

  • 気鋭の縄文陶芸家はなぜC++のエキスパートなのか

    ITに全く関係ない分野からITに飛び込んで活躍しているエンジニア」や「ITIT以外の分野の境界を行き来しながら成果を上げているエンジニア」などを「越境エンジニア」と名付け、1カ月に一人ずつインタビューを掲載する。今月取り上げるのは村上原野(むらかみげんや)氏。縄文土器にインスピレーションを受けた創作を行っている陶芸家だ。同時にネットでは「狂える中3女子ボレロ村上」というハンドルネームでC++に詳しいプログラマーとしても知られている。今回は、縄文文化に深く影響を受けた生い立ちやプログラミングとの出会いなどを聞いた。 私の肩書は縄文造形家であり、陶芸の縄文アートを手掛けています。縄文アートとは、日の縄文時代の造形やスピリットにインスピレーションを受けたアートの総称です。私はその中でも、現代の窯で焼く陶芸とは全く異なる縄文時代の焼き方、土、造形技法といった縄文そのものの技法を再現して創作を

    気鋭の縄文陶芸家はなぜC++のエキスパートなのか
    Quramy
    Quramy 2018/01/17
    ろくろが似合う
  • C++11TMPによるコンパイル時コンパイラltmpcを支えるテンプレートメタプログラミングテクニック - Qiita

    C++のテンプレートメタプログラミングによるコンパイル時C言語コンパイラ、「ltmpc」を作っています。まだまだ実装すべきことはたくさんありますが、最低限動くようになってきました。 ltmpcのはなし 実は、以前にC11のフルセットをサポートするC言語のコンパイラがC++TMP上に実装されたことがありました。 コンパイル中にコンパイルする「コンパイル時Cコンパイラ」をつくった話 しかし、この自動生成法のアプローチでは、メモリ使用量が爆発する問題から、残念ながら現存するコンパイラで現実的なコンピュータ上で動かすことはできません。 テンプレートメタプログラミングで、C言語のコンパイラほど大きな「動く」プログラムが作られたことは今までになかったように思われます。今回は、いかにして「動く」TMPプログラミングを行っていくか、というおはなしをしたいと思います。 既存技術の紹介 constexprメタ

    C++11TMPによるコンパイル時コンパイラltmpcを支えるテンプレートメタプログラミングテクニック - Qiita
    Quramy
    Quramy 2017/12/28
  • GitHub - grailbio/bazel-compilation-database: Tool to generate compile_commands.json from the Bazel build system

    Quramy
    Quramy 2017/12/25
    Bazelのプロジェクトでcompile_command.jsonを作成するtarget
  • mallocを再実装した話 - abcdefGets

    C++ AdventCalendarの12日目 普段私はWEBのフロントエンド仕事にしている。 つまり使う言語はjavascript/typescript等のScript言語だ。 ただ前職や趣味、OSS等でC++によく触っていたので昔実装したmallocの話をすることにした。 mallocとは mallocとはC言語のstdlib.hに含まれるメモリ割り当て関数のことで、 C++やその他の多くの言語で内部的に利用されている。 ヒープを割り当てる方法はいくつかあるが、このmallocがもっともメジャーといえるだろう。 mallocを再実装した 今回はmallocを自分で再実装してちょっと早くした話を書く。 再実装した理由は色々あるが最も大きな理由はただの好奇心。 yatscというtypescriptのコンパイラをC++で書こうと思って実装を始めたときに作った。 ただしyatsc自体は未完で

    mallocを再実装した話 - abcdefGets
  • EmscriptenでCからJavascriptの関数を呼び出す - 0x90

    Javascriptは嫌だ!(定期) ということでRustJavascriptの代替をしちゃおうと思ったのですが、DOM操作がかなり微妙でした。ということでRustに行く前にCでJavascriptの関数を呼び出すところからのメモ。 RustからのDOM操作の現状 今のところあるライブラリは github.com のもの。ちょっと関数名もアドホックだし実装されてないのもあるな~とかそういう問題もあるんですが、まあじゃあどうやってJS側を呼んでいるか見てみましょう。 github.com はい。ということで、 extern "C" { pub fn emscripten_asm_con(s: *const libc::c_char); pub fn emscripten_asm_const(s: *const libc::c_char); pub fn emscripten_asm_con

    EmscriptenでCからJavascriptの関数を呼び出す - 0x90
  • スクールガールストライカーズの 内製クライアントエンジン

    近年、ハイスペックなスマートフォン、高品質なネットワークが普及し、それによりモバイルゲームの制作手法やそれを取り巻く環境も変化してきました。スクウェア・エニックスでは、そのような環境の変化に対して、日々新たなチャレンジをし続けています。そして、このようなスピード感溢れる業界の流れには、会社の枠を超えた技術情報の共有、交流が欠かせないと感じております。 そこでこの夏、社内のエンジニア・テクニカルディレクターによる最新のモバイル開発の技術情報や社内モバイルエンジン、開発秘話によるセッションをメインに、スクウェア・エニックス モバイル オープンカンファレンスを開催する運びとなりました。また、セッションの後は登壇する弊社スタッフと直接ディスカッションやフリートークができる場を設けております。この機会にスクウェア・エニックスという会社についても、より詳しく知って頂ければ幸いです。 マネージャー・テク

    Quramy
    Quramy 2017/11/13
  • 1