Show GN: 드 모건의 법칙을 통해 부정 부울 표현식을 변환하는 ESLint 플러그인
(github.com/azat-io)ESLint 플러그인 드 모건 출시.
자바스크립트 코드의 논리 표현식을 더 간단하고 이해하기 쉽게 변환하는 플러그인입니다.
이것에서:
!(a && !b && c <= d)
이렇게
!a || b || c > d
좋네요! 두 AST 간에 어떤 게 좋은지는 어떻게 비교하고 있나요?
예를 들어 서로 동치인 (!a || !b || !c) 와 !(a && b && c) 를 AST depth로 비교했을 때는 전자가 더 유리한데, leaf의 개수로는 후자가 더 유리합니다. 저라면 연산이 더 적어지는 후자의 방향으로 변환하고 싶을 것 같아요.
optimization preference가 depth인지, leaf의 개수인지에 따라 다르게 변환하는 옵션이 있다면 좋을 것 같습니다.