▲neo 6시간전 | parent | favorite | on: GN⁺: 어떤 언어에서도 사용할 수 있는 C-Reduce 기술(bernsteinbear.com)Hacker News 의견 한 사용자는 파일을 줄이는 방법을 공유하고, RustPython과 scrapscript를 사용하여 설정하는 방법을 설명함 git clone 명령어를 사용하여 RustPython과 scrapscript를 클론하고, cargo build --release로 빌드함 interesting.sh 파일을 다운로드하고 실행 권한을 부여함 nix run nixpkgs#creduce 명령어를 사용하여 파일을 줄임 C-Reduce의 사용을 추천하며, Shrinkray라는 도구도 함께 사용해볼 것을 권장함 Shrinkray는 포맷에 독립적이며 C-Reduce가 잘 작동하지 않는 경우에도 유용함 C-Reduce에 대한 논문이 2012년에 발표되었음을 언급함 John Regehr et al.의 논문을 통해 C-Reduce의 작동 방식을 설명함 C-Reduce를 처음 알게 되었고, git bisect를 처음 발견했을 때와 같은 흥미로움을 느낌 나중에 필요할 때 사용하기 위해 기억해 두기로 함 C-Reduce의 예시를 보여주는 기사를 발견했으나, 각 반복에서 무엇을 제거할지 결정하는 방법에 대한 이해가 어려움 토큰화 과정이 있을 것으로 추측되지만, 프로그래밍 언어 간에 어떻게 작동하는지 이해하기 어려움 C-Reduce가 매우 유용하다고 평가함 CSmith를 사용하여 무작위 테스트 프로그램을 생성하고, 충돌 시 자동으로 C-Reduce를 사용하여 문제를 줄임 델타 디버깅은 새로운 개념이 아님 "delta"라는 델타 디버깅 구현은 19년 이상 되었으며, 오픈 소스로 공개됨 LLVM 소개에서는 표준 델타 디버깅 도구로 언급됨 SQL에서도 잘 작동하며, 직장에서 사용 중임 SQLancer를 통해 발견함 C 언어 외의 언어에서도 작동하는 이유에 대한 설명이 없으면 믿기 어려움 LLM을 사용하지 않기 때문에 더욱 혼란스러움 C-Reduce의 좋은 후속 도구로 cvise를 추천함 어셈블리 프로그램을 최소한의 집합으로 줄이는 데 여러 번 사용했으며, 매우 유용한 프로그램임
Hacker News 의견
한 사용자는 파일을 줄이는 방법을 공유하고, RustPython과 scrapscript를 사용하여 설정하는 방법을 설명함
git clone
명령어를 사용하여 RustPython과 scrapscript를 클론하고,cargo build --release
로 빌드함interesting.sh
파일을 다운로드하고 실행 권한을 부여함nix run nixpkgs#creduce
명령어를 사용하여 파일을 줄임C-Reduce의 사용을 추천하며, Shrinkray라는 도구도 함께 사용해볼 것을 권장함
C-Reduce에 대한 논문이 2012년에 발표되었음을 언급함
C-Reduce를 처음 알게 되었고, git bisect를 처음 발견했을 때와 같은 흥미로움을 느낌
C-Reduce의 예시를 보여주는 기사를 발견했으나, 각 반복에서 무엇을 제거할지 결정하는 방법에 대한 이해가 어려움
C-Reduce가 매우 유용하다고 평가함
델타 디버깅은 새로운 개념이 아님
SQL에서도 잘 작동하며, 직장에서 사용 중임
C 언어 외의 언어에서도 작동하는 이유에 대한 설명이 없으면 믿기 어려움
C-Reduce의 좋은 후속 도구로 cvise를 추천함