REPL(read-eval-print loop) 또는 인터랙티브 톱레벨(interactive toplevel), 랭기지 셸(language shell)은 단일 사용자의 입력(예: 단일 식)을 취하고 이를 평가(실행)하고 결과를 사용자에게 반환시키는 단순한 상호작용 컴퓨터 프로그래밍 환경이다. REPL 환경으로 작성된 프로그램은 구간마다 실행된다. 이 용어는 보통 클래식 리스프 머신 상호작용 환경과 유사한 프로그래밍 인터페이스를 의미다. 일반적인 예로는 프로그래밍 언어를 위한 명령 줄 셸 및 유사 환경을 들 수 있으며 기법은 스크립트 언어의 특징과 매우 닮아있다.
개요
REPL에서 사용자는 (전체 컴파일 단위가 아닌) 하나 이상의 식을 입력하면 REPL은 이들을 평가하고 결과를 표시한다.
용도
리스프 특화
구현체
최소한의 정의:
(define (REPL env) (print (eval env (read))) (REPL env) )
여기서 env는 초기 eval-uation(평가) 환경을 대표한다. 또, env가 eval에 의해 파괴적으로 업데이트될 수 있다.
외부 링크
- Paul Graham has written a description of a REPL implementation in Common Lisp.
- en:Repl.it Online REPL for various programming languages
- Joël Franusic Online-REPs-and-REPLs list