스칼라 XML 리터럴의 문제점은 무엇입니까?


9

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

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

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


2
아마도 그는 간단하고 일관된 핵심을 갖고보다 전문화 된 기능을 라이브러리로 옮기는 것에 대해 (연결된 게시물에서) 언급했을 것입니다.
Zavior

답변:


11

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

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

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

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


이상적인 세계에서 IMHO는 개발자 커뮤니티가 언어를 확장 할 수있는 핵심 기능 만 포함해야합니다. 확장은 핵심 언어의 일부가 아니라 라이브러리로 제공되어야합니다. 결국 언어 개정은 새로운 표준 라이브러리를 지정하지만 새로운 언어 기능은 지정하지 않을 수 있습니다. 물론 강력한 핵심 언어를 정의하는 것은 사소한 작업이 아니지만 일부 언어 (예 : Lisp)가 그 언어에 매우 가깝다고 생각합니다.
Giorgio

유쾌한 프로그래머들에 대해 이야기하십시오. 스칼라의 XMl 리터럴은 매우 유용합니다. JSON 팬 소년은 아마도 구식이라고 생각하지만 SOAP과 같은 다른 기술에서 XML이 사용되는 것을 잊어 버립니다.
annoying_squid
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.