pike
「pike」の意味・「pike」とは
「pike」とは、英語で主に二つの意味を持つ単語である。一つ目は、長い棒の先端に鋭い刃がついた武器を指す。中世のヨーロッパでよく使われたこの武器は、敵の騎兵を防ぐために歩兵が使用した。二つ目は、一種の淡水魚を指す。この魚は、北半球の冷涼な水域に生息し、体長1メートル以上に成長することもある。「pike」の発音・読み方
「pike」の発音は、IPA表記では /paɪk/ となる。IPAのカタカナ読みでは「パイク」となり、日本人が発音するカタカナ英語では「パイク」と読む。この単語は発音によって意味や品詞が変わる単語ではない。「pike」の定義を英語で解説
「pike」の定義を英語で説明すると、"A long spear formerly used by infantry."となる。また、魚の意味では"A long-bodied predatory freshwater fish with a pointed snout and large teeth, of northern temperate regions."となる。「pike」の類語
「pike」の類語としては、武器の意味では「spear」、「lance」がある。これらも長い棒の先に刃がついた武器を指す。魚の意味では、「muskie」、「pickerel」が類語となる。これらも同じく淡水魚を指す。「pike」に関連する用語・表現
「pike」に関連する用語としては、「pikestaff」がある。これは「pike」の棒部分を指す言葉である。また、「pike position」という表現もある。これは体操やダイビングで体を前方に折り曲げ、脚を伸ばした姿勢を指す。「pike」の例文
1. English: The soldier held a pike in his hand.日本語訳: 兵士は手にパイクを持っていた。
2. English: Pike is a common fish in this lake.
日本語訳: パイクはこの湖でよく見られる魚である。
3. English: He caught a big pike.
日本語訳: 彼は大きなパイクを釣った。
4. English: The knight was attacked by a pike.
日本語訳: 騎士はパイクに攻撃された。
5. English: Pike is a predatory fish.
日本語訳: パイクは肉食性の魚である。
6. English: The pikestaff was made of oak.
日本語訳: パイクスタッフはオークで作られていた。
7. English: He performed a dive in the pike position.
日本語訳: 彼はパイクポジションで飛び込みを行った。
8. English: The pike was longer than a meter.
日本語訳: パイクはメートル以上の長さがあった。
9. English: The infantry was equipped with pikes.
日本語訳: 歩兵はパイクで装備されていた。
10. English: He was skilled in using a pike.
日本語訳: 彼はパイクの使い方に長けていた。
パイク【pike】
Pike
Pike
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2025/01/14 04:58 UTC 版)
パラダイム | マルチパラダイム: オブジェクト指向、関数型、手続き型 |
---|---|
登場時期 | 1994年 |
設計者 | Fredrik Hübinette |
開発者 | Pike開発チーム(リンショーピング大学計算機・情報科学科がサポート) |
最新リリース | 8.0.1738[1]/ 2022年1月30日[1] |
評価版リリース | 9.0.9[2] / 2024年9月19日[2] |
型付け | 静的、動的、マニフェスト |
主な処理系 | Pike |
影響を受けた言語 | LPC、C言語、µLPC |
Pike は、インタプリタ型の汎用高級クロスプラットフォーム動的プログラミング言語であり、C言語に良く似た文法を持つ。他の動的言語とは異なり、Pike は静的型付けも動的型付けも可能で、明示的な型定義を必要とする。柔軟な型システムであり、動的型付き言語として素早い開発と柔軟なコードが可能である一方、静的型付き言語としての利点も併せ持っている。Pike にはガベージコレクション機能、豊富なデータ型、第一級無名関数、各種プログラミングパラダイム(オブジェクト指向、関数型および命令型プログラミング)のサポートといった特徴がある。Pike は自由ソフトウェアであり、GPL、LGPL、MPL でライセンスされている。
歴史
Pike の起源となったのは、LPC というMUDのために開発された言語であった。スウェーデンのリンショーピング大学のコンピュータ同好会 Lysator の Fredrik Hübinette や Per Hedbor らがMUDドライバから言語部分と仮想機械部分を分離し、各種アプリケーションの高速プロトタイピング言語として使った。LPC のライセンスは商用利用を許していなかったため、新たなGPL実装が1994年に書かれ、これを μLPC(マイクロLPC)と呼んだ。1996年、商用利用が広がる期待を込めて μLPC を Pike と改称(Pike はカワカマス類のことで、ロゴもカワカマスの絵である)。彼らの設立した会社は現在では Roxen Internet Software として知られ、Pike プログラマを数多く抱え、Pike 開発に関するリソースを提供している。2002年、リンショーピング大学のプログラミング環境研究所が Roxen に代わって Pike の保守を行うようになった。Pike プログラマの何人かはオペラ・ソフトウェアのリンショーピング事業所に就職した。そこでは、Opera Mini アプリケーションのサーバ/ゲートウェイ部分にPikeが使われている。
文法の概要
Hello World
Pike による Hello World プログラムは次のようになる。
int main() {
write("Hello world!\n");
return 0;
}
このプログラムを解説すると、次のような点が挙げられる。
- 最初の行はmain関数の先頭部分であり、インタプリタに対してプログラムを実行開始する箇所を知らせる役目を果たす。
- write 関数は、多くの場合コマンド行インタフェースとなっている標準出力バッファに文字列リテラルを送る。
- 3行目は、main関数から抜け出す際の状態を指定している。
- 最後の行は、インタプリタに対して main 関数の最後尾に達したことを知らせる役目を果たす。
データ型
以下の一覧はPikeが提供する標準データ型を全て示したものである。より高度なデータ型(シーケンス、キュー、ヒープ、スタックなど)はADT(Advanced Data Types)モジュールにあり、Pike に標準で含まれている。
基本データ型:
- int
- float
- string
コンテナ型:
- array
- mapping
- multiset
その他の型:
- program (クラスをコンパイルしたものを表す)
- object (クラスのインスタンス)
- function
Pike は全変数に明示的な型宣言を必要とする。つまり静的型付き言語であり、コンパイル時に型の誤りを検出する。以下のコードでは "number" という変数は整数型と宣言されているため、浮動小数点数や文字列を代入しようとしているのでコンパイル時にエラーとなる。
int number; // 整数変数なので、整数しか代入できない。
number = 5.5; // 5.5 は浮動小数点数なので、エラーになる。
number = "5"; // "5" は文字列なので、エラーになる。
このような性質は、動的プログラミング言語としては制限が強すぎるとされることが多い。しかし、C、C++、Java などとは異なり、Pike はより柔軟な型システム(タグ付き共用体)を採用している。このシステムでは、複数の型を格納できる変数を宣言でき、C言語の系統では共用体の境界を無視しないと同じようなことは実現できない。
以下の例は、整数または浮動小数点数を保持できる一つの変数を示したものである。
int|float number; // 整数'''または'''浮動小数点数の変数
number = 5; // これは正しい。
number = 5.5; // これも正しい。
このように変数が複数のデータ型の値を保持できるため、変数がその時点で保持しているデータ型を知ることができる関数群がある。それらはデータ型名に p を後置した名前であり、intp、floatp、stringp などがある。
int|float number;
number = 5;
intp(number); // number には int が代入されているので true を返す。
floatp(number); // false を返す。
number = 5.5;
floatp(number); // number は新たに float を代入されているので true を返す。
さらに、特別なデータ型 "mixed" がある。この場合、任意のデータ型をその変数に代入可能である。
mixed anything;
anything = 5; // anything の値は整数値の 5 になる。
anything = 5.5; // anything の値は浮動小数点数値の 5.5 になる。
anything = "5"; // anything の値は文字列の "5" になる。
Pike では、値の型を変換する手段として明示的な cast も使うことができる:
mixed anything;
anything = (int)5.5; // anything の値は整数値の 5 になる。
anything = (string)anything; // anything の値は文字列の "5" になる。
脚注
- ^ a b “Pike 8.0.1738 Release notes”. 2024年9月23日閲覧。
- ^ a b “Release v9.0.9 · pikelang/Pike · GitHub”. 2024年9月23日閲覧。
外部リンク
- Home - Pike Programming Language 公式ウェブサイト
- コミュニティ
「pike」の例文・使い方・用例・文例
固有名詞の分類
- pikeのページへのリンク