タグ

2009年7月8日のブックマーク (3件)

  • RedHat Linux 技術的な質問(Part2) FAQ

    X (formerly Twitter) Quick Links Downloads Subscriptions Support Cases Customer Service Product Documentation Help Contact Us Customer Portal FAQ Log-in Assistance Site Info Trust Red Hat Browser Support Policy Accessibility Awards and Recognition Colophon Related Sites redhat.com developers.redhat.com connect.redhat.com cloud.redhat.com About Red Hat Subscription Value About Red Hat Red Hat Jobs

    pneumaster
    pneumaster 2009/07/08
    /proc/meminfoの詳細/メモリ/memory
  • 末尾再帰 - Wikipedia

    一般に再帰呼び出しが可能な言語では、サブルーチン呼び出しのたびにスタックに呼び出し先から戻るための情報を保存する。そのため再帰が深くなりすぎるとスタックオーバーフローでプログラムが異常終了する。 そのような場合、次のようにループに変換して回避する。 { 変換前 } function F (a1:T1, a2:T2, ..., an:Tn) : T0 begin P ; return func (b1, b2, ..., bn) ; end ; { 変換後 } function F (a1:T1, a2:T2, ..., an:Tn) : T0 begin loop P ; a1 := b1 ; a2 := b2 ; : an := bn ; end loop ; end ; { Ti は型、P は手続き、bi は値または a1~an に対する副作用を伴わない式である。 それ以外の識別子は変

    pneumaster
    pneumaster 2009/07/08
    tail recursion/末尾再帰/再帰から戻ってきた後にreturn以外の処理を行わない再帰のこと/末尾再帰呼出し/末尾呼出しの再帰版/オライリーのGaucheの本に少し書いてあった
  • ひげぽん OSとか作っちゃうかMona- - 末尾再帰

    最近一部で盛り上がっている「末尾再帰」について自分の理解を確認するのも兼ねて書いてみます。 (そもそも自分がふったのがきっかけっぽいので)。 上級者の方は間違い等に厳しくつっこんでもらえると助かります:-) 背景 自分が末尾再帰を知ったのは多分Schemeの勉強を始めた頃だったと思います。 例えばSICPというでは20ページあたりにこっそりと出てきます。 そのころの理解はかなり浅いもので「ふーん。」程度でした。 さて後日Schemeの処理系を実装することになりR5RSというSchemeの仕様書を読んだところ Scheme の実装は真正に末尾再帰的(properly tail-recursive) であることが要求されている。これは,たとえ繰返し計算が 構文的に再帰的手続きで記述されているときでも,定数空間 でその繰返し計算を実行することを可能にする とあり末尾再帰のことを詳しく知る必要性

    pneumaster
    pneumaster 2009/07/08
    tail recursion/末尾再帰/再帰から戻ってきた後にreturn以外の処理を行わない再帰のこと