10.2. 프로그램언어 달(Dhall)에서의 리스트 생성 및 조작 방법

프로그램언어 달(Dhall)에서의 리스트 생성 방법

프로그램언어 달(Dhall)에서 리스트를 생성하는 방법은 간단합니다. 리스트를 만들 때는 중괄호({}) 안에 원소들을 쉼표(,)로 구분하여 나열하면 됩니다.

예를 들어, 숫자로 이루어진 리스트를 생성하려면 다음과 같이 작성할 수 있습니다.

List/build Natural [1, 2, 3]

프로그램언어 달(Dhall)에서의 리스트 항목 추가 방법

프로그래밍 언어 Dhall에서 리스트에 항목을 추가하는 방법은 새로운 리스트를 만들어서 기존 리스트와 추가하고자 하는 항목을 함께 포함시키는 방식으로 이루어집니다.

예를 들어, 기존 리스트가 `[1, 2, 3]`이고 이 리스트에 4를 추가하고 싶다면 다음과 같이 새로운 리스트를 만들어야 합니다.


let 기존리스트 = [1, 2, 3]

let 새로운리스트 = 기존리스트 # [4]

프로그램언어 달(Dhall)에서의 리스트 항목 삭제 방법

프로그래밍 언어 Dhall에서 리스트 항목을 삭제하는 방법은 List/remove 함수를 사용하는 것입니다. 이 함수는 지정된 조건에 해당하는 항목을 리스트에서 제거합니다.

예를 들어, 리스트에서 특정 값을 삭제하려면 해당 값을 제외한 새로운 리스트를 생성해야 합니다. 아래는 예제 코드입니다.


let myList = [1, 2, 3, 4, 5]

let updatedList = List/remove Natural/equal myList 3

in updatedList

프로그램언어 달(Dhall)에서의 리스트 순회 방법

프로그래밍 언어 Dhall에서 리스트를 순회하는 방법은 List/fold 함수를 사용하는 것입니다. 이 함수는 리스트의 각 요소에 대해 주어진 함수를 적용하고 결과를 누적하는 방식으로 동작합니다.

예를 들어, 리스트의 각 요소를 더하는 간단한 예제 코드를 살펴보겠습니다.


let list = [1, 2, 3, 4]

let sum = List/fold Natural Natural list 0 (\x y -> x + y)
in sum

프로그램언어 달(Dhall)에서의 리스트 정렬 방법

프로그램언어 달(Dhall)에서의 리스트 정렬은 List/sort 함수를 사용하여 수행할 수 있습니다. 이 함수는 리스트의 요소를 정렬하여 새로운 정렬된 리스트를 반환합니다.

예를 들어, 아래는 리스트를 정렬하는 Dhall 코드 예제입니다:


let List = https://prelude.dhall-lang.org/List/package.dhall

let myList = [4, 2, 7, 1, 5]

let sortedList = List/sort Natural/equality Natural.compare myList

in sortedList

Leave a Comment