CDuse
CDuceCDuce는 XML 지향 기능 언어이며 XDuce를 여러 방향으로 확장합니다.XML 정규 표현 유형, XML 정규 표현 패턴, XML 반복기를 갖추고 있습니다.CDuce는 범용 프로그래밍에 사용할 수 있기 때문에 XML 변환 언어를 엄밀하게 말하는 것은 아닙니다.
CDuce는 기본 표준을 준수합니다.Unicode, XML, DTD, 네임스페이스는 완전히 지원되며 XML 스키마는 부분적으로 지원됩니다.
CDuce의 이점
- 정적 검증(예: 변환을 통해 유효한 문서가 생성되는지 확인)
- XML 변환 및 증분 프로그래밍의 원활하고 안전한 구성
- 정적 최적화 및 효율적인 실행 모델(문서 유형을 아는 것이 정보를 효율적으로 추출하는 데 매우 중요함)
- OCaml과의 완전한 통합(OCaml 라이브러리를 바로 가져올 수 있으며 CDuce 프로그램을 OCaml로 내보낼 수 있습니다).
- OcCDuce 모듈을 통한 Ocsigen과의 통합
CDuce 고유의 기능
- XML 오브젝트는 요소, 시퀀스, 태그, 문자와 문자열, 속성 세트 등의 퍼스트 클래스 시민 값으로 조작할 수 있습니다.XML 요소의 시퀀스는 정규 표현으로 지정할 수 있습니다.이것은 문자열에도 적용됩니다.
- 함수 자체는 1등급 값이며, 조작할 수 있고, 데이터 구조에 저장되며, 함수에 의해 반환됩니다.
- 강력한 패턴 매칭 조작은 XML 요소의 시퀀스에서 복잡한 추출을 실행할 수 있습니다.
- 재귀형 및 임의의 부울 조합(유니온, 교집합, 보완)을 갖춘 리치 타입 대수. 범용 타입 및 타입 생성자는 진지하게 취급된다(제품, 확장 가능한 레코드, 간격 제약이 있는 임의의 정밀 정수, 유니코드 문자).
- 서브타이핑의 자연스러운 개념을 통한 다형성 및 동적 디스패치에 의한 과부하 기능
- 매우 효율적인 유형 중심 컴파일 스키마입니다.