書き散らかして放置されていた話

そういえばコピー

で私は何か書き始めようとしていたみたいだが、一体何を書きたかったんだろうか。

無名関数あれこれ

C#

int n = 2;

(int x) => {this.foo(); return x * n;};
() => n * 2;

D

int n = 2;
void int foo() {};

delegate int (int x) {foo(); return x * n;};
(int x) {x * 2;};
{n * 2;};

Boost.Lambda

int n;
int foo() {}

_1 * 2;
constant(n) * 2;
bind(foo), 2;

C++0x

int n;
int foo() {}

[] (int x) {foo(); return x * 2;}
[] {return n * 2;}

やっぱりキモいと言われる原因はlambda-introducerか。

オレオレlambda構文

int n;
^(&, n, int x) {x * n;};
lambda-expression:
	^ lambda-parameter-declaration_opt lambda-statement

lambda-introducer を削除

lambda-parameter-declaration:
	( lambda-capture_opt , lambda-parameter-declaration-list_opt ) 以下省略

lambda-statement:
	compound-statement
	{ expression-statement }

パーサ「typedef?何それおいしいの?」

http://d.hatena.ne.jp/meryngii/20081029/1225289624

を見てそういやそうだなーと思ったらもう一つ思い出した。

http://d.hatena.ne.jp/MaD/20081113#1226594924

パースのときはtypedefの意味なんて見向きもされてないけど例えば "T::type * p" をパースする時点でtypeが型なのか値なのか分からないとパースできないとかそういうことか?

確かHaskellって

テキストで書きやすくした数式だっけ?

いかに多くの人に買わせるかと言う意味では

誇張しまくった宣伝で購買意欲そそろうとするほうが優秀なんだろうけど、中身が全然伴ってないならそのうち誰も当てにしなくなるからやっぱり中身は大事だよ、と。
まぁゲームのこと。

妄想

例えば、実は世界には自分とその観察者の二人しかいなくて、周りの人は全て同じ人で、自分のことを観察しているのではないだろうか、とか、中学ぐらいまでそんな事を考えていた。

細かい面倒事

generic<typename T>
void f(I<T>^) {}

interface class I {};

value class A : I {};

f(A()); // 受け取ってほしい