2012-04-18 2 views
4

에 ELIF 오타 시간 오류를 컴파일 내가 (오 아니라, 파이썬 루틴) 오타했지만, 이상하게 루비는 그것에 대해 불평하지 않았다트리거 경고 또는 루비

> if false; put "NO"; elif true; puts "YE"; end 
=> nil 

> if false; puts "NO"; elsif true; puts "YE"; end #proper way 
YE 

나는에 대해 생각했다 30 분 만에 Ruby 구문이 완벽하게 훌륭하다는 것을 알았습니다. Ruby는 첫 번째 if 절의 명령의 일부로 해석합니다. elif은 존재하지 않지만 컴파일시에는 알 수없는 명령입니다. Ruby는 경고 플래그가 켜져 있어도 경고하지 않았습니다.

이러한 문제에 대해 경고 할 방법이 있습니까? 그런 오타 때문에 모든 소스를 grep해야합니까? 어떻게 든이 컴파일 시간 오류가 강제로 수 있습니까?

이 특정한 경우

(난 당신이 단위 테스트와 이러한 문제를 감지합니다, 그것은 동적 언어이다, 알고 있지만, 새로운 코드를 작성하면서 여전히 짜증나.)

+3

코드를 테스트 할 수 있습니다. 그냥 생각;) – d11wtq

+1

여기에 질문이 없습니다. :) –

+1

"이 문제에 대해 경고하는 방법이 있습니까?" 어떻게 든이 "컴파일 시간"오류가 강제로 수 있습니까? D –

답변

4

, 당신은 올바른 구문 강조 편집기를 선택할 수 있습니다 시각적으로 키워드가 아닌 것을 감지합니다 (elsif은). 예를 들어

는 케이트 편집기 elifelsif 심지어 다른 자동 들여 쓰기가 있습니다.

관련 문제