stanford-oval/wikipedia huggingface dataset:
南北朝時代 (日本)
南北朝時代の元号

| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 西暦 | 1330年 | 1331年 | 1332年 | 1333年 | 1334年 | 1335年 | 1336年 | 1337年 | 1338年 | 1339年 |
| 北朝 | 元徳2年 | 元弘元年 | 正慶元年 | 正慶2年 | 建武元年 | 建武2年 | 建武3年 | 建武4年 | 暦応元年 | 暦応2年 |
| 南朝 | 元徳2年 | 元弘元年 | 元弘2年 | 元弘3年 | 建武元年 | 建武2年 | 延元元年 | 延元2年 | 延元3年 | 延元4年 |
| 干支 | 庚午 | 辛未 | 壬申 | 癸酉 | 甲戌 | 乙亥 | 丙子 | 丁丑 | 戊寅 | 己卯 |
| 西暦 | 1340年 | 1341年 | 1342年 | 1343年 | 1344年 | 1345年 | 1346年 | 1347年 | 1348年 | 1349年 |
| 北朝 | 暦応3年 | 暦応4年 | 康永元年 | 康永2年 | 康永3年 | 貞和元年 | 貞和2年 | 貞和3年 | 貞和4年 | 貞和5年 |
| 南朝 | 興国元年 | 興国2年 | 興国3年 | 興国4年 | 興国5年 | 興国6年 | 正平元年 | 正平2年 | 正平3年 | 正平4年 |
| 干支 | 庚辰 | 辛巳 | 壬午 | 癸未 | 甲申 | 乙酉 | 丙戌 | 丁亥 | 戊子 | 己丑 |
| 西暦 | 1350年 | 1351年 | 1352年 | 1353年 | 1354年 | 1355年 | 1356年 | 1357年 | 1358年 | 1359年 |
| 北朝 | 観応元年 | 観応2年 | 文和元年 | 文和2年 | 文和3年 | 文和4年 | 延文元年 | 延文2年 | 延文3年 | 延文4年 |
| 南朝 | 正平5年 | 正平6年 | 正平7年 | 正平8年 | 正平9年 | 正平10年 | 正平11年 | 正平12年 | 正平13年 | 正平14年 |
| 干支 | 庚寅 | 辛卯 | 壬辰 | 癸巳 | 甲午 | 乙未 | 丙申 | 丁酉 | 戊戌 | 己亥 |
| 西暦 | 1360年 | 1361年 | 1362年 | 1363年 | 1364年 | 1365年 | 1366年 | 1367年 | 1368年 | 1369年 |
| 北朝 | 延文5年 | 康安元年 | 貞治元年 | 貞治2年 | 貞治3年 | 貞治4年 | 貞治5年 | 貞治6年 | 応安元年 | 応安2年 |
| 南朝 | 正平15年 | 正平16年 | 正平17年 | 正平18年 | 正平19年 | 正平20年 | 正平21年 | 正平22年 | 正平23年 | 正平24年 |
| 干支 | 庚子 | 辛丑 | 壬寅 | 癸卯 | 甲辰 | 乙巳 | 丙午 | 丁未 | 戊申 | 己酉 |
| 西暦 | 1370年 | 1371年 | 1372年 | 1373年 | 1374年 | 1375年 | 1376年 | 1377年 | 1378年 | 1379年 |
| 北朝 | 応安3年 | 応安4年 | 応安5年 | 応安6年 | 応安7年 | 永和元年 | 永和2年 | 永和3年 | 永和4年 | 康暦元年 |
| 南朝 | 建徳元年 | 建徳2年 | 文中元年 | 文中2年 | 文中3年 | 天授元年 | 天授2年 | 天授3年 | 天授4年 | 天授5年 |
| 干支 | 庚戌 | 辛亥 | 壬子 | 癸丑 | 甲寅 | 乙卯 | 丙辰 | 丁巳 | 戊午 | 己未 |
| 西暦 | 1380年 | 1381年 | 1382年 | 1383年 | 1384年 | 1385年 | 1386年 | 1387年 | 1388年 | 1389年 |
| 北朝 | 康暦2年 | 永徳元年 | 永徳2年 | 永徳3年 | 至徳元年 | 至徳2年 | 至徳3年 | 嘉慶元年 | 嘉慶2年 | 康応元年 |
| 南朝 | 天授6年 | 弘和元年 | 弘和2年 | 弘和3年 | 元中元年 | 元中2年 | 元中3年 | 元中4年 | 元中5年 | 元中6年 |
| 干支 | 庚申 | 辛酉 | 壬戌 | 癸亥 | 甲子 | 乙丑 | 丙寅 | 丁卯 | 戊辰 | 己巳 |
| 西暦 | 1390年 | 1391年 | 1392年 | 1393年 |  |  |  |  |  |  |
| 北朝 | 明徳元年 | 明徳2年 | 明徳3年 | 明徳4年 |  |  |  |  |  |  |
| 南朝 | 元中7年 | 元中8年 | 元中9年 | 明徳4年 |  |  |  |  |  |  |
| 干支 | 庚午 | 辛未 | 壬申 | 癸酉 |  |  |  |  |  |  |
時代祭風俗行列の「吉野時代」の列
関数オブジェクト

関数オブジェクト（かんすうオブジェクト、英: function object）は、プログラミング言語において、関数（サブルーチンまたはプロシージャ）を、オブジェクトとしたものである。手続きオブジェクトとも言う（プロシージャ＝手続き）[要出典]。なお、ここでのオブジェクトの語は、いわゆるオブジェクト指向のそれに限らず、「第一級オブジェクト」という語におけるのと同じ、メモリ上に領域を確保されたもの、といった意味である。関数が第一級オブジェクトである場合は特に第一級関数と言う。
関数と変数の名前空間が共通である言語の場合[要追加記述]、構文の設計によっては、y = f(x) といったような、通常のサブルーチン呼び出しと全く同じ構文で、関数オブジェクトが保持しているサブルーチンを呼び出せる言語もある。一方、通常のサブルーチンのように呼び出すことはできず、applyやacceptやgetといった特別な名前のメソッドを経由して呼び出す必要のある言語もある。
また、変数束縛が閉じられた関数オブジェクトはクロージャである。C#などの.NET言語には関数オブジェクトのようなものとして、オブジェクトのインスタンスとその振る舞いであるメソッドとを結びつけて管理することのできる、デリゲートがある。無名関数も参照。
用途

関数オブジェクトの典型的な用途は、より優れたコールバックを記述することである。C言語では、コールバックには関数へのポインタを使う他ないが、コールバックの内外で状態変数を共有できない。この制限のために、関数の動的な振る舞いやインターフェイス設計が制約されてしまう。以下に例を示す。
/* ライブラリ側のコード */
typedef void my_callback_func_t(void);
typedef struct my_handler {
    my_callback_func_t* callback;
} my_handler_t;

void register_callback(my_handler_t* handler, my_callback_func_t* func) {
    handler->callback = func;
}

void invoke_callback(my_handler_t* handler) {
    if (handler->callback) {
        handler->callback();
    }
}

void perform_process(my_handler_t* handler) {
    /* 前処理 */
    /* ... */
    /* コールバック関数の呼び出し */
    invoke_callback(handler);
    /* 後処理 */
    /* ... */
}
/* アプリケーション側のコード */
void callback_func(void) {
    /* ... */
    /* ここで後述の状態変数 state にアクセスしたくても、不可能 */
}

int main(void) {
    /* 状態変数 */
    static int state = 0;

    my_handler_t handler = { NULL };
    /* コールバックとして callback_func という関数へのポインタを登録 */
    register_callback(&handler, &callback_func);

    perform_process(&handler);
}
コールバック関数内で外部の状態変数を参照するためには、グローバル変数を利用したり、構造体メンバーに状態変数へのポインタを持たせたうえでコールバック関数の引数を経由して状態変数のアドレスを渡したり、といった工夫が必要になる。
関数オブジェクトは、上記のように煩雑になりがちな設計パターンを言語機能として組み込み、関数を可搬性の高いオブジェクトとして容易に利用できるようにするものである。
LISPや、Smalltalk、C++、Java、C#、Perl、Python、Rubyなどの現代的なオブジェクト指向言語は、ほとんどが関数オブジェクト、あるいは同等の機能をサポートしており、さらに有意義な使い方をしているものもある[要追加記述]。
起源

関数オブジェクトは、LISPにおいてその初期から研究された。計算機プログラムの構造と解釈の第3章でも解説されている。
オブジェクト指向言語では、Smalltalk において、ブロックが関数オブジェクトの記法となるよう設計された。たとえば配列の各要素を通常の大小関係とは違う順序で並べ替えたい場合、比較のための関数オブジェクトを引数に取るソートメソッドを、引数としてブロックを付けて、呼び出す。ブロック内には、カスタマイズ版の比較手続きを記述する。ソートメソッド内での比較は、渡された関数オブジェクトの手続きを呼び出すことで行なわれ、期待する大小関係でのソートが行なわれる。これは、Strategyデザインパターンの完全な具現化であり、着脱可能 (pluggable) な振る舞いを促進するものである。
C++ での関数オブジェクト

C++では、クラスあるいは構造体において関数呼び出し演算子の多重定義が可能となっている。具体的には、任意の引数を持つoperator()メンバー関数を定義することで、そのオブジェクトのインスタンスを指す変数の名前が、あたかも関数名（関数指示子）であるかのような構文で、定義した関数を呼ぶことができる。このような C++ のオブジェクトを、C++ の用語ではファンクタ (functor) と呼ぶ（#C++のファンクタとファンクショノイド を参照）。
struct my_adder {
    int operator()(int a, int b) const {
        return a + b;
    }
};

my_adder f;
int result = f(2, 3);
// 以下のように呼び出すことも可能だが、通例使われない。
f.operator()(2, 3);
C++のclass/structは、デフォルトのアクセスレベル（アクセス修飾子（英語版））がprivate/publicであるという違いしかないため、関数オブジェクトの記述ではclassの代わりにstructが使われることも多い。
配列の中から特定の条件に該当する要素の個数を数えるルーチンの例を考えてみよう。ただし条件の判定処理は自由にカスタマイズできるものとする。
関数へのポインタを使用する C のプログラムは、たとえば下記のようになる。
#include <stdio.h>

/* 引数が条件に該当する場合は 1 を、該当しない場合は 0 を返す */
typedef int PredicateFunc(int x);

size_t countIf(const int data[], size_t num, PredicateFunc* predicate) {
    size_t count = 0;
    size_t i;
    for (i = 0; i < num; ++i) {
        if (predicate(data[i])) { count++; }
    }
    return count;
}

int isPositive(int x) {
    return x > 0;
}

int isEven(int x) {
    return x % 2 == 0;
}

int main(void) {
    const int data[] = { 0, 1, 2, 3, 4, 5, 6, 0, -1, -2, -3, -4 };
    printf("Count of positive numbers = %ld\n", (long)countIf(data, sizeof(data) / sizeof(*data), &isPositive));
    printf("Count of even numbers = %ld\n", (long)countIf(data, sizeof(data) / sizeof(*data), &isEven));
}
一方、C++の関数オブジェクトを利用すると下記のようになる。
#include <cstdio>

template<typename TPredicate> size_t countIf(const int data[], size_t num, TPredicate predicate) {
    size_t count = 0;
    for (size_t i = 0; i < num; ++i) {
        if (predicate(data[i])) { count++; }
    }
    return count;
}

struct IsPositiveFunctor {
    bool operator()(int x) const { return x > 0; }
};

struct IsEvenFunctor {
    bool operator()(int x) const { return x % 2 == 0; }
};

int main() {
    const int data[] = { 0, 1, 2, 3, 4, 5, 6, 0, -1, -2, -3, -4 };
    std::printf("Count of positive numbers = %ld\n", (long)countIf(data, sizeof(data) / sizeof(*data), IsPositiveFunctor()));
    std::printf("Count of even numbers = %ld\n", (long)countIf(data, sizeof(data) / sizeof(*data), IsEvenFunctor()));
}
コールバックを述語 (predicate) として countIf() 関数テンプレートに渡す際、関数へのポインタではなく構造体のインスタンス（関数オブジェクト）を渡していることに注意されたい。
上記の例において関数オブジェクトによるカスタマイズを可能にしているのは、テンプレートと関数呼び出し演算子のオーバーロードによる静的ダック・タイピングである。関数テンプレートを実体化する際の字句解析に適合しさえすれば、述語にはどんなオブジェクトでも渡せる。
コールバック関数が実行されると、他のメンバー関数と同様に働き、すなわちオブジェクトの他のメンバー（データや関数）に対して完全にアクセスすることができる。
クラス型の関数オブジェクトに加えて、C++ では別の種類の関数オブジェクトが可能である。[要校閲]
C++ のメンバーポインタや、テンプレート機能を利用することができ、テンプレートの記述力により、(関数の合成などの)別種の関数オブジェクトを定義するといったいくつかの関数型言語の技法を用いることができる。[要校閲]
C++ の Standard Template Library (STL) では、テンプレートの述語 (predicate) として関数オブジェクトを多用している。
C++ での関数オブジェクト > C++のファンクタとファンクショノイド

以上のように C++ では、関数オブジェクトは、「関数呼び出しと同じ構文で、メンバ関数を呼ぶことができるオブジェクト」として実装されている。これを C++ の用語ではファンクタと呼んでいるが、これはStandard MLのfunctorや、数学における関手とは関係ない（と考えたほうが良い）。
C++ では、主要なメソッド一つを持つオブジェクトを「ファンクショノイド」と言い、その一種で、その主要なメソッドが operator() であるオブジェクトが「ファンクタ」である、と説明される。これは C++ の用語であり、C++ を離れた文脈では、関数オブジェクトすなわちファンクタ、ではないので注意。
C++ での関数オブジェクト > 状態の保持

関数オブジェクトの利点の一つは、関数の呼び出しをまたいで状態を（オブジェクトのフィールドとして）保持できる点である。たとえば、下記のコードは10以上の数を数えるジェネレータ（引数をとらない関数）を定義し、11 回呼び出し結果を出力している。
#include <iostream>
#include <iterator>
#include <algorithm>

class countfrom {
private:
  int count;
public:
  countfrom(int n) : count(n) {}
  int operator()() { return count++; }
};

int main() {
  std::generate_n(std::ostream_iterator<int>(std::cout, "\n"), 11, countfrom(10));
  return 0;
}
関数オブジェクトで状態を保持する場合、明示的にメンバー変数を定義したうえで、関数オブジェクトのメンバーとして操作を記述しなければならなかった。C++11で導入されたラムダ式では、外部の変数のキャプチャをサポートし、クロージャを実現することができる。ラムダ式によってキャプチャされた変数は、コンパイラによって暗黙的に生成される関数オブジェクトのメンバー変数となる。
C#の関数オブジェクト

→「デリゲート (プログラミング)」を参照
D言語の関数オブジェクト

D言語には関数オブジェクトとして、デリゲートとクロージャの両方がある。
bool find(T)(T[] haystack, bool delegate(T) needle_test) {
  foreach ( straw; haystack ) {
    if ( needle_test(straw) )
      return true;
  }
  return false;
}

void main() {
    int[] haystack = [345, 15, 457, 9, 56, 123, 456];
    int   needle = 123;

    bool needleTest(int n) {
      return n == needle;
    }

    assert(find(haystack, &needleTest));
}
D言語におけるデリゲートとクロージャの違いは、コントロールが変数のスコープから一旦抜けても、変数の寿命が続いているか、そうでないかである。コンパイラにより保守的に、自動的に決定される（後から変数を参照する可能性があればクロージャとする）。
D言語は、関数リテラルやラムダ式もサポートしている。
void main() {
    int[] haystack = [345, 15, 457, 9, 56, 123, 456];
    int   needle = 123;
    assert(find(haystack, (int n) { return n == needle; }));
    assert(find(haystack, (int n) => n == needle));
}
コンパイラがインライン化できるようにするため(上記参照)、関数オブジェクトをC++形式の演算子のオーバーロードを用いて宣言することもできる。しかし、D言語ではテンプレート引数として関数等を渡す手法が一般的である。
bool find(T,F)(T[] haystack, F needle_test) {
  foreach ( straw; haystack ) {
    if ( needle_test(straw) )
      return true;
  }
  return false;
}

void main() {
    int[] haystack = [345, 15, 457, 9, 56, 123, 456];
    int   needle = 123;

    struct NeedleTest {
      int needle;
      this(int n) { needle = n; }
      bool opCall(int n) {
        return n == needle;
      }
    }

    assert(find(haystack, NeedleTest(needle)));
}
Java における関数オブジェクト

Javaでは関数が第一級オブジェクトでないため、関数オブジェクトの代わりとして、一つのメソッドを持つインタフェースが使われる。代表的なインタフェースとしては、run()メソッドを持つjava.lang.Runnableが挙げられる。実際のコーディングにおいては、そのようなインタフェースを実装するクラスの定義には、内部クラス (inner class) や、メソッド内の変数をキャプチャしてクロージャのように振る舞うことのできるローカルクラス (local class) あるいは匿名クラス (anonymous class) がしばしば使われる。
Javaの標準ライブラリの例では、java.util.Collections.sort(List, Comparator) はリストとコンパレータ（意味的には関数）を引数にとる。第2引数のコンパレータはリスト内のオブジェクトを比較する役割を持つ。しかし、Javaは関数が第一級オブジェクトでないため、java.util.Comparatorインタフェースを実装したオブジェクトを渡す。下記の例のように使用する：
List<String> list = Arrays.asList(new String[] {
    "10", "1", "20", "11", "21", "12"
});

// Comparator を実装する匿名クラスを定義して利用。
Collections.sort(list,
    new Comparator<String>() {
        public int compare(String o1, String o2) {
            return Integer.valueOf(o1).compareTo(Integer.valueOf(o2));
        }
    }
);
Java 8からは、単一の抽象メソッドを持つインタフェース（関数型インタフェース）を実装する匿名クラスの糖衣構文としてラムダ式をサポートする。ラムダ式を利用すると、以下のように簡潔に記述することができる。
Collections.sort(list,
    (String o1, String o2) -> Integer.valueOf(o1).compareTo(Integer.valueOf(o2))
);
ラムダ式の引数の型指定は省略することも可能である。Java 11以降は予約型名varを使用することもできるようになった。
また、Java 8はメソッド参照もサポートするようになった。メソッド参照は、内部的にはインタフェースを利用して実装されている。
java.util.functionパッケージには、ラムダ式やメソッド参照のターゲットとして利用可能な汎用の関数型インタフェースがいくつか定義されており、これらを利用すればユーザーコードでインタフェースを明示的に定義する手間を省くことができる。
Python における関数オブジェクト

Pythonでは、関数は、文字列や数値、リストなどをはじめとする他の任意のデータと同様のオブジェクトである。つまり、Pythonは第一級関数を扱うことができる言語である。また、__call__() メソッドを持つ任意のオブジェクトを関数呼び出しの構文で呼び出すことができる。
例として、Accumulator クラス (ポール・グレアムのプログラミング言語の文法と明快さの研究に登場する) を挙げる。
class Accumulator(object):
    def __init__(self, n):
        self.n = n
    def __call__(self, x):
        self.n += x
        return self.n
下記のように使用する(対話的インタプリタを用いている):
>>> a = Accumulator(4)
>>> a(5)
9
>>> a(2)
11
>>> b = Accumulator(42)
>>> b(7)
49
Python で関数オブジェクトを定義するもう一つの方法として、ネストした関数定義、といった形の構文を使う方法がある。
def Accumulator(n):
    def inc(x):
        inc.n += x
        return inc.n
    inc.n = n
    return inc
一方で Python には、その内部に式しか書くことができない（文が書けない）という強い制限のある lambda form しか関数リテラルに相当するものがなく、手続き的なものは名前を付けて定義しなければならない。これはそうするのが良いプラクティスとされているからである。
Lisp における関数オブジェクト

Lisp においても、関数は、文字列やベクトル・リスト・数値と同様に変数に入れたり関数から返したりできる第一級オブジェクトであり、第一級関数を扱うことができる言語である。
Lisp はその最初から (lambda ...) という特殊形式による関数リテラルをはじめとして、第一級関数を扱うことができる言語であったが、1960年代から1970年前後までの実装では、動的スコープのためクロージャにはなっておらず、funarg問題（en:Funarg problem）が認識されることとなった。Scheme で、静的スコープと無限エクステント（メモリ上のオブジェクトは参照されている限り生存し続ける）による解決が示され、Common Lisp をはじめとする現代的な Lisp の多くは静的スコープを採用しており、lambda 特殊形式ではクロージャが作られる。しかし Emacs Lisp のように動的スコープの Lisp もまだ広く残っている。
Scheme では変数と関数で名前空間が分かれておらず、変数名を関数名と同様に使ってプログラムを書くことができる。
(define (hello s)
  (print (format "hello, ~a" s)) )

(hello "world")

(let ((f hello))
     (f "Scheme") )
これを実行すると、
hello, world
hello, Scheme
のように出力される。
これに対し、伝統的な Lisp の多くや Common Lisp は変数と関数で名前空間が分かれている。同様のプログラムを Common Lisp で書いた例を示す。
(DEFUN HELLO (S)
  (PRINT (FORMAT NIL "hello, ~A" S)) )

(HELLO "world")

(LET ((F #'HELLO))
     (FUNCALL F "Common Lisp") )
これを実行すると、
hello, world
hello, Common Lisp
のように出力される。
Common Lisp では、名前に対して、変数としての値と、関数とが別々に結びつけられていて、文脈により（カッコ内の並びの先頭にあるか、そうでないかにより）どちらかがアクセスされる。F という変数に関数値を束縛する所では、通常の文脈において関数にアクセスするために #' を名前の前に付けている。一方、並びの先頭の位置に、この例では F と書いても、その名前の関数がないというエラーになる。Common Lisp では一般に、FUNCALL か APPLY 関数を使って呼び出す。
変数と関数の名前空間を分けるか同じにするか、という議論は、Lisp に限らず現代的なプログラミング言語の設計において話題になる。ML などの現代的な関数型言語では当然のように同じ名前空間である。スクリプティング言語では、Python や JavaScript は同じ名前空間としたが、Ruby ではローカル変数とメソッドで別の名前空間とした。Lisp では「Lisp-1 対 Lisp-2 の議論」などと呼ばれる（en:Common Lisp#The function namespace を参照）。
Ruby における関数オブジェクト

Ruby では、便宜上 Object クラスのローカルインスタンスメソッドを「グローバル関数」と呼んでいるといった例外はあるが、関数は存在せず、全てメソッドである。メソッドはオブジェクトではなく、変数とメソッドで名前空間が違う。
Ruby には、メソッドの他に手続きの表現としてブロックがある。Ruby のブロックは、メソッド呼び出しにオプショナルに付加できるもので、暗黙の引数といったような感じで呼び出されるメソッドに渡される。ブロックからクロージャが作られ、呼び出された側からは yield という特殊なグローバル関数により、そのクロージャを呼ぶことができる。
ブロックは直接にはオブジェクトではない。しかし、メソッド定義の仮引数の記述の最後に、&foo のように & を先頭に付けた引数を付けるなどすることで、簡単に Proc オブジェクトとして得ることができる。また、メソッド呼び出しの最後の実引数として、引数の前に & を付けることで、Proc オブジェクトをブロックの代わりに渡すこともできる。Proc オブジェクトの手続きは call というインスタンスメソッドにより呼ぶことができる。
Proc オブジェクトは文脈という環境を持つ関数オブジェクト状のものである。これに対し、レシーバ（ foo.bar() のようにメソッドを呼び出す時、foo の指すオブジェクトをレシーバと言う）という環境を持つ関数オブジェクト状のものが Method オブジェクトである。Method オブジェクトはメソッドそのものではなく、リフレクションなどのためのオブジェクトであり、感じとしては java.lang.reflect.Method に似ている。UnboundMethod はレシーバが切り離された Method であり、実行するためにはまずレシーバを bind して Method にしなければならない。
Ruby Extensions Project は、シンプルなハックを開発した。
class Symbol
   def to_proc
      proc { |obj, *args| obj.send(self, *args) }
   end
end
Symbol にこのような to_proc メソッドがあれば、foo メソッドを呼び出すような Proc オブジェクトが、:foo.to_proc というコードで得られる。& が付けられた実引数（前述）が、Proc オブジェクトでない場合は、to_proc メソッドが呼ばれるというコントラクトになっているので（ダックタイピング。これは前からそうなっていた）、たとえば配列の要素の合計を得る、というコードが [2, 3, 5, 7].inject :+ のように簡潔に書ける。Symbol#to_proc は、RubyKaigi 2006 の期間中、2006年6月11日に正式に Ruby に追加された。
また、Ruby においてファンクタという名前があるものとして、Ruby Facets プロジェクトによって導入された委譲の実装がある。委譲の最も基本的な定義は下記のようなものである:
class Functor
  def initialize(&func)
    @func = func
  end
  def method_missing(op, *args, &blk)
    @func.call(op, *args, &blk)
  end
end
Smalltalkにおける関数オブジェクト

冒頭にも述べたようSmalltalkでは関数オブジェクトに類似する機能としてブロックが存在する。他の言語同様関数的な使い方も可能であるが、複数の実行方法を備えており多機能になっている。Smalltalkでは言語構文としてif文を始め殆どの制御構文が存在せず、メッセージとこのブロックの組み合わせによってあらゆる制御を実現しておりブロックはSmalltalkの根幹をなしている。
下記に一般的なブロックの使用例を示す。[から]までがブロックである。
Number methodsFor:'comparing'
!
max: aNumber
    "レシーバーと引数を比較して大きい方を返す。"
    self < aNumber
        ifTrue:
        [
            ^ aNumber. "ブロック内ではブロックの外側にある変数も参照できる"
        ]
        ifFalse:
        [
            ^ self.
        ].
!!
上記における^は他の言語のreturnに当たる復帰文であるが、この復帰文はブロックの呼び出し階層を無視しブロックを含むメソッドの呼び出し元まで一気に戻るという特殊な働きをしており、更に他の言語と一線を隔てる特徴となっている。この復帰文によって、ブロックはより制御構文としての性格が強くなっている。
ファンクタ

ここで説明するのは C++ 用語のファンクタではない。
より形式化したものとして、数学（圏論）における関手(ファンクタ)と同様のものを持つ言語もある。たとえば、Standard MLのfunctorは、モジュールからモジュールへのマッピング である。
HaskellのFunctorは以下のような型クラスである。
class Functor f where
    fmap :: (a -> b) -> f a -> f b

-- さらに、型 f α と f α に対して定義された fmap は、以下を満たさなければならない。
-- 恒等関数を恒等関数にうつす
--   fmap id  ==  id
-- 関数合成との関係
--   fmap (func1 . func2)  ==  fmap func1 . fmap func2
Prologでは、関数のシンボルをファンクタと呼んでいる。
文献

Vandevoorde, David, & Josuttis, Nicolai M. C++ Templates: The Complete Guide, ISBN 0-201-73484-2
(Specifically, chapter 22 is entirely devoted to function objects.)
田村継

| たむら つぐる 田村 継 |
| --- | --- |
生年月日:   (2007-11-19) 2007年11月19日（17歳）
出身地:   日本 東京都
職業:  俳優
ジャンル:  テレビドラマ・映画・舞台・CM
事務所:  長良マネジメント
公式サイト:  公式プロフィール
主な作品
 テレビドラマ 連続テレビ小説『エール』  WOWOW連続ドラマ『向こうの果て』他
 
テンプレートを表示
田村 継（たむら つぐる、2007年11月19日 - ）は、日本の俳優。劇団ひまわり所属。
略歴

2020年3月30日から放送開始の連続テレビ小説「エール」に出演。
人物

・特技は、合気道二段、HIPHOP、歌
出演 > テレビドラマ

捜査会議はリビングで!（2018年、NHK BSプレミアム） - 原井三平 役
連続テレビ小説 エール（2020年、NHK）- 太郎 役
向こうの果て（2021年5月14日 - 7月2日、WOWOW） -  村上姫昌（幼少期） 役
なんで私が神説教（2025年4月12日〈予定〉- 、日本テレビ） - 吉野大輔 役
出演 > 映画

妖怪大戦争 ガーディアンズ（2021年8月13日、東宝 / KADOKAWA）
出演 > 吹き替え

ヘイト・ユー・ギブ - セカニ・カーター 役
アベンジャーズ/エンドゲーム
アダム&アダム - レイ 役
クリスマス・クロニクル PART2
クロース
出演 > 舞台

ファンタジック・オペラミュージカル「スサノオと美琴～古事記～」 - ヒロシ 役
出演 > その他

劇団ひまわり『Dance Connection 2018 -Incredibles-』でぃめんしょんで参加
劇団ひまわり『Dance Connection 2021 -ASTROBOY-』-第1部- 特別公開
ニュートラックいいたて

| ニュートラックいいたて |
| --- | --- |
  画像をアップロード
 ja
基本情報
所在地:  福島県相馬郡飯舘村飯樋字大西1番6号
座標:  北緯37度40分44.2秒 東経140度42分9.6秒﻿ / ﻿北緯37.678944度 東経140.702667度﻿ / 37.678944; 140.702667座標: 北緯37度40分44.2秒 東経140度42分9.6秒﻿ / ﻿北緯37.678944度 東経140.702667度﻿ / 37.678944; 140.702667
開設日:  2000年10月22日
閉場日:  2018年10月21日
施設設置者:  株式会社ニュートラックかみのやま
管理施行者:  特別区競馬組合 岩手県競馬組合
発売窓口:  自動発売機9
払戻窓口:  自動払戻機4・有人窓口2
発売単位:  100円単位
開催日営業時間:  10:00- ナイター開催時は14:45- （営業休止中）
最寄駅:  なし
最寄IC:  なし
駐車場:  780台（無料）
外部リンク:  ニュートラックいいたて[リンク切れ]
テンプレートを表示
ニュートラックいいたては、福島県相馬郡飯舘村に設置されていた場外勝馬投票券発売所である。
概要

上山競馬場を運営していた山形県上山市が、その場外馬券売場として福島県相馬郡飯舘村飯樋に建設。2000年10月22日に営業を開始した。なお、営業開始時から売上の1%は地元の飯舘村へ交付されていた。
2003年11月に上山競馬場が廃止されると、競馬を主催しなくなった上山市は競馬法により場外発売をすることができなくなったため、以降は上山市が出資した株式会社ニュートラックかみのやまが施設を所有し、特別区競馬組合および岩手県競馬組合に貸し出す形で場外発売が行われていた。
発売していた賭式は、南関東公営競馬と岩手競馬の全種類。ただし岩手競馬については発売されない日もあった。
2011年3月11日に発生した東日本大震災、および福島第一原子力発電所事故のあとは避難指示区域とされたことで「当面の間閉鎖する」として発売を休止していた。2017年3月31日をもって避難指示は解除されたものの、「施設の損耗など今後の経営が困難」として2018年10月21日をもって廃止された。
交通

国道399号沿いにあるが、周囲に鉄道や高速道路はない。来場は自家用車となる。
1933年

| --- | --- |
千年紀::   2千年紀
世紀::  19世紀 - 20世紀 - 21世紀
十年紀::  1910年代 1920年代 1930年代 1940年代 1950年代
年::  1930年 1931年 1932年 1933年 1934年 1935年 1936年
1933年（1933 ねん）は、西暦（グレゴリオ暦）による、日曜日から始まる平年。昭和8年。
他の紀年法

干支：癸酉
日本（月日は一致）
昭和8年
神武天皇即位紀元2593年
中国（月日は一致）
中華民国：中華民国22年
中華共和国：中華共和国元年
満洲国：大同2年
朝鮮（月日は一致）：日本統治時代
檀紀4266年
主体22年
阮朝（ベトナム）
保大7年12月6日 - 保大8年11月15日
モンゴル人民共和国（月日は一致）
モンゴル人民共和国23年
仏滅紀元：2475年 - 2476年
イスラム暦：1351年9月4日 - 1352年9月14日
ユダヤ暦：5693年4月3日 - 5694年4月13日
修正ユリウス日(MJD)：27073 - 27437
リリウス日(LD)：127914 - 128278
※檀紀は、大韓民国（韓国）で1948年に法的根拠を与えられたが、1962年からは公式な場では使用されていない。

※主体暦は、朝鮮民主主義人民共和国（北朝鮮）で1997年に制定された。
できごと

ヴェント・ア・フード社が初の台所用換気装置（英語版）を発明した。
できごと > 1月

1月1日
日本陸軍が山海関で中華民国軍と衝突。
ラジオ放送の時報が手動から自動式になる。
1月2日 - 日本陸軍が山海関を占領。
1月9日 - 岡田啓介海軍大臣（齋藤内閣：斎藤実首相）が定年退官に伴い、辞職（後任は、大角岑生海軍大将）。
1月10日 - 東京商科大学教授大塚金之助が検挙される。
1月12日 - 元京都帝国大学教授河上肇が検挙される。
1月28日 - 独シュライヒャー内閣総辞職（事実上、ヴァイマル共和政廃止）。
1月30日 - ヒトラーが独首相に就任、国民社会主義ドイツ労働者党（ナチ党）の政権獲得。
できごと > 2月

2月4日 - 長野県で教員が思想問題で多数（66校、230名）検挙される（長野県教員赤化事件）、二・四事件。
2月9日 - パリ国立音楽院を首席で卒業した原智恵子が、帰国後初のピアノ独奏会（日比谷公会堂）。
2月12日 - 三原山で女学生が自殺し、三原山自殺ブームが起こる。
2月16日 - 城東線が電化（大阪-天王寺間）。
2月20日 - 作家小林多喜二が、治安維持法違反容疑で逮捕される。東京・築地署に留置され特別高等警察の拷問により虐殺される。
2月23日 - 日本陸軍、熱河省に侵攻。
2月24日
国際連盟が、日本軍の満洲撤退勧告案を42対1で可決。松岡代表退場。
山陰本線全通（京都-幡生間）。
2月27日
ドイツ国会議事堂放火事件。
バーナード・ショー来日。
2月28日 - ドイツ国・ヒトラー内閣、国会議事堂放火事件を口実に「ドイツ国民と国家を保護するための大統領令」を公布。憲法が事実上停止される。
服部之総、論文『明治維新の革命及び反革命』（「日本資本主義発達史講座」）発表。
できごと > 3月

3月3日
昭和三陸地震（M8.1、死者1522名、不明1542名、負傷1万2053名）。
上海で三極電信学校（後の清雲科技大学）開校。
3月4日 - フランクリン・ルーズベルトが第32代米大統領に就任。ニューディール政策始動。
3月10日 - 米国ロングビーチ (カリフォルニア州)地震。
3月11日 - 大角岑生海軍大臣（齋藤内閣：斎藤実首相）による大角人事始まる（山梨勝之進海軍大将予備役編入）。
3月12日 - フランクリン・ルーズベルト米大統領が初の炉辺談話を行う。
3月16日 - 東京市で初の市会議員選挙（投票率：70.2%）。
3月20日 - 髙島屋日本橋店開業。
3月24日 - 独国会で全権委任法が可決され、ナチス独裁政治が確立。（ナチ党の権力掌握、ナチス・ドイツ成立）。
3月27日 - 日本政府が国際連盟脱退の詔書（昭和天皇）を発布。
3月31日
齋藤首相、国際連盟脱退を伊勢神宮に報告。
文官分限令により東北帝国大学教授の松本彦七郎が休職を命じられる。同日、同大学副手の山内清男依願解嘱。
できごと > 4月

4月1日
満洲国が非承認国に対して、門戸閉鎖。
金鶴香水（現・マンダム）が「丹頂チック」を発売。
川口市（埼玉県）が、市制施行。
4月3日
京都競馬場が全焼。
仏軽巡洋艦ジャンヌ・ダルクが横浜に入港。
米海軍飛行船アクロンが墜落（死者73名）。
4月5日 - 皇道会結成（平野力三ら）。
4月6日 - 小山松吉法相（齋藤内閣：斎藤実首相）が司法官赤化事件引責で辞表提出をするが、昭和天皇の沙汰で留任。
4月7日 - 米国で、14年ぶりに飲酒解禁（憲法修正第21条）。
4月9日 - 色刷になった小学国語読本が絵本代りに買われて品不足、授業の支障となる。
4月10日 - 関東軍が長城線を越えて、華北に進撃開始。
4月11日 - 蔣介石が、南昌で第5次共掃戦（共産党掃討戦）を準備開始。
4月12日 - 静岡県浜崎村に、三井海洋生物学研究所が開設。
4月16日 - 女流飛行家マリーズ・イルズが、パリより羽田に着陸。
4月19日
関東軍に長城線への帰還命令。
米国で金本位制停止。
4月22日 - 鳩山一郎文相（齋藤内閣：斎藤実首相）が、滝川幸辰京大教授の罷免を小西重直総長に要求（滝川事件）。
4月23日 - 関東軍が長城線へ撤退完了。
4月28日 - 大日本帝国陸軍、少年航空兵制度開始。
4月29日 - 天長節（昭和天皇誕生日：32歳）の日比谷公園で、国際連盟脱退詔書奉戴式が挙行される。学生2万人が参加。
できごと > 5月

5月1日 - 弁護士法全部改正（昭和8年法律第53号）。女性の弁護士への就業が可能となる。
5月3日 - 大阪市営地下鉄御堂筋線の梅田（仮） - 心斎橋間が開通。日本初の公営地下鉄。
5月7日 - 日本軍、華北に侵入。
5月27日
ウォルト・ディズニー・カンパニー製作のアニメーション映画『三匹の子ぶた』が公開される。
シカゴ万国博覧会始まる。
5月31日 - 日本が中国国民党との間で塘沽協定を結ぶ（満洲事変の終結）。
できごと > 6月

6月5日 - 聖路加国際病院開院式
6月6日
アメリカニュージャージー州で世界初のドライブインシアターが開業する。
山陽電気鉄道設立。
6月14日 - 松竹で桃色争議始まる。
6月17日
大阪で陸軍の兵士と警察官が掴み合いの喧嘩。軍部 - 内務省間の抗争に発展（ゴーストップ事件）。
阪神本線岩屋 - 神戸（現・神戸三宮）間が地下線により開業。
6月18日 - 安田銀行玉島支店強盗殺人事件が起こる。
6月19日 - 丹那トンネル貫通。着工より15年2箇月。
6月20日 - 夕刊大阪新聞社から「日本工業新聞」（現在の産経新聞）創刊。
6月26日 - NHK大阪放送局、NHK名古屋放送局第2ラジオが放送開始。
できごと > 7月

7月1日 - 『東京音頭』が発売され、爆発的ヒットとなる。
7月4日 - 英領インド帝国、独立運動家マハトマ・ガンジーが投獄される。
7月6日 - 米国シカゴ、コミスキー・パークでメジャーリーグ初のオールスターゲーム開催。
7月9日 - 松山城放火事件。
7月11日 - 神兵隊事件。
7月20日 - ナチス・ドイツのフランツ・フォン・パーペン副首相とローマ教皇庁のパチェッリ枢機卿（後のローマ教皇ピウス12世）との間でコンコルダート締結。（ライヒスコンコルダート）
7月22日 - ワイリー・ポストが単独世界一周飛行。15,596マイルを、7日18時間45分。
7月25日 - 山形県山形市で気温40.8度を記録。（2007年8月16日に岐阜県多治見市と埼玉県熊谷市で40.9度を記録し、日本の公式記録を更新した。）
滝川事件で、滝川幸辰、佐々木惣一、末川博等、6人の教授が免官される。
できごと > 8月

8月1日 - 改正図書館令施行（政府による図書館統制強化開始）
8月9日 - 第1回関東地方防空大演習実施
8月11日 - 桐生悠々の信濃毎日新聞記事「関東防空大演習を嗤ふ」が 問題化
8月15日 - 深川祭で神輿が永代橋渡御（落橋事故以来126年ぶり）
8月18日 - ナチス・ドイツ主導で開発された国民ラジオの一号機VE301Wが初公開。
8月19日 - 第19回全国中等学校優勝野球大会（甲子園球場）において、中京商が延長25回の激闘の末明石中を1-0で下す（中京商対明石中延長25回）。
8月23日 - 採用を開始した陸軍少年航空兵の倍率57倍（定員170名に9731名が応募）
8月24日 - 五・一五事件被告に対する減刑嘆願書が7万通殺到
できごと > 9月

9月1日 - 大阪放送局が学校放送を開始
9月5日 - キューバでバティスタによる軍事クーデター。事実上の独裁者となる。
9月8日 - スペインでアサーニャ内閣総辞職
9月14日 - 内田康哉外相辞任。後任に広田弘毅を任命。
9月15日 - 中央線東京・中野間で急行運転開始（朝夕のみ）。総武線も中野まで乗入れ。
9月19日 - 伊勢丹が神田から新宿に出店
9月23日 - 第1回日本ヨット選手権大会開催（品川沖）
9月24日 - 東京赤羽に軍用犬養成所開所
9月27日 - 軍令海第5号「軍令部令」公布（同10月1日施行）。「海軍軍令部」は“海軍”が外れた「軍令部」に、「海軍軍令部長」は「軍令部総長」に改称。
土屋喬雄が「改造」の論文で、服部之総の論文を批判。マニファクチュア論争勃発。
できごと > 10月

10月1日 - 滋賀銀行設立（百三十三銀行と八幡銀行が合併）
10月3日 - 初の五相会議が開催される
10月5日
長野県営の上高地帝国ホテル開業
築地小劇場創立十周年記念改築完成公演（坪内逍遙「ハムレット」）
10月9日 - 内蒙古自治政府発足（綏遠事件（1936）の発端）
10月10日 - ユナイテッド航空機チェスタートン爆破事件
10月14日 - ドイツが国際連盟を脱退。
10月17日 - アインシュタインが米国に亡命
10月22日 - 水原リンゴ事件。秋季リーグ早大対慶大戦で乱闘騒ぎ
10月28日 - パレスチナでユダヤ人入植者増加による暴動起こる(パレスチナ独立戦争（1936）の発端)
できごと > 11月

11月2日 - 東京・大阪間夜間定期郵便飛行開始
11月7日 - 神戸で第1回「みなとの祭」開催（〜8日）。2百万人の人出。
11月8日
蚕糸恐慌。生糸暴落し産繭・生糸の輸出統制開始
丸善石油設立
11月17日
佐々木茂索、久米正雄、川口松太郎、里見弴ら作家15名が賭博で検挙さる（文士賭博事件）
米国、ソ連を承認
11月18日 - 府中競馬場開場
11月19日 - 昭和天皇の特命により、ゴーストップ事件終結。当事者2名に和解成立。
11月25日 - 芝浦スケート場開場
11月28日 - 野呂栄太郎が検挙される
できごと > 12月

12月3日 - 水原茂選手ら慶大生8人を含む35人が麻雀賭博で検挙（水原は4日野球部を除名、6日より停学）
12月5日 - 米国で憲法修正第21条批准（禁酒法廃止）
12月10日 - 京成本線上野公園～日暮里間開業
12月12日 - 長崎医科大学で学位売買が発覚（20日全教授が辞表提出）
12月13日 - 田辺五兵衛商店（後の田辺製薬）設立
12月23日
皇太子明仁（昭和天皇第一皇男子、第125代天皇、2019年5月から上皇）誕生（サイレン吹鳴で発表。1回だけなら女子、2回なら男子で、2回鳴った）。同日は、1989年(平成元年)から2018年（平成30年）までの天皇誕生日（日本のナショナル・デー）。
第65回帝国議会、召集。
フランスで、スタヴィスキーによる詐欺が発覚（翌年、政治問題に発展）。
12月24日
東京有楽町に、日本劇場開場。
鹿児島県口永良部島が噴火（全壊14戸、死者8名）。
12月26日 - 自動車製造株式会社（後の日産自動車）、設立。
12月27日 - 東京ステーションホテルが鉄道省直営となり、東京鉄道ホテルに改称・開業。
芸術・文化・ファッション

シカゴ万国博覧会
大相撲 （幕内最高優勝）
春場所 - 男女ノ川登三
夏場所 - 玉錦三右衛門
恋の花咲く 伊豆の踊子
キング・コング
コングの復讐
巴里祭（監督：ルネ・クレール）
我輩はカモである（監督：マルクス兄弟）
誕生

→「Category:1933年生」も参照
誕生 > 1月

1月1日 - 渥美國泰、俳優（+ 2009年）
1月1日 - 楠侑子、女優
1月2日 - 森村誠一、小説家（+ 2023年）
1月3日 - 5代目三遊亭圓楽、落語家（+ 2009年）
1月4日 - 市川昭介、作曲家(+ 2006年)
1月4日 - 石橋雅史、俳優・空手家（+ 2018年）
1月4日 - 初代コロムビア・ローズ、歌手
1月5日 - 米山光男、元プロ野球選手
1月9日 - 藤島泰輔、小説家・評論家（+ 1997年）
1月9日 - 伊藤竹男、国営競馬、日本中央競馬会の騎手ならびに調教師
1月10日 - 三善晃、作曲家（+ 2013年）
1月10日 - 田口計、俳優・声優
1月10日 - 三原葉子、女優（+ 2013年）
1月11日 - 小林清志、俳優・声優・ナレーター（+2022年）
1月11日 - 岡田茉莉子、女優
1月15日 - 山田利昭、元プロ野球選手 （+ 2001年）
1月18日 - レイ・ドルビー、米国の音響技術者、ドルビーラボラトリーズ創立者（+ 2013年）
1月20日 - ジーン・スチブンス、元プロ野球選手（+ 2019年）
1月23日 - 恩地日出夫、映画監督（+ 2022年）
1月24日 - 宇波彰、哲学者、文芸・芸術評論家（+ 2021年）
1月25日 - コラソン・アキノ、元フィリピン大統領（+ 2009年）
1月25日 - 生島治郎、小説家（+ 2003年）
1月25日 - 内海武彦、プロ野球選手
1月26日 - 藤本義一、小説家（+ 2012年）
1月26日 - 春山希義、小説家（+ 2009年）
1月29日 - 75センツ、歌手・アコーディオン奏者（+ 2010年）
1月29日 - 宇佐美徹也、スポーツライター、プロ野球記録部（+ 2009年）
1月31日 - 石井敏郎、声優・市議会議員
1月31日 - ベルナルド・プロベンツァーノ、シチリア・マフィアの有力者（+ 2016年）