# Cwl-d: CWL parser for D

**URL:** <https://cwl.discourse.group/t/cwl-d-cwl-parser-for-d/765>\
**Category:** CWLCon 2023\
**Created:** [February 26, 2023, 9:28am UTC](https://cwl.discourse.group/t/cwl-d-cwl-parser-for-d/765 "2023-02-26T09:28:41Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![tom-tan](https://yyz2.discourse-cdn.com/free1/user_avatar/cwl.discourse.group/tom-tan/32/251_2.png) [@tom-tan](https://cwl.discourse.group/u/tom-tan)\
**Post date:** [February 26, 2023, 9:28am UTC](https://cwl.discourse.group/t/cwl-d-cwl-parser-for-d/765/1 "2023-02-26T09:28:41Z")

</div>

Presenter: [Tomoya Tanjo](https://orcid.org/0000-0002-4421-9659): National Institute of Genetics / National Institute of Informatics @tom-tan

[Schedule](https://cwl.discourse.group/t/schedule-of-confirmed-talks/753):

- Session 2 🌍 🌏 (EMEA-APAC)  
Wednesday, March 1st, 07:00 - 11:00 UTC / 16:00 - 20:00 Japanese Standard Time
- Session 3 🌏 🌎 (APAC-Americas) Thursday, March 2nd, 19:00 - 23:00 US EST  
Friday, March 3rd, 00:00 - 04:00 UTC / 09:00 - 13:00 Japanese Standard Time

> The syntax of CWL is formally defined in the Semantic Annotations for Linked Avro Data (SALAD) language. Using the schema-salad-tool, a reference tool for SALAD, we can generate code such as data structures and parsers of CWL in various programming languages such as Python, Java, TypeScript, .Net, C++, and D.
> 
> This talk shows an overview of the CWL parser for D, which has been added since BioHackathon Europe 2022. Unlike the generator for other languages, the schema-salad-tool only generates the data structures, and the parser implementation is automatically deduced from the data structure at compile time by using metaprogramming features in D. It enables us to improve the CWL parsers, such as bug fixes or performance improvements, without re-generating the parsers.

> **[GitHub - tom-tan/schema-salad-d: Salad validator library written in D](https://github.com/tom-tan/schema-salad-d)**
>
> Salad validator library written in D. Contribute to tom-tan/schema-salad-d development by creating an account on GitHub.

> **[GitHub - common-workflow-lab/cwl-d-auto: Autogenerated classes for reading...](https://github.com/common-workflow-lab/cwl-d-auto)**
>
> Autogenerated classes for reading and writing CWL objects using the D language - GitHub - common-workflow-lab/cwl-d-auto: Autogenerated classes for reading and writing CWL objects using the D language

Please leave your questions for the presenter below!

[![](https://global.discourse-cdn.com/free1/uploads/cwl1/original/1X/cffcbba9c6ff9805f5a1c5d2dd20aec93c282b65.jpeg "cwl-d: CWL parser for D") ](https://www.youtube.com/watch?v=6aBnSy-A91k)

As an alternative to YouTube, this presentations is also available on ConfTube

https://conf.tube/videos/embed/153cb6af-c126-4ca5-88c3-89af2f1abdeb
