2012-01-13 5 views
4

에서 프로그래밍 6.10 (151 페이지) : 그것은 컴파일에도 불구하고, '$'문자를 포함 할 수 없습니다 사용자 프로그램에서

식별자; 이 경우 스칼라 컴파일러가 생성 한 식별자로 이름 충돌이 발생할 수 있습니다.

는 나는 이것에 대한 이유 확신하지만, 왜 안 숫자 식별자에 '$'문자의 사용을 방지?

+0

[Scala 메일 링리스트] (http://www.scala-lang.org/node/199) 중 하나는 아마도 언어 디자인에 관한 질문을하기에 더 좋은 장소 일 것입니다. –

+0

힌트를 보내 주셔서 감사합니다. – PrimosK

답변

8

Scala 컴파일러에서 내부적으로 생성 한 식별자에는 '$'문자가 포함되어 있습니다. '$'문자로 새 식별자를 만들면 내부적으로 생성 된 문자와 충돌 할 수 있으며 혼란이 일어날 수 있습니다. OTOH, 때때로 내부적으로 생성 된 스칼라 문자에 대한 액세스가 필요할 때, 또는 누군가 자바 코드에서 그러한 식별자를 사용했기 때문에 (지금은 드문 경우) '$'문자가 필요할 수도 있습니다 (합법적 인 곳, 또한 낙심한다면).

+1

Google 그룹 (이 그룹에 대한이 토론에 대한 [토론] (http://groups.google.com/group/scala-debate/browse_thread/thread/abde80085bd01774?hl=ko)이 있습니다. 관심이있다). – PrimosK

관련 문제