스칼라 XML 리터럴의 문제점은 무엇입니까? 이제는 아픈 엄지 손가락처럼 튀어 나옵니다.

에서 이 게시물 마틴 (언어의 머리 혼 초라는 가명) 글을 참고하세요 :

[XML 리터럴] 당시 좋은 아이디어로 보였고 이제는 아픈 엄지 손가락처럼 튀어 나옵니다. 나는 새로운 문자열 보간 체계를 사용하여 모든 XML 처리를 라이브러리에 넣을 수 있다고 믿습니다.

언어 디자인 자체에 관심이있어 궁금합니다. 왜 XML 리터럴을 언어에 통합하는 것이 실수라고 생각합니까? 이 기능에 대한 논쟁은 무엇입니까?



답변

나는 Martin이 그의 입장에서 추론을 잘 설명한다고 믿는다.

나는 스칼라를 이전에는 서로 다른 개념의 통일을 찾으려고 노력하면서 매우 강력하지만 아름답고 단순한 언어로 만들려고 노력해 왔습니다.

점점 더 대중화 될 때 많은 언어가 직면하는 문제는 커뮤니티가 기능을 원하고 언어 위에 추가한다는 것입니다. 이것의 최악의 예 (적어도 나의 책에서)는 C ++입니다. 여기서 당신은 거의 모든 것을 가지고 있지만 아름다운 통일 방식으로는 전혀 아닙니다 (예를 들어, 이 질문에서 비롯된 이 질문 참조 ).

커뮤니티의 요구 / 필요로 인해 언어가 성장할 때 어려움은 언어의 핵심과 일치하는 방식으로 새로운 기능을 추가하는 것입니다. 그리고 이와 관련하여 스칼라의 XML 리터럴 지원은 아픈 일입니다. 이것은 독특한 일이기 때문입니다. 실제로 통합 된 아름다운 코어의 일부는 아니지만 일회성 솔루션으로 추가되었지만 문자열 보간은 일회성 기능을 대체 할만큼 강력한 핵심 개념입니다.


답변