마크업 언어, TeX와 SGML 외 다른 대안은?

by DD
4개월 전
조회수 10

저자는 마크업 언어를 TeX와 SGML 두 가지 주요 계열로 분류하고, 각 계열의 특징과 장단점을 분석함.

JSON과 YAML을 마크업 언어로 간주하는 것에 대한 비판적인 시각을 제시하며, 속성(Attributes)의 중요성을 강조함.

커뮤니티에서는 저자의 분석에 대한 의견과 함께 SGML 구문 분석의 어려움에 대한 반론이 제기됨.

Lisp와 같은 언어가 마크업 언어에 적합하지 않은 이유를 설명하며, Odin 언어의 확장성을 예시로 제시함.

TeX 및 SGML 계열 마크업 언어 분석

저자는 마크업 언어를 TeX 계열SGML 계열로 분류하고, 각 계열의 문법적 특징을 비교 분석했다. TeX 계열은 `\foo`, `\foo{wrapped text}`와 같은 형식을 사용하며, SGML 계열은 `<tag>wrapped text</tag>`와 같은 태그 기반 구문을 사용한다. 저자는 TeX 계열이 중첩 구조의 문제를 해결하고, 구문 분석이 더 용이하다고 주장한다. SGML 구문 분석(Parsing)의 복잡성에 대한 언급도 있었다.

JSON, YAML 등 다른 언어의 마크업 언어 적합성 논쟁

저자는 JSON과 YAML이 마크업 언어로서의 속성(Attributes) 부재구조적 제약으로 인해 부적합하다고 주장한다. JSON은 트리 구조만을 지원하며, 임의의 텍스트를 마크업하는 데 한계가 있다. YAML은 구문 분석의 어려움과 모호성으로 인해 사용을 권장하지 않는다고 언급했다. 설정 언어(Configuration Language)로서의 JSON 사용에 대한 비판도 제기되었다.

SGML 구문 분석의 어려움에 대한 반론

커뮤니티에서는 SGML 구문 분석이 TeX 계열보다 훨씬 어렵다는 저자의 주장에 대한 반론이 제기되었다. 한 사용자는 SGML 구문 분석에 필요한 코드 라인이 TeX 계열보다 많다는 주장에 대해, 실제로는 큰 차이가 없거나 오히려 SGML이 더 쉬울 수 있다고 주장했다. 구문 분석(Parsing)의 난이도에 대한 논쟁이 벌어졌다.

Odin 언어의 확장성 및 마크업 언어와의 관계

저자는 자신이 개발한 Odin 언어의 확장성을 예시로 제시하며, 속성, 구조체 필드 태그, 지시어(Directive)를 통해 언어의 기능을 확장할 수 있다고 설명했다. 이러한 확장 메커니즘은 TeX 계열과 유사한 방식으로 작동하며, 미래의 요구 사항에 유연하게 대응할 수 있도록 설계되었다. 확장성(Extensibility)을 강조하며, 마크업 언어의 진화 방향성을 제시했다.

The Only Two Markup Languages