답변:
아니요, Go는 REPL을 제공하지 않습니다.
그러나 이미 언급했듯이 Go Playground (이것은 새로운 URL입니다)는 매우 편리합니다. Go Authors는 또한 기능이 풍부한 편집기를 추가하는 것에 대해 생각하고 있습니다.
로컬로 무언가를 원한다면 hsandbox 설치를 고려하십시오 . 간단히 실행하면 hsandbox go
터미널 화면이 (로 screen
) 분할 되어 맨 위에 코드를 작성하고 모든 저장에서 맨 아래에 실행 출력을 볼 수 있습니다.
거기에 있었다 gotry
(옵션 패키지 이름) 식을 평가하는 데 사용되는 표준 이동 명령들, 그리고 같이 실행할 수 gotry 1+2
와 gotry fmt 'Println("hello")'
쉘에서. 실제로 사용하는 사람이 많지 않아 더 이상 사용할 수 없습니다.
또한 REPL for Go를 빌드하기위한 써드 파티 프로젝트를 보았지만 이제는 igo 및 go-repl 두 링크 만 찾을 수 있습니다 . 내가 모르는 것이 얼마나 잘 작동합니까?
저의 2 센트 : 컴파일 속도는 여기에 언급 된 도구를 만드는 데 도움이 되었기 때문에 Go를위한 REPL 작성이 가능하지만 같은 속도로 REPL이 덜 필요합니다. Goground에서 실행할 수없는 것을 테스트하고 싶을 때마다 간단한 .go
파일을 열고 코딩을 시작하고 코드를 실행합니다. go
Go 1 의 명령으로 하나의 명령 빌드 프로세스가 가능하고 쉬워지면 훨씬 쉬워 집니다.
업데이트 :go
매우 쉽게 파일을 빌드하는 데 사용할 수있는 Go added 명령 의 최신 주간 릴리스 : 파일 작성 prog.go
및 실행go build prog.go && ./prog
업데이트 2 : Go 1을 사용하면 go 프로그램을 직접 실행할 수 있습니다.go run filename.go
업데이트 3 : gore
흥미로운 새 프로젝트입니다.
motemen/gore
거기 에서 놀고 있었다 – 그것은 꽤 좋다.
또 다른 Go REPL은 훌륭하게 작동합니다. 라인 편집, 코드 완성 등이 특징입니다.
또한라는 최근 (3 월 2013) 프로젝트가 고어 에서 스리 람 Srinivasan에 유용 할 수 있습니다 :
gore는 golang 코드에 대한 명령 줄 평가 기입니다. 루프가없는 REPL입니다.
go 놀이터를 대신하여 대화식으로 약간의 코드를 쉽게 시험해 볼 수 있습니다. gore는 가져 오기 및 패키지 선언 및 주요 기능 래퍼와 같은 보일러 플레이트 코드를 자동으로 제공 합니다.
또한 자체 컴퓨터에서 실행되므로 놀이터에서 안전한 샌드 박스 모드와 달리 보안상의 이유로 코드가 거부되지 않습니다.
Go Playground 를 사용해 보셨습니까 ?
Go Playground에 대하여
Go Playground는 golang.org 서버에서 실행되는 웹 서비스입니다. 서비스는 Go 프로그램을 수신하고, 샌드 박스 내에서 프로그램을 컴파일, 링크 및 실행 한 다음 출력을 리턴합니다.
Vim 사용자 인 경우 vim-go 플러그인 ( https://github.com/fatih/vim-go )은 현재 버퍼의 출력을 실행하고 인쇄하는 명령 (GoRun)을 제공합니다. 여전히 기본 Go 파일의 상용구 코드를 모두 포함해야하지만 여전히 로컬 환경에서 코드 스 니펫을 신속하게 테스트 할 수있는 편리한 방법을 제공합니다.
HTH
VSCode 디버거를 사용하여 운이 좋았지 만 디버그 콘솔에서 함수 호출을 호출 할 수없는 한 상당히 제한적입니다 . Debug : Function Calls not supported # 2225 .
기본적으로 launch.json
파일 을 올바르게 구성한 후 중단 점을 설정하십시오 . 그런 다음 변수 사이드 바에서 왼쪽을 드릴 다운하고 디버그 콘솔에 변수 표현식을 입력 할 수 있습니다.
Gosh 는 대화식 Golang 셸입니다. 목표는 사용하기 쉬운 대화식 실행 환경을 제공하는 것입니다.
https://github.com/haya14busa/goplay 를 시도해보십시오. 터미널에서 Go Playground로 Go 코드 파일을 직접 실행할 수 있습니다.
이동 REPL 및 기타 REPL에 대해서는 www.gorepl.com 을 확인하십시오.