I'm gonna make a video about this! It is the next one coming up, short answer is: Interpreted languages tend to be faster to develop, also prettier and less strict.
(★ 도움이 될 수 있는 약간의 추가 정보 - 8개의 TMI) 1. 4:55 '컴파일 된' 파이썬은 로드 속도가 빨라지는 것으로 결국 인터프리터를 통해서 돌아갑니다. 물론 다양한 방법의 최적화는 존재합니다. C와 파이썬 관련 정보는 많습니다만, 읽어볼만한 자료는 여기에 있습니다. www.itworld.co.kr/news/108198 2. 4:21 컴파일 언어도 에러가 생깁니다. 여기서 이야기하는 것은 말그대로 '컴파일 할 때' 오류가 있는지를 검사하는 것입니다. 컴파일러가 파싱할 때 문법을 검사하는 수준이라고 생각하면 됩니다. 런타임 에러라고 해서 실제 프로그램이 돌아갈 때 에러가 생길 수 있죠. 학부수준에서 가장 이해하기 쉬운 것은 동적 할당정도가 있겠네요. 동적할당을 하려고해도 운영체제단에서 메모리를 더 이상 할당하기 어렵다고 판단하는 경우 프로그램이 터집니다. 다른 에러로는 입력에러가 있을 수 있겠죠. 숫자로 입력을 받아야하는데 문자로 입력을 받았다면 프로그램이 종료될 수 있습니다. 컴파일이 되었다고 온전한 프로그램이 탄생한건 아니라는 이야기죠^^ 3. 모든 컴파일 언어가 C처럼 어렵지는 않습니다. 최근의 swift, kotlin만 보더라도 그렇죠. 사실 C는 유닉스 운영체제에 사용되기 위하여 탄생한 것으로 최근에 많이 나오는 응용프로그램을 위한 컴파일 언어는 엄청나게 어렵거나 하지는 않습니다. 4. 컴파일 언어도 해석된다고 표현할 수 있습니다. JAVA의 경우에는 JVM 위에서 해석된다고도 표현합니다. 5. 0:15 본문과 상관없지만, 컴퓨터의 세계에서 가장 느린 것은 네트워크이며 가장 빠른 것은 레지스터로 보통 표현합니다.(레지스터>캐시>메인>보조>네트워킹). 6. 0:15 파이썬은 특이하게 배포판(distribution)이라고하여 다양한 파이썬이 존재하는데 예를 들어 intel, anaconda 등이 있습니다. 파이썬 끼리도 속도차이가 나는 만큼, C와 비교하면 '느리다'고 표현해도 무방합니다. 사실 python 자체가 C 기반으로 만들어진 것이라 비교하는게 의미가 있는지는 모르겠습니다. 7. 실제로 컴퓨터가 두뇌보다 빠를까?라는 질문에는 재미있는 자료를 찾았는데, weekly.chosun.com/client/news/viw.asp?ctcd=c02&nNewsNumb=002311100010 을 읽어보면 반도체 소자는 뉴런보다 100만배 이상 빠르다고 합니다. 8. 파이썬은 언어이기도 하지만 공개되어 있기에 작성규칙? 정도로 봐도 좋습니다. 실제로 문법을 바꿀 수도 있으니까요 :) ( ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-QdrtUt7qPL8.html ) 물론 니꼬님께서는 이 모든 것을 알고 계시겠지만요..^^
님도 이 영상 보시고 지적했듯이 저도 하나 지적하고 싶네요.. TMI(Too much informaiton)은 원래 이럴때 쓰는거 아닙니다. 친구가 뜬금없이 '우리엄마 팬티색깔 이쁘더라' 이런 굳이 알고싶지 않은 개소리를 할때 쓰는말이죠. 애초에 콩글리시로 만든 유행어면 모를까 해외에서 이미 쓰고있는걸 용례를 바꿔서 가져오는건 좀 보기 싫네요 :) 물론 정각프로젝트님께서는 이 모든 것을 알고 계시겠지만요..^^
컴파일러는 기계어로 번역해주는것이 아니라 현행 개발 문화를 보면 그냥 운영체제가 사용할 수 있게끔인 운영체제언어로 변환을 해주는 것이다 어셈블리는 운영체제 밑의 단계에 있는것이 아니라 운영체제 위에 있는것이고 그냥 운영체제 인터프리터라고 봐도 상관이 없다 라고 생각한다 다시말하자면 java의 jvm과 javac 처럼 윈도우와 윈도우 컴파일러다 이처럼 잘못된 데이터에 대한 수정은 그 데이터를 만드는것보다 더 많은 비용을 수반시킨다 이를 야기시킨척 하는 것 또한 넘어진김에 하늘보는척 하는것이랑 비슷한 것이다
i cannot write the data to worksheet.Cells[1,1] or any cells that i received from stock company open API. But i can write a data to the above same cell via normal methode i made. no problem. why the data from openAPI OCX make error as Comexception? c# winform with excel and Kywoom open API in Korea.
자막이 그런건지 영알못이라 잘 모르겠지만 예시가 살짝 잘못된 것 같네요. interpretation은 실시간 통역이 맞고 compilation은 실시간 통역이 아닌 화자가 말할 내용을 미리 듣고 화자가 말하는 동안 나에게 통역된 언어로 말해주는 것이라 자막이 달리면 좀 더 이해하기 쉬울 듯 하네요 ㅎㅎ 항상 좋은 내용 감사드립니다.
I think that, forty-odd years after I went from BASIC to PL/1, with the exception of object oriented programming, bugger-all has changed. Intel still giveth, Microsoft continue to take away. Bah!
I think it is because of the difference of memory access between C/C++ and Python. Also, Python runs on VM. If the reason why Python is slower is because Python is a interpreted language, that shouldn't applied in a situation that Python works as a compiled language. Thanks for the video. That is just an opinion, so correct me or even insult me if I'm wrong. In case you put a reply on this comment .. seems you speak Korean, so if it's not a hard thing for you please speak Korean because I'm 100% Korean and I do prefer it. :>
Hi! As I said on the video, is one of the reasons that it is slower, not the only one, running on a VM as you described can also be one reason as well as dynamic and static I think you're correct in all of those I did not talk about them because it is a topic for more advanced programmers and I wanted to keep this video beginner friendly! Thanks for your comment!
pros for Interpreter : no need to compile for each architecture. cons for Interpreter : a bit slower runtime I'll still take Interpreter when I don't have huge datas to sort xD ps. Question. is jit compiler like turbofan differs with Interpreter? (or was it v8? can't remember it)