[#38724] 祝日判定用メソッド — Take_tk <ggb03124@...>

たけ(tk)です

19 messages 2003/11/02

[#38756] ruby-dev summary 21730-21822 /draft — Minero Aoki <aamine@...>

青木です。

14 messages 2003/11/05

[ruby-list:38764] Re: ruby-dev summary 21730-21822 /draft

From: "Akinori MUSHA" <knu@...>
Date: 2003-11-05 19:45:07 UTC
List: ruby-list #38764
 英語の話題はおもしろいので乗ってしまう…。

At Thu, 6 Nov 2003 03:37:18 +0900,
Hiroharu Sugawara wrote:
>    found that the safe interpreter of Tcl/Tk cannot refer to
>    its operating (running) environment such as ENV, OS, and libraries. 
> 
> 実行環境って、上の言い方でいいのかな?

"the running environment" で通じます。

> >     such as env, OS, library and so on. And he asked
> >     whether we should forbid to use ENV, RUBY_PLATFORM
> >     and $LOAD_PATH when $SAFE=4.
> 
> so he proposed to restrict the accesses to ENV, RUBY_PLATFORM, 
> and $LOAD_PATH env-vars when $SAFE=4

 propose to do だと、提案よりは意図を示すニュアンスになる気が
します。部分的には propose doing や suggest doing と書き換えれば
いいですが、その提案の内容が restrict というちょっと強くて堅い
事柄なので、 that 句で

so he proposed that access to .... env-vars be restricted when
$SAFE=4.

とした方が適当かも。あと、この「アクセス」はさほど回数を念頭に
置いて言っているものでもないので、数えない方が自然と思います。

> >       $SAFE >= 4 でのアクセスが禁止される.
> > 
> >       We cannot refer/modify $LOAD_PATH if $SAFE>=4.
> 
> $LOAD_PATH cannot be referred nor modified when $SAFE >= 4.
> 
> ifは仮想なので、単なる条件なら when の方がいいと思います。

referred -> referenced / referred to / read (out) でしょうか。
(reference の動詞用法は辞書にはないけど、この世界ではよく使われる)

> >       Following new methods are defined.
>                                   introduced

頭に The もほしいですね。

> >       : ENV.allow_insecure_ref(varname)
> > 	  $SAFE >= 4 での環境変数 name の読み出しを許可する.
> > 	  Allows to refer VARNAME environment variable for insecure
> > 	  programs.
> 
>           Enables insecure programs to refer VARNAME env-var.
> 
> プログラム言語の英文教科書が手元にないので、
> refer か refer to かは、わからないです。
> 変数の参照と、変数の値の参照で、言い方が違うと思います。

 「〜を参照する」と言うときはいつも refer to でいいと思いますよ。
refer を他動詞で使うときは、目的語には参照する主体が来ますよね。

 refer -> refer to / read the value of / reference でどうでしょう。

> > 	  すべての環境変数のデフォルト設定は「読み出し可」である.
> > 	  ( $SAFE >= 4 での書き込みは常に例外を発生することに注意.)
> > 	  We can refer all environment variables by default,
> > 	  for backward compatibility.
> 
>           By default, any insecure programs can refer 
>           to all the env-vars for backward compatibilify.

 even an insecure program can read ... が元の言いたいことに近い?

> > 	  読み出し禁止に設定した環境変数を $SAFE >= 4 で読み出そうとすると, 
> > 	  その環境変数が存在しない場合と同様に nil が返る.
> 
>         The reference to the deny_insecure_ref'ed env-var when $SAFE>=4
>         returns nil as if that to undefined env-vars does.

 最初の二つの the は a ですね。最後は as if it were undefined.
でしょうか。

 というか、それ以下も踏まえてまとめれば、

	For insecure programs, deny_insecure_ref'ed env-vars are
	completely invisible when $SAFE>=4, as if they were not
	defined.

ということ?

 で、メソッド名はやはりわかりにくいですね。deny_insecure_ref'ed
ってすごい動詞だ。 (^^;

 代わりに

	ENV.restrict(envvar)
	ENV.derestrict(envvar)
	ENV.restricted?(envvar)

ではどうでしょう。(derestrict は一般的な単語じゃないかも)

 あと、リストを得るという機能は、

	ENV.select { |var,| ENV.restricted?(var) }

ではだめかしら?よく使うのならメソッドにした方がいいでしょうが。

-- 
                     /
                    /__  __            Akinori.org / MUSHA.org
                   / )  )  ) )  /     FreeBSD.org / Ruby-lang.org
Akinori MUSHA aka / (_ /  ( (__(  @ iDaemons.org / and.or.jp

"It seems to me as we make our own few circles 'round the sun
          We get it backwards and our seven years go by like one"

In This Thread