소스 필터를 볼 때마다 나는 그것이 무엇을 언급하는지 궁금해졌습니다.원본 필터 란 무엇입니까?
정식 정의 외에도 예를 들어 메시지를 집으로 보내는 것이 도움이 될 것이라고 생각합니다.
소스 필터를 볼 때마다 나는 그것이 무엇을 언급하는지 궁금해졌습니다.원본 필터 란 무엇입니까?
정식 정의 외에도 예를 들어 메시지를 집으로 보내는 것이 도움이 될 것이라고 생각합니다.
소스 필터는 평가되기 전에 다른 코드를 수정하는 모듈입니다. 따라서 실행되는 코드는 프로그래머가 쓰여질 때 볼 수있는 코드가 아닙니다. perldoc perlfilter
에서 소스 필터에 대한 자세한 내용을 볼 수 있습니다 (Perl 컨텍스트에서). 예를 들어 Smart::Comments
은 프로그래머가 디버깅 명령을 코드의 주석에두고 원하는 경우에만 사용하도록 허용하고 또 다른 예로는 PDL::NiceSlice
을 사용하여 PDL 개체를 조각화 할 수 있습니다.
편집 : 사용에 대한 자세한 내용은 (당신이 짐승을 용감하고자해야한다)의 경우, 필터를 만들 수있는 일반적인 방법입니다 Filter::Simple
설명서를 읽어
.
또 다른 방법으로는 소스에 대해 신경 쓰지 않아도됩니다. Devel::Declare
을 사용하면 Perl의 파서와 상호 작용할 수 있으므로 원본 필터없이 소스 필터와 동일한 유형의 많은 작업을 수행 할 수 있습니다. 이것은 좀 더 안전 할 수 있지만 범위가 제한되어 있습니다.
소스 필터은 파일이 구문 분석되는 방식에 영향을주는 모듈 형식입니다. 그것들은 일반적으로 Perl이 기본적으로 가지고 있지 않은 구문 기능을 시뮬 레이팅하는 데 사용됩니다. 예를 들어 Switch
소스 필터는 Perl의 given { }
구성을 사용할 수 있기 전에 switch 문을 시뮬레이트하는 데 자주 사용됩니다.
소스 필터는 모듈의 텍스트를 입력으로 사용하고 일부 처리를 수행하며 필터링 된 소스 코드를 출력합니다. 소스 필터가 어떻게 구현되는지에 대한 간단한 예와 자세한 내용은 perlfilter의 perldoc 페이지를 참조하십시오.
이들은 전처리 기입니다. 그들은 Perl 컴파일러에 도달하기 전에 소스 코드를 변경합니다. 다른 언어의 가독성, 견고성 (작성자가 어렵다), 유지 보수성 (디버깅은 소스 코드가 무엇인지 생각할 때 까다로워집니다.)에 대해 여러분은 자신의 언어를 구현하면서 무서운 것들을 할 수 있습니다. 컴파일러와 런타임이 생각하는 것과는 다릅니다).
@mu가 너무 짧습니다. 매우 솔직히 말하자면, 이것이 Perl과 관련이 있는지 없는지 모르겠습니다. – Zaid