🎍 “Go away, Python!” / Go으로 스크립트짜기

💠 (원본글) Go away, Python!

shebang으로 go언어으로 스크립트 짜기

1
2
3
4
5
6
7
8
  //usr/bin/env go run "$0" "$@"; exit
  package main

  import "fmt"

  func main() {
  	fmt.Println("Hello world")
  }

…원본글은 //usr/local/go/bin/go run "$0" "$@"; exit-였지만 좀 바꿔봤다. 그리고 바꾼쪽이 나는 더 마음에 든다.

shebang은 아니지만, shebang처럼 동작

https://en.wikipedia.org/wiki/Shebang_(Unix)

…~sh~-이 //...-부분을 shebang처럼 처리하게 된다는데 재밌다. ㅎㅎ (‘원본글’에서 자세히 설명)

그리고 이런 라이브러리도 이미 있어왔지: bitfield/script

https://github.com/bitfield/script

유닉스 쉘의 pipe, redirection은 물론이고 기본적인 유틸들까지 구현해놓았네. ㅎㅎ

📕 The Power of Go: Tools 책은 나중에 읽어봐야겠다.

나름 괜찮은 아이디어

처음 실행할때 컴파일이 살짝 돌아가서 느려 보이는걸 제외하고(그 이후엔 컴파일한 코드로 실행하니 느끼지 못하지만), 오히려 다른 스크립팅언어들보다 이게 더 나은거 아닌가 생각.

솔직히 다른 언어들이라고 그렇게 안전하다거나 편리한지 이젠 잘 모르겠다. 오히려 다른 언어들이 타입시스템이니 멀티코어니 각자의 방식으로 애쓰는데, 오히려 Go언어는 이미 그런지 오래되지 않았나 싶다.