스폰서LobeHubLobeHub자세히 알아보기
dshfind
논문 정독입문

Cordis 논문 정독: 시공간 조합 가능성 프로그래밍 패러다임

《시공간 조합 가능성을 위한 프로그래밍 패러다임》을 처음부터 읽습니다: 타입 이론 배경 없이 코드 직관으로 되돌릴 수 있는 이펙트와 반응형 코이펙트를 이해합니다.

13 강의약 5.2시간진도 0/13
이어서 학습: 1강
초록과 서론: 동적 조합과 두 가지 차원
이 강의 시작하기

강좌 목록

1
초록과 서론: 동적 조합과 두 가지 차원다음 강의
시간 조합 가능성과 공간 조합 가능성이 정확히 무엇인지
2
동기 부여 예시: VSCode 플러그인과 AI 에이전트
왜 오늘날의 소프트웨어는 런타임에 언로드할 수 없는가
3
기여 요약과 타입 판단 Γ ⊢ t : T
이펙트 어노테이션: 타입은 반환값뿐 아니라 부수 효과도 기록한다
4
모나드: 부수 효과를 상자에 담기
Promise가 곧 모나드: η로 값을 담고 flatMap으로 평탄화
5
코이펙트: 계산이 환경에 요구하는 것
이펙트는 『무엇을 바꿨는가』를 묻고, 코이펙트는 『무엇이 필요한가』를 묻는다
6
되돌릴 수 있는 이펙트: 붙일 수도 뗄 수도 있게
모든 컨텍스트 변환에 명시적 역변환이 함께 주어진다
7
이펙트 조합: 역변환의 자동 조합
⋄ 연산: 합성된 이펙트의 역변환은 조합으로 자연스럽게 얻어진다
8
반응형 코이펙트: 의존성이 갖춰지면 자동 시작
충족성, 활성화 / 비활성화 / 중립 전이의 분류
9
컴포넌트 생명주기: 멱등, 반복, 에포크, 비동기
관성 상태 머신: 전이가 시작되면 완료될 때까지 실행된다
10
컨텍스트 패러다임: 통일된 컨텍스트 타입
이펙트 컨텍스트와 코이펙트 컨텍스트를 하나의 개체로 통합
11
Cordis 코어 라이브러리: 이펙트 추적과 코이펙트 해석
ctx.effect, ctx.set, 파이버와 관성 상태 머신
12
컴포넌트 로더와 Koishi 사례
선언적 설정, 핫 모듈 교체, 4000개 이상의 플러그인 생태계
13
논의, 관련 연구와 결론
서비스 멀티플렉싱, 접근 제어, 버전 관리

용어집 · 논문 부록 A

논문에는 이 논문에서 제안하거나 특별한 의미를 부여한 개념만 수록되어 있으며, 일반적인 개념은 반복하여 나열하지 않습니다.

시간 조합 가능성
temporal composability
컴포넌트를 제거할 때 해당 컴포넌트가 공유 환경에 가한 수정을 완전하고 안전하게 되돌리는 능력.
공간 조합 가능성
spatial composability
컴포넌트가 구조화되고 검증 가능한 방식으로 서로의 의존성을 선언, 발견, 해석하는 능력.
되돌릴 수 있는 이펙트
revertible effect
모든 컨텍스트 변환은 역함수를 명시적으로 제공하고, 런타임이 역함수를 기록·조합하여 언인스톨 시 상태가 복원됩니다.
반응형 코이펙트
reactive coeffect
컴포넌트가 의존성 명세를 선언하면, 의존성 충족성 변화에 따라 활성화와 비활성화가 자동으로 이루어집니다.
이펙트 컨텍스트
effect context
∂Γ ≔ Γ × 𝔉Γ: 현재 상태와 누적된 복구 변환으로 이루어진 런타임 컨텍스트.
코이펙트 컨텍스트
coeffect context
Σ ≔ (k ∶ K) ⇀ 𝒱ₖ: 의존성 키에서 타입 있는 값으로 가는 유한 부분 함수.
에포크
epoch
해석된 의존성 값의 튜플로, 목표 상태의 구체적인 의존성 구성에 번호를 매깁니다.
관성 상태
inertial state
비동기 생명주기의 Reload/Unload 전이로, 한번 진입하면 완료될 때까지 실행됩니다.