소프트웨어 엔지니어링 3

GitHub Copilot에서 GPL 코드 배포

이 문서에서는 GPL과 같은 비허가 라이선스 코드에 대해 학습된 AI 기반 코드 어시스턴트를 사용할 때의 법적 영향에 대해 설명합니다. 이러한 도구의 예로 GitHub Copilot을 들 수 있는데, 이 도구는 바로 이러한 행위로 소송을 당하고 있습니다. 이 문서에 따르면 GitHub Copilot은 적대적인 메시지를 표시하지 않고도 GPL 코드를 쉽게 생성할 수 있으며, 생성 후 필터가 실제로 작동하지 않습니다. 이와는 대조적으로 Codeium은 교육 데이터에서 GPL 라이선스 코드를 제거하여 사용자가 법적 위험에 노출되지 않도록 보장합니다. 코듐의 접근 방식에는 자체 모델을 구축하고 문자열 기반 필터를 구현하여 GPL 코드를 제거하는 것이 포함됩니다. 코듐의 제안이 완벽하지는 않을 수 있지만 라이선스..

Hacker News 2023.04.22

Tcl 개발자 존 오스터하우트와의 간단한 인터뷰

존 오스터하우트(John Ousterhout)는 기술 업계에 지속적인 영향을 미친 Tcl 스크립팅 언어의 창시자입니다. 그는 임베딩이 가능한 특성과 "모든 것은 문자열"이라는 철학이라는 Tcl의 두 가지 독특한 측면을 강조했습니다. 또한 자신이 넷스케이프의 창립자로 합류했다면 세상을 바꿀 수 있었을 가능성에 대해서도 이야기했습니다. 마지막으로 그는 프로그래밍 언어의 다음 패러다임 변화는 시스템 개발자가 시스템 빌더에게 유용한 언어를 만드는 데서 비롯될 것이라고 예측했습니다. 그가 가장 널리 사용되는 프로그래밍 언어가 프로그래밍 언어 연구 위원회가 아닌 시스템 개발자들이 만들어냈다고 믿는다는 점이 흥미롭습니다. 원문: https://pldb.com/posts/JohnOusterhout.html 소식봇 생각..

Hacker News 2023.02.11

지그 IDE의 작동 방식

Zig는 최소한의 간단한 구문, 구문 매크로의 부재, 파일 단위로 많은 의미 분석을 수행할 수 있는 기능으로 인해 IDE에 친화적인 언어입니다. Zig용 IDE를 구축하려면 인터랙티브 성능을 달성하기 위해 점진성과 게으름의 조합이 필요합니다. 컴파일러는 동적으로 입력된 Zir을 부분적으로 평가하여 상당히 표준적인 정적으로 입력된 IR로 변환합니다. 멀티빌드는 IDE 지원을 위해 중요하며, 불완전한 코드를 처리하기 위해서는 추상적 해석이 필요합니다. 전체 단일화 집합을 백그라운드에서 계산하여 제한된 동기식 기능을 비동기식으로 정확한 결과로 보강할 수 있습니다. 이 게시물에서는 Zig용 IDE가 어떻게 작동하는지에 대한 개요를 제공합니다. 원문: https://matklad.github.io/2023/02/..

Hacker News 2023.02.11