파이썬은이 마법을 shelve
으로 가지고 있는데, 이는 dict
과 같습니다. 단, 파일에 의해 자동으로 뒷받침됩니다. 이를 통해 프로그램 실행간에 큰 데이터 구조를 유지할 수 있습니다. 정말 놀라운 점은 실행될 때마다 디스크에서 모든 것을로드하지 않지만 키를 요청할 때까지 기다린 다음 해당 키의 값만 제공한다는 것입니다.투명 지속성을위한 파이썬의`shelve '에 하스켈이 해당합니까?
명백한 질문 : 하스켈이 경쟁 할 수 있습니까? 그 중 하나가 map, refs, protobuf, 또는 cereal 같은 일반적인 백엔드의와 함께
하스켈 프로그래머는 저장 및 로딩과 같은 I/O 작업을 투명하게 (즉, 자동으로) 수행하기를 원하지 않습니다. 관용적 인 Haskell 코드는 I/O를 설명합니다. 강력한 파일 기반 저장소가 있습니다. '산성 상태'가 떠오른다. 그러나 여러 가지 이유로 "마법 같은"것은 없습니다. (다른 것들 중에서, 관용적 인 Haskell 데이터 구조는 종종 무한합니다!) –
무한하지만 불가능하지만! 쓰기가 허용되지 않는 경우 투명 write-through 캐시의 가치는 꽤 희미 해 보입니다. – amalloy