Skip to content

Instantly share code, notes, and snippets.

View faithandbrave's full-sized avatar

Akira Takahashi faithandbrave

View GitHub Profile

C++雑談会の構想

概要

最大20人くらいで、C++周辺のことについて雑談する。

飲み会ではないけど、食べもの・飲みものの持ち寄り可 (お酒含む)。

成果をだすための議論をする必要はないので、なんとなくテーマに沿ってゆるふわな感じで。

形式

#include <iostream>
#include <vector>
#include <algorithm>
template <class T>
class vector_view {
std::vector<T>& base_;
std::size_t start_;
std::size_t size_;
public:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#import re
import regex as re
text = """
```cpp
# abs
## 例

『Optimized C++』 初版第1刷へのフィードバック

オライリー・ジャパン様宛に、以下のフィードバックを送りました。 技術的なフィードバックは最小限で、翻訳と訳注に対するものがメインです。

  1. 「rvalue reference」の訳語が「rvalue参照 (1.5.1, p6)」と「右辺値参照 (6.6.4, p127)」で表記揺れしています。rvalueの訳語として「右辺値」が多く使われているようですので、後者の訳語を採用するのがよいかと思います。ただし、ebookではなく書籍媒体で確認したため、この表記揺れの指摘は網羅的でない可能性があります。
  2. 「5.1.2 ならし時間コスト (p87)」の訳注について、amortized costがどの日本語訳に該当するのかが明確ではありません。「ならし時間コストは原文ではamortized cost。これは元来会計用語で償却コストとも訳される」のように、原文と訳文を対称的にする必要があると思います。
  3. 「C++11以前」という言い回しが、C++11を含まないことを意味しています。たとえば「6.1.1のスレッドローカル記憶域期間 (p98)」の一行目には以下のように「C++11以降」と「C++11以前」両方含まれており、解釈が難しい文章になっております。「C++11以降、プログラムはスレッドローカル記憶域期間を持つ変数を定義できるようになった。C++11以前は、コンパイラとフレームワークの一部が非標準として同様の機能を提供していた。」 国語辞典を引くと、「以前」が対象を含む場合と含まない場合、両方がありえるようです。法律用語としてはより厳密に「以前」が対象を含むことが定められています。プログラマとしては「以上、以下」と同様に対象を含むことが自然に思います。いずれにしても「以降」と「以前」が混在する本書においては、含む・含まないの区別は必要かと思います。他所も確認したところ「以降」が含まれる文章は正しく「対象を含む」文章になっており、「以前」が含まれる文章が全体的に「対象を含まない」ことを意図しているようです。
  4. versionの訳語として版とバージョンが統一されていません。コンパイラに対しては「バージョン」という訳語が使われていますが、C++については「版」という訳語が使われています。「ムーブセマンティクスは古い版のC++で繰り返し生じていた
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript" src="https://rawgithub.com/maxkueng/victor/master/build/victor.js"></script>
<script>
var context;
var pos;
var vec;
var speed;
var targetPos;
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript" src="https://rawgithub.com/maxkueng/victor/master/build/victor.js"></script>
<script>
var context;
var pos;
var vec;
var targetPos;
@faithandbrave
faithandbrave / acceleration.html
Created January 13, 2017 05:31
加速度によって、徐々に速度が上がっていく動作
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script>
var context;
var currentX = 0;
var vectorX = 0;
var accelX = 0;
function onInitialize() {
@faithandbrave
faithandbrave / circle.html
Created January 11, 2017 09:24
sinとcosによる回転のサンプル
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script>
var context;
var currentX = 0;
var currentY = 0;
var currentFrame = 0;
function onInitialize() {

ElixirとPhoenixのHello, world

MacのHome Brew環境でElixirの作業環境を作ったのでメモ。

Elixirのインストール

http://elixir-lang.org/install.html

$ brew install elixir
def enumerate_recursive_dir(path)
Dir::foreach(path) {|f|
next if f == '.' or f == '..'
if path =~ /\/$/
f = path + f
else
f = path + '/' + f
end
if FileTest::directory?(f)
enumerate_recursive_dir(f) {|nested_file|