Dhall์€ JSON + ํ•จ์ˆ˜ + ์œ ํ˜• + ๊ฐ€์ ธ์˜ค๊ธฐ๋กœ ์„ค๋ช…ํ•  ์ˆ˜ ์žˆ๋Š” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฐ€๋Šฅํ•œ ๊ตฌ์„ฑ ์–ธ์–ด์ž…๋‹ˆ๋‹ค.

๋ณ€๊ฒฝ ์‚ฌํ•ญ :

  • ์ด์ „ ๋ฆฌํ„ฐ๋Ÿด Optional ๊ตฌ๋ฌธ์€ ๋” ์ด์ƒ ์ง€์›๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • ์„œ๋กœ๊ฒŒ์ดํŠธ ์Œ ๋ฐ ๋น„๋ฌธ์ž๋ฅผ ๊ธˆ์ง€ํ•ฉ๋‹ˆ๋‹ค.
  • ๋ ˆ์ฝ”๋“œ์—์„œ ๋™์ข… ์—ฐ๊ด€ ๋ชฉ๋ก์„ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด toMap ํ‚ค์›Œ๋“œ๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ๋ฒ ํƒ€ ์ •๊ทœํ™”: ๊ฒŒ์‹œ๋ฌผ ํ•„๋“œ ์ •๋ ฌ์ด ๊ฐœ์„ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ :

  • ๊ฒฝ๋กœ๋ฅผ ์œ„์น˜๋กœ ๊ฐ€์ ธ์˜ค๊ธฐ ๊ตฌํ˜„ โ€“ ์œ„์น˜.
  • ๋ชจ๋“  RFC3986 ํ˜ธํ™˜ URL์ด ํ—ˆ์šฉ๋ฉ๋‹ˆ๋‹ค.
  • ์ด์ œ ๋นˆ ๋ชฉ๋ก์— ์ผ๋ฐ˜ํ™”๋œ ์„ค๋ช…์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • Prelude์— ์ง€๋„ ์œ ํ˜• ๋ฐ ์œ ํ‹ธ๋ฆฌํ‹ฐ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ๋ฉ€ํ‹ฐํ•ด์‹œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํŒŒ์ผ ์ด๋ฆ„์„ ์บ์‹œํ•˜๋Š” ๊ธฐ๋Šฅ.
  • ์ˆจ๊ฒจ์ง„ ์ด์Šค์ผ€์ดํ”„ ์‹œํ€€์Šค์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • Prelude๋Š” ์•ฝํ•œ ์œ ํ˜•์˜ JSON ๊ฐ’์— ๋Œ€ํ•œ ํ‘œ์ค€ ํ‘œํ˜„์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
  • Prelude/Map์„ ์‚ฌ์šฉํ•˜์—ฌ ํ—ค๋”๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ๊ธฐ๋Šฅ์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • Prelude/XML ํŒจํ‚ค์ง€๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : linux.org.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€