최근 루비 M17N회의 결과

Posted by 미스란디르 Mon, 18 Feb 2008 16:38:00 GMT

가 메일링에 떴네요. 원문은 [ruby-dev:33825]에서 보실 수 있습니다.

이탤릭체는 제 글입니다.

Ruby M17N 회의가 2008년 2월 15일에 열렸는데, 그 기록을 올립니다.

==cgi.rb 후속의 공모에 대해서 조건은 다음과 같다

  • 이름이 cgi.rb가 아닐 것
  • MVC를 분리할 것

얼마전에 cgi.rb가 너무 노후화되서 그 후속작을 공모하는 메일이 올라왔었다. 그것에 대한 논의가 이루어진듯

== String#gsub(regexp, hash)

String#gsub(regexp, {"ä"=>"\u00C4", ..}) 와 같은 표기를 쓰고 싶음 →채용

== replica의 출전에 대한 정보를

→쓴다

replica는 encoding의 복제품 같은걸 얘기하는데 예를들면 cp949가 euc-kr의 replica가 되는거죠(사실 루비구현에선 그렇지 않지만). 아마도 소스안에서 이게 무슨 replica인지 따위를 주석으로 쓴다는 것 같네요

== CP949와GBK는 서로 다름

→CP949를 분리

CP949와 GBK가 valid한 영역이 거의 같아서인지 같은걸로 취급했다가 다시 분리됐어요.

== 널문자와 UTF-16를 합칠 경우에 대해

널문자는 ASCII와 호환되지 않는 문자와도 결합가능하도록 하면 어떨까 →채용

== String#length나String#at등이 느리다

search_nonascii를 사용해서 고속화 VALID한UTF-8이라면 더더욱 빨라진다.

== String#getbyte, String#setbyte

→채용

== Indexer

→보류

== inspect 에 대해서

다음과 같이 검토

  • obj.inspect_acumulate(enc)를 신설

== strftime 의 앞으로의 방향 strftime은 locale에 의존하지 않고、로케일에 의존하는건 필요하다면 별도로 추가

== require_relative 의 도입에 대해서 require_relative 을 부른 파일의 상대경로에 대해서 require 한다. →채용

== IO.copy_stream IO.copystream(filename, filename) 이나 IO.copystream(stream, stream) 등으로 파일이나 스트림을 카피한다. 또한 파일명을 준 경우에는 시스템콜을 호출하기 때문에 루비는 다른 것을 할 수 있다. →이름은 검토 필요

== Hash#compare_by_identity가 미묘한점 Hash#comparedby(:equal?, :objid)으로 변경하고 싶음 →채용 →Hash#identifed_by의 경우가 좋을지도[ruby-dev:33817]

== Unicode Normalization

API는 다음과 같다

  • String#encode("utf-8 nfc")
  • String#normalize("nfc")
  • Encoding::UTF_8.nfc(str)

open(fn, "r:utf-8", ...) 정도에서 정규화하면서 읽는등의 처리를 하고 싶기 때문에 그것에 대한 기법을 검토


다른 내용들에 아시는 내용 있으면 커멘트 달아주세요~;

써 놓고 보니 m17n회의라면서 결국은 루비1.9 개발논의 회의인거군요. 루비 1.9.1은 언제나오려나.

Posted in  | no comments | no trackbacks

Comments

Trackbacks

Use the following link to trackback from your own site:
http://tisphie.net/typo/trackbacks?article_id=%EC%B5%9C%EA%B7%BC-%EB%A3%A8%EB%B9%84-m17n%ED%9A%8C%EC%9D%98-%EA%B2%B0%EA%B3%BC&day=19&month=02&year=2008

Comments are disabled