[#19685] [Oniguruma] Version 1.8.1 — "K.Kosako" <kosako@...>

ftp.ruby-lang.orgに、onigd20030301.tar.gzを置きました。

92 messages 2003/03/01
[#19687] Re: [Oniguruma] Version 1.8.1 — matz@... (Yukihiro Matsumoto) 2003/03/02

まつもと ゆきひろです

[#19688] Re: [Oniguruma] Version 1.8.1 — Tanaka Akira <akr@...17n.org> 2003/03/02

In article <1046613803.268414.3770.nullmailer@picachu.netlab.jp>,

[#19748] [Oniguruma] Version 1.8.2 — "K.Kosako" <kosako@...> 2003/03/05

Tanaka Akiraさんの<871y1pu8am.fsf@serein.a02.aist.go.jp>から

[#19749] Re: [Oniguruma] Version 1.8.2 — "Akinori MUSHA" <knu@...> 2003/03/05

At Wed, 5 Mar 2003 18:07:17 +0900,

[#19750] Re: [Oniguruma] Version 1.8.2 — "K.Kosako" <kosako@...> 2003/03/05

Akinori MUSHAさんの<86r89mi39s.wl%knu@iDaemons.org>から

[#19793] Re: [Oniguruma] Version 1.8.2 — "Akinori MUSHA" <knu@...> 2003/03/11

At Wed, 5 Mar 2003 18:18:31 +0900,

[#19808] [Oniguruma] Version 1.8.4 — "K.Kosako" <kosako@...> 2003/03/12

Akinori MUSHAさんの<86bs0iqoif.wl%knu@iDaemons.org>から

[#19825] Re: [Oniguruma] Version 1.8.4 — Tanaka Akira <akr@...17n.org> 2003/03/16

In article <20030312044626.2D879C2@helium.ruby-lang.org>,

[#19858] Re: [Oniguruma] Version 1.8.4 — Tanaka Akira <akr@...17n.org> 2003/03/20

In article <20030318015042.DCBB859A@helium.ruby-lang.org>,

[#19866] Re: [Oniguruma] Version 1.8.4 — "K.Kosako" <kosako@...> 2003/03/21

Tanaka Akiraさんの<87llzavfl9.fsf@serein.a02.aist.go.jp>から

[#19868] Re: [Oniguruma] Version 1.8.4 — Tanaka Akira <akr@...17n.org> 2003/03/21

In article <20030321040221.EC03C5AA@helium.ruby-lang.org>,

[#19869] Re: [Oniguruma] Version 1.8.4 — matz@... (Yukihiro Matsumoto) 2003/03/21

まつもと ゆきひろです

[#19870] Re: [Oniguruma] Version 1.8.4 — Tanaka Akira <akr@...17n.org> 2003/03/21

In article <1048256492.877945.30145.nullmailer@picachu.netlab.jp>,

[#19873] Re: [Oniguruma] Version 1.8.4 — matz@... (Yukihiro Matsumoto) 2003/03/21

まつもと ゆきひろです

[#19912] Re: [Oniguruma] Version 1.8.4 — TAKAHASHI Masayoshi <takahashi@...> 2003/03/26

高橋征義です。

[#19913] Re: [Oniguruma] Version 1.8.4 — Tanaka Akira <akr@...17n.org> 2003/03/26

In article <20030326.151120.41647198.takahashi@twinspark.co.jp>,

[#19920] Re: [Oniguruma] Version 1.8.4 — Tanaka Akira <akr@...17n.org> 2003/03/27

In article <008c01c2f360$9ac1b030$85222fc0@sarion.co.jp>,

[#19698] 1.8.0 preview2 — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

19 messages 2003/03/03
[#19716] [1.8.0 preview2] HP-UX 11.11 — WATANABE Tetsuya <tetsu@...> 2003/03/04

渡辺哲也です。

[#19718] Re: [1.8.0 preview2] HP-UX 11.11 — WATANABE Hirofumi <eban@...> 2003/03/04

わたなべです。

[#19751] (1.8.0-preview2) Proc#call — Fukumoto Atsushi <fukumoto@...>

1.8.0-preview2 で、 Proc#call の動作がへんです。

51 messages 2003/03/06
[#19752] Re: (1.8.0-preview2) Proc#call — nobu.nakada@... 2003/03/07

なかだです。

[#19754] Re: (1.8.0-preview2) Proc#call — matz@... (Yukihiro Matsumoto) 2003/03/07

まつもと ゆきひろです

[#19755] Re: (1.8.0-preview2) Proc#call — nobu.nakada@... 2003/03/07

なかだです。

[#19756] Re: (1.8.0-preview2) Proc#call — matz@... (Yukihiro Matsumoto) 2003/03/07

まつもと ゆきひろです

[#19770] Re: (1.8.0-preview2) Proc#call — nobu.nakada@... 2003/03/08

なかだです。

[#19786] Re: (1.8.0-preview2) Proc#call — matz@... (Yukihiro Matsumoto) 2003/03/10

まつもと ゆきひろです

[#19787] Re: (1.8.0-preview2) Proc#call — nobu.nakada@... 2003/03/10

なかだです。

[#19788] Re: (1.8.0-preview2) Proc#call — matz@... (Yukihiro Matsumoto) 2003/03/10

まつもと ゆきひろです

[#19789] Re: (1.8.0-preview2) Proc#call — Koji Arai <JCA02266@...> 2003/03/11

新井です。

[#19797] Re: (1.8.0-preview2) Proc#call — matz@... (Yukihiro Matsumoto) 2003/03/11

まつもと ゆきひろです

[#19798] Re: (1.8.0-preview2) Proc#call — Masatoshi SEKI <m_seki@...> 2003/03/11

[#19799] Re: (1.8.0-preview2) Proc#call — matz@... (Yukihiro Matsumoto) 2003/03/11

[#19809] Re: (1.8.0-preview2) Proc#call — Masatoshi SEKI <m_seki@...> 2003/03/12

[#20090] Re: (1.8.0-preview2) Proc#call — matz@... (Yukihiro Matsumoto) 2003/04/25

まつもと ゆきひろです

[#20101] Re: (1.8.0-preview2) Proc#call — Masatoshi SEKI <m_seki@...> 2003/04/28

[#20102] Re: (1.8.0-preview2) Proc#call — matz@... (Yukihiro Matsumoto) 2003/04/28

まつもと ゆきひろです

[#20148] Re: (1.8.0-preview2) Proc#call — Masatoshi SEKI <m_seki@...> 2003/05/03

[#20179] Re: (1.8.0-preview2) Proc#call — m_seki@... 2003/05/07

[#20180] Re: (1.8.0-preview2) Proc#call — matz@... (Yukihiro Matsumoto) 2003/05/07

まつもと ゆきひろです

[#20196] Re: (1.8.0-preview2) Proc#call — Masatoshi SEKI <m_seki@...> 2003/05/17

[#20200] Re: (1.8.0-preview2) Proc#call — matz@... (Yukihiro Matsumoto) 2003/05/18

まつもと ゆきひろです

[#19865] dl in $SAFE=4 — Minero Aoki <aamine@...>

あおきです。

15 messages 2003/03/21
[#19871] Re: dl in $SAFE=4 — matz@... (Yukihiro Matsumoto) 2003/03/21

まつもと ゆきひろです

[ruby-dev:19917] Re: [Oniguruma] Version 1.8.4

From: TAKAHASHI Masayoshi <maki@...>
Date: 2003-03-27 00:11:21 UTC
List: ruby-dev #19917
高橋征義です。

Tanaka Akira <akr@m17n.org>さん wrote:
> > 渡辺哲也さんの日記(2003/03/24)を見て思い出しましたが、
> > 先頭と末尾にある「-」はエスケープなしで書いてもいいことに
> > してはどうでしょうか。
> 
> 質問なのですが、そのような表現の読みやすさ・読みにくさに関してどう思い
> ますか。

個別の正規表現の読みやすさ・読みにくさについては
場合や人によりけりという気がするので、まずは一般的な
ルールをいくつか挙げてみます。

  1) 複数の解釈がありそうに見えるものは読みにくい
  2) 特殊なルールが必要なものは読みにくい
  3) 字面がごちゃごちゃしているものは読みにくい

/[a-g-z]/ という正規表現の「読みにくさ」は、1)に由来するように
思います(2も含むかも)。「a-g」と「-」と「z」なのか、それとも
「a」と「-」と「g-z」なのかが判別しにくいです。

一方、/[a-z-]/ の「読みにくさ」は、1)の意味ではあまり問題なさ
そうですが、2)に由来する問題を感じます。
「[]の先頭または末尾は『-』を許可する」というルールは、奇妙に
見えるかもしれません。

ところで、「-」をエスケープするというルールは、3) の
「読みにくさ」に引っかかるように思います。これはRubyの
変数のルール、先頭に「$」があると読みにくく感じられるので
好まれないグローバル変数に使う、という方針に通じるものが
ありそうです。もちろんエスケープがないと冗長な解釈が生じそう
な場合はないと困りますが、ある程度わかりやすい特殊ルールの
導入で解決できるのであれば、それはそれで構わないのではない
かと思います。

というわけで、今回の読みにくさに関しては、2)と3)のバランスの
問題になるんじゃないかと。


で、実際にruby-1.8.0で使われている正規表現について、
いくつか比べてみたのですが……(そっか、田中さんが作業された
んですもんね。せっかくやってもらっているのに言い出すのが
遅くて申し訳ない……)。

たとえば、

    /\A[^-][^=]\Z/   と  /\A[^\-][^=]\Z/ 
    /\A([-+]?\d+)/   と  /\A([\-+]?\d+)/ 
   /[^a-zA-Z0-9._-]/ と /[^a-zA-Z0-9_\-.]/
    /(?:\A|[^\w-])chunked(?:[^\w-]|\z)/
                     と
        /(?:\A|[^\-\w])chunked(?:[^\-\w]|\z)/

では、読みやすさとしてはあまり変わらないように思います。
あるいは、 /[^a-zA-Z0-9_\-.]/ よりも
 /[^a-zA-Z0-9._-]/ の方が読みやすいかもしれない、とか。

# あ、Windowsで見るとUNIXよりも「\」の見づらさが
# 増すような気がします。

あと、[[] の方はどうなのかというと、これもやはり字面の問題
でしょう。「[[」と「[」が重なることと、「[」は「]」と強く
結びついているように見えることから、ちかちかして見えます。
その点、[a-]の「-」は、両端に文字を欲する力がそれほど強く
ないように感じます。実際、[]の外の「-」は、エスケープされ
ないわけですし。
そんなわけで、「[」のエスケープなしの特殊ルールは、あまり
欲しくならないのでした。


読みやすさに関しては、こんな風に思います。

高橋征義 (TAKAHASHI Masyoshi)  maki@rubycolor.org


In This Thread