Dead Milon

custom esolang interpreter
출력 결과가 여기에 표시됩니다.
문법 참고
── 인코딩 규칙 (Self-Modifying) ──
동적 오프셋 복호화n번째 문자의 오프셋 = n + floor(|lastResult| % 94) + floor(|in?space| % 94) + floor(elapsed % 94). 실행 중 변수 값이 바뀔 때마다, 그리고 경과 시간(ms)이 바뀔 때마다 복호화 키도 달라짐. 정적 분석 불가.
lastResult가장 최근에 실행된 연산(in?space 또는 ASC?space)의 결과값.
elapsed프로그램 실행 시작 후 경과 시간 (밀리초 단위 정수). 0.001초라도 계산이 늦어지면 복호화 키가 바뀌어 전혀 다른 문자가 출력됨. 코드 작성 시 실행 타이밍을 고려해야 함.
── 변수 ──
in?space일반 변수 (숫자 저장)
ASC?spaceASCII 출력 변수 (연산 후 문자 출력)
── 선언 / 연산 ──
in?space ASCIN 49,50;ASCII 코드 목록 → 숫자 변환 후 저장 (49,50 → "12" → 12)
in?space ==buh(buc(l)) to N;in?space 초기값 N, 더하기 연산자 등록 (l = 0~2)
in?space buc(l) to N;in?space에 N을 더함
in?space ==buh(!@=@) to N;in?space 초기값 N, 곱하기 연산자 등록
in?space ==buh(!@=_!) to N;in?space 초기값 N, 빼기 연산자 등록
ASC?space ==buh(buc(l)) to N;ASC?space 초기값 N, 더하기 연산자 등록 (출력 없음)
ASC?space buc(l) to N;ASC?space에 N을 더한 후 ASCII 문자 출력
── 연산자 기호 ──
buc(l)더하기. l = (round(lineNo/2×3) + floor((opCallCount+1)^1.5) + (lineNo XOR opCallCount) + 10) % 3. 줄번호와 연산 호출 횟수가 동시에 영향.
!@=@곱하기
!@=_!빼기
#%% / !@=)>%나누기 (홀수번째 호출 / 짝수번째 호출)
── 강제 연산 규칙 ──
N번째 연산 호출 (12배수)강제로 더하기(+)로 실행
N번째 연산 호출 (6배수, 12 제외)강제로 곱하기(×)로 실행
N번째 연산 호출 (4배수, 12 제외)강제로 빼기(−)로 실행
── 제어 ──
skelo?n?in:N;N초 대기 (소수점 가능, 예: skelo?n?in:1.5;)
clr?space{;지금까지 출력한 모든 내용 초기화