オーバーロードはできません?(1)

curlではメソッドやプロシージャのオーバーロードを許していません。
例えば

{define-class Foo
  
  {method {do i:int}:void
    ...
  }
  
  {method {do s:String}:void
    ...
  }
  
  {method {do i:int, s:String}:void
    ...
  }
  
}

のように同じクラス(もしくはサブクラス)に引数の異なる同名のメソッドを複数定義するといったことができません。
しかしcurlではオーバーロードを不要とする様々な機能が用意されています。
次回から数回に渡り、オーバーロードを代替するcurl言語の便利な機能について紹介していきます。