呼び出すには関数名に続けてかっこ内に引数のリストを入れる。)関数から複数の値を返す場合などにはタプルを使う。])statistics.sumstatistics.2関数は、可変の数の引数を取ることもでき、それらは配列としてまとめられる。ネストされた内側の関数は外側の関数の変数等にアクセスすることができる。長かったり複雑だったりする関数を分割してわかりやすくすることにも使える。y}returnFifteen()関数はファーストクラスな型である。関数は、別の関数を戻り値として返すことができるということである。)関数は別の関数を引数のひとつとして取ることができる。)関数は実はクロージャ、つまり後で呼び出すことができるコードブロックの特別なケースである。クロージャのコードは、クロージャが作られた時のスコープで利用可能な変数や関数などに、たとえそのクロージャの実行時に違うスコープであっても、アクセスすることができる。例としてあげられるのはネストされた関数である。クロージャは、中かっこで囲むことで、名前無しで書くことができる。result})クロージャはもっと簡潔に書く方法がいくつかある。クロージャの型が、デリゲートのコールバックのようにすでにわかっている場合は、引数の型、戻り値の型、あるいはその両方を省略することができる。文が1つのクロージャは暗黙としてその文の値を返す。})mappedNumbers引数には、名前ではなく番号で参照することもでき、これは特に非常に短いクロージャで便利である。ある関数への最後の引数として渡されたクロージャはかっこのすぐ後に現れても良い。後にクラス名を続ける。クラス内のプロパティの宣言は、それがクラスのコンテキストの中であるという点を除けば、定数や変数と同じ方法で書ける。同様に、メソッドと関数も、同じ方法で書ける。}}クラスのインスタンスを作るには、クラス名の後ろにかっこを書く。インスタンスのプロパティやメソッドにアクセスするにはドット記法を用いる。重要なもの、つまりインスタンスが作られた時にクラスをセットアップするイニシャライザが欠けている。いう時にこう使うという例である。ように宣言時に初期化するか、またはイニシャライザの中で行う。使ってデイニシャライザを作る。サブクラスは、サブクラス名の後にコロンを続けてスーパークラス名を含める。クラスを作るのにスーパークラスはあってもなくても良い。これがないとコンパイルエラーになる。付けてもコンパイルエラーになる。)test.area()test.simpleDescription()単純なプロパティに加えて、プロパティはゲッターとセッターを持てる。後にかっこでくくって名前を付けることもできる。イニシャライザが3つの異なるステップを持っていることに注目。サブクラスで宣言されているプロパティの値をセットする。スーパークラスのイニシャライザを呼び出す。スーパークラスで定義されているプロパティの値を変更する。メソッドやゲッターやセッターを使うその他の追加セットアップはこの時点で行うことができる。下の例では、正三角形の1辺の長さが常に正方形の1辺の長さと同じであることを確実にする。)triangleAndSquare.triangle.sideLengthクラスにおけるメソッドは、関数との重要な違いが一つある。引数の名前は、関数においては関数の中でのみ使用されるが、メソッドにおいてはメソッドを呼び出す際にも使われるというということだ(1番目の引数を除く)。デフォルトでは、メソッドは引数名を呼び出し時と内部とで同じ名前で持つが、内部だけで使う2番目の名前を指定することもできる。