Skip to content

Native Input Planning

kimjooyoon edited this page Oct 9, 2026 · 3 revisions

입력부터 실행하고 같은 프로그램을 다시 확인하기

Gooo에서 코드를 조립하기 전에, 호출자가 넣어야 할 값부터 볼 수 있게 만들고 있습니다. 여러 입력이 있거나 보조 함수를 부르는 코드도 컴파일러가 연결과 조립 순서를 알려줍니다. 도구가 그 구조를 읽어 다음 작업을 이어갈 수 있습니다.

PR1429를 정상 병합한 뒤 0.6.23을 공개했습니다. 계획 조회·입력 실행·저장 재생을 같은 공개 파일로 이어갈 수 있습니다. 소스는 2b17c4879d0bb2cd1e48ccc23b8743c0fb564267입니다.

사용 흐름

  1. body-plan으로 필요한 입력 이름·타입·연결을 봅니다.
  2. --inputs-template으로 입력 파일을 만들고 원하는 값을 넣습니다.
  3. body-compose --inputs로 실제 값을 실행하고 생성 결과를 폴더에 저장합니다.
  4. 같은 폴더의 원본과 조립 기록을 다시 사용합니다.
  5. 기대값이 있을 때 --cases로 그 프로그램을 확인합니다.

설계도에 부품과 연결선을 적어 놓고, 같은 작업대에서 조립품을 계속 확인하는 흐름입니다. 입력만 넣은 결과에는 정답률이 생기지 않습니다. UNKNOWN, 기대값 0개, 통과 0개로 남습니다. 본문을 고를 때 사용한 소스 사례와 나중에 호출자가 확인한 사례는 각각 기록합니다.

확인한 범위

공개 파일을 설치한 뒤 macOS arm64에서 같은 네 입력 흐름을 다시 실행했습니다. 실제 설치 파일의 소스·체크섬이 공개 태그와 같고, 원본 보고서 20개가 검사를 통과했습니다. 입력만 넣은 점수는 0/0·UNKNOWN이며 저장 재생의 새 추론은 0회입니다. 공개 설치본의 원본.

앞선 후보 검증

깨끗한 후보 소스 90bab730af14bef64e8378627450d3dd131967b3의 macOS arm64 실행 파일로 전체 네이티브 릴리스 검사가 PASS/EXACT를 반환했습니다. Go 1.27.2로 두 번 빌드한 실행 파일과 묶음이 같았고 저장소 쓰기는 0회였습니다. 이것은 로컬 후보 검증입니다. 공개 배포는 별도의 네 플랫폼 CI와 릴리스 계약으로 결정됩니다.

새 검사에는 한글 레코드와 자체 소형 모델, 영어 레코드와 고정 순서, 여러 입력을 가진 7개 활동의 연결, 중첩된 보조 함수가 들어갑니다. 각 프로그램은 계획·입력 템플릿·입력 실행·저장 재생·나중의 기대값 검사, 다섯 원본 보고서를 남깁니다. 네 프로그램의 기대값 수는 각각 4·4·49·2입니다. 기존 구조 릴리스 사례 26개와 이 추가 명령 관측은 별도로 셉니다.

새 한글 모델 흐름은 생성 때 한 번 예측했습니다. 실행·저장 재생의 새 예측은 0회였고, 9007199254740993도 유지됐습니다. --repeat 2의 두 번째 요청은 같은 실행 파일을 사용합니다. 기대값이 생기기 전의 관측에 성공 점수가 붙거나 기록된 0회 값이 빠지면 검사가 실패합니다.

구현·회귀 관측 · 후보 실행의 원본 보고서 · 실행 안내 · 여러 본문의 피드백

최근 자료에서 참고한 점

Meadows의 컴파일러 그래프 JSON, tinyjsapp의 작은 배포 구성, Carson Gross의 글에서 다룬 읽을 수 있는 코드와 복잡성, Once의 결과 재사용을 살펴봤습니다. 현재 Gooo에는 공개 계획과 저장된 프로그램을 이어 쓰는 방법으로 적용했습니다. 상시 큰 모델·별도 데스크톱 프레임워크·시간만으로 결과를 유효하게 보는 캐시는 보류했습니다. 구체적인 판단을 남겼습니다.

조건식의 typed-path 본문은 실행과 저장 재생이 구현돼 있습니다. 다른 본문과 함께 원래 호출 실패를 받아 후보를 다시 조립하는 경로는 다음 구현 대상입니다.

Gooo

배우기

직접 다뤄 보기

원리와 개발

공개 코드와 모델

Clone this wiki locally