<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="http://prosys.kaist.ac.kr/feed.xml" rel="self" type="application/atom+xml" /><link href="http://prosys.kaist.ac.kr/" rel="alternate" type="text/html" /><updated>2026-07-12T23:16:32+00:00</updated><id>http://prosys.kaist.ac.kr/feed.xml</id><title type="html">Prosys Lab @ KAIST</title><subtitle>Write an awesome description for your new site here. You can edit this line in _config.yml. It will appear in your document head meta (for Google search results) and in your feed.xml site description.</subtitle><author><name>Prosys Lab</name></author><entry><title type="html">AI 시대에 PL을 연구하는 대학원생의 고민</title><link href="http://prosys.kaist.ac.kr/dongjae-trip-pldi/" rel="alternate" type="text/html" title="AI 시대에 PL을 연구하는 대학원생의 고민" /><published>2026-07-12T00:00:00+00:00</published><updated>2026-07-12T00:00:00+00:00</updated><id>http://prosys.kaist.ac.kr/dongjae-trip-pldi</id><content type="html" xml:base="http://prosys.kaist.ac.kr/dongjae-trip-pldi/"><![CDATA[<h2 id="들어가며">들어가며</h2>

<p>운 좋게도 PLDI에 논문 한 편을 출판하게 되어, 올해 학회에 참석할 기회를 얻었다.
이번 PLDI는 미국 콜로라도주의 작은 대학 도시 볼더에서 열렸다.
볼더는 날씨가 좋아 옷차림과 짐도 평소 여행보다 가벼웠다.</p>

<p>학회에서 중요한 것은 발표 자체보다 쉬는 시간과 식사 시간에 나누는 이야기인 것 같다.
발표가 이미 지나간 일에 관한 것이라면, 식사 시간의 대화는 앞으로 해야 할 일에 관한 것이기 때문이다.
그런 점에서 이번 PLDI의 핵심 주제는 AI였다.
세 편의 기조연설 가운데 두 편이 AI를 다뤘고, 평소 대화도 대부분 AI가 공통 주제였다.</p>

<p>AI가 일으킨 거대한 변화 속에서 프로그래밍 언어 분야는 어떻게 고유한 가치를 지키고, 어떤 역할을 맡아야 할까?
이 글에서는 볼더에서 직접 보고 들은 경험을 바탕으로, PL을 분야의 대학원생으로서 그 질문에 대한 답을 일부나마 남기고자 한다.</p>

<table style="width:100%; table-layout:fixed;">
  <thead>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczNUGDKn_P-47WnxxI4IXsLRH41cqG3zh9D2SDfQtQG4C2qFE86A7QjKiDkSLW0GDo2KrnP_HIFiDmGIXsTTiLp49R9e9w1G3agyYVq0MnpwqlpWQU8KjRRcCX37jfTINKLD-mMq5snzFRLsoEcRhQJ6=w1239-h929-s-no-gm" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>맛있는 대한항공 기내식</b></td>
    </tr>
  </tbody>
</table>

<table>
  <thead>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczOZDC7OFWLQ35WdLImM5fGTKp5n6tDYTHI6xU04jXNrnhEbnt1Zv36MieVVNo-zC4vA1hlkIhgup-CaT0VSNbsR0pP77UEczbFpNYFEN6D15EhIGwWEvKy8ecWpUSZAB7NGrWG1v47CNrYHIGnjxyfk=w697-h929-s-no-gm" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>멋진 로키 산맥</b></td>
    </tr>
  </tbody>
</table>

<h2 id="볼더로-가는-길">볼더로 가는 길</h2>

<p>콜로라도주 볼더는 미국 내륙에 자리한 소도시로, 한국인에게는 비교적 낯선 곳이다.
덴버에서 차로 한 시간 거리에 있지만 덴버행 직항편이 없어, 시애틀을 경유해 약 20시간 만에 도착했다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczMwv1UlmIpB8rccQeSLX5vjdq1Rt_8PQoRFki_i2d66CfpOjNZKtJ9i6Bqr_WLQBTJnv8rNo1LvomSoPWtHyBIhWtH5SuvorywTZEX8Dz0vzegeKM4Ux28Sk65RXP2v0CHsJxP3jWMeQJFYzgUHQqUg=w697-h929-s-no-gm?authuser=0" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>멋진 호텔 풍경</b></td>
    </tr>
  </tbody>
</table>

<p>학회장은 신축 호텔인 Limelight Boulder였다.
호텔 너머로 펼쳐진 로키 산맥이 인상적이었다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczNJKrtbuaOzGwFbJi2hbE14FgYqLFx4Joas_RmdVSw3OaF2r1EngzZrTOio5ccYCsO5j-cvsu9s1S2bJ3gLHzVV1qhKu2fgT65DeM0tSLWIom63YnNOUi6AJ-dSaNvA6fM7A6oD8IoPo5JCe1iCHzdu=w1239-h929-s-no-gm" /></th>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczPxEINo-sU2T9mL95PNaV1khpnFxe5QRw5cX8kRvyDlQRKT0XKjPJCCgk1CU7Rg6AyeAMN_8rjZTII16V6esJBrgGZiZTS3CBAT3_Ofbq6uEpau753Y_g044J_WVtRLa5EB-nvDO_cGJwkv3zaCqBki=w1239-h929-s-no-gm" /></th>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczMM3rUMg-J1WMXG-WVD4-1FXRv49Rq1HBv_duq7TSNggNrQyx_hd7Zvl8ZdeeJse1NG0uZlvQ2i4l7JO4Ufuc5ZXDsfBea0UAPssQ1k1OzdYacYOUKAeCNhMlDVnnw8bToP-g3E4TdELI7jnZU7Fvor=w1239-h929-s-no-gm" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center" colspan="3"><b>맛있는 호텔 조식. 차례로 프렌치 오믈렛, 볼더 브렉퍼스트, 에그 베네딕트다.</b></td>
    </tr>
  </tbody>
</table>

<p>조식이 별도로 제공되지는 않았지만, 1층 레스토랑에서는 팁을 제외하고 약 20달러에 한 끼를 먹을 수 있었다.
달걀 요리와 감자가 어우러진 전형적인 서양식 아침 식사였다.</p>

<h2 id="page">PAgE</h2>

<p>첫날에는 PAgE 워크숍에 참석했다.
PAgE는 에이전트를 위한 여러 PL 접근법과 PL을 위한 에이전트 기반 접근법을 함께 다루는 워크숍이었다.
PLDI에서도 에이전트 관련 워크숍이 열릴 만큼, 이제 AI의 영향이 미치지 않는 곳을 찾기 어려워 보였다.</p>

<p>내용 자체는 이미 논문으로 접한 것이 많아, 새롭게 다가온 부분은 많지 않았다.
그러나 PLDI에서 이러한 워크숍이 열렸다는 사실만으로도 변화의 신호는 분명했다.
작년까지만 해도 PLDI에서 AI를 활용한 방법론을 찾기 어려웠지만, 올해는 AI를 주제로 한 별도 워크숍까지 마련되었다.
PLDI가 AI를 한층 적극적으로 받아들이고 있다는 인상을 받았다.</p>

<p>Gagandeep Singh 교수님의 기조연설도 인상적이었지만, 가장 기억에 남은 대목은 Microsoft 연구팀이 소개한 Verus Agent 구축 과정의 실패담이었다<sup><a href="#autoverus">1</a></sup>.
Microsoft는 2023년부터 Rust 프로그램을 검증할 수 있도록 확장한 언어인 Verus를 위한 에이전트와 평가 벤치마크를 구축해 왔다.
그 결과 AutoVerus라는 에이전트 고삐(agent harness)를 개발해 좋은 성과를 거두었다. 여기서 ‘고삐’는 에이전트의 동작을 제어하고 보조하는 소프트웨어를 뜻한다.
그러나 언어 모델이 빠르게 발전하면서 Opus-4.8과 범용 고삐인 Copilot을 결합한 매우 단순한 접근법이 AutoVerus의 성능을 압도했다.
모델의 역량이 커지자 에이전트를 제어하던 고삐가 오히려 성능을 제한하는 장치로 작용했기 때문이다.
결국 모델의 역량이 커질수록, 그에 맞춰 고삐의 크기도 알맞게 조절해야 한다.</p>

<p>문제는 OpenAI와 Anthropic 같은 영리 기업이 언어 모델의 발전 방향을 주도한다는 점이다.
이들은 자사의 에이전트 고삐인 Codex와 Claude Code에 맞춰 언어 모델을 훈련하고 출시한다.
반면 외부 연구자는 모델의 학습 방향을 직접 통제할 수 없다. 새 모델을 직접 사용하며 무엇을 잘하고 어디에서 실패하는지 계속 확인할 수밖에 없다.
처음부터 불리한 조건에서 벌이는 경쟁인 셈이다. 모델 버전이 바뀌면 기존 고삐를 전면 폐기해야 할 수도 있다.</p>

<p>이런 이유로 Microsoft도 고삐 설계를 잠시 미뤄 두고 소형 모델의 미세 조정(fine-tuning)에 집중하는 것으로 보인다.
소형 모델을 훈련하는 이유는 비용 문제 때문이다.
현재 프로그램 검증에는 테스팅보다 훨씬 많은 비용이 든다.
값비싼 GPT나 Claude 대신 쉽지만 반복적인 검증 작업을 수행할 소형 모델이 필요한 것이다.
그러나 소형 모델의 미세 조정조차 대학 연구실이 감당하기에는 비용이 크다.
특히 최근에는 미세 조정보다 훨씬 값비싼 실시간 강화 학습(online reinforcement learning)이 주목받으면서 자원이 부족한 연구자에게는 연구의 진입 장벽이 빠르게 높아지고 있다.</p>

<p>그렇다면 충분한 자금도, A100·H100·B100 같은 고성능 GPU도 없는 PL 연구자는 무엇을 해야 할까?
한 가지 길은 근본 원리에 집중해 에이전트 고삐를 설계하는 것이다.
새 모델이 나올 때마다 기존 고삐를 폐기해야 하는 까닭은 고삐의 기능 대부분이 휴리스틱에 의존하기 때문이다.
휴리스틱은 설계할 때 전제한 조건이 유지되는 동안에는 잘 작동한다. 그러나 모델이 바뀌어 그 전제가 무너지면 쓸모를 잃고, 오히려 성능을 떨어뜨린다.
따라서 휴리스틱에만 기대기보다 수학적 정당성을 보일 수 있는, 다시 말해 튼튼함이 검증된 고삐를 설계해야 한다.
Lean과 같은 증명 보조기(interactive theorem prover)에 기반한 검증 기법들이 AI 분야에서 주목받는 이유도 휴리스틱을 넘어서는 수학적 근거를 제공하기 때문이다.</p>

<h2 id="쉬어가기-로키-산맥-하이킹">(쉬어가기) 로키 산맥 하이킹</h2>

<table>
  <thead>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczO3x0RKPaLPSeVVsh5XSoHaHWXXBIK0BrB92FSa1VqlI3fhGASjhPWukgh6jkAWLBYBKaQzK8Ck8uak9ySZ8hqLT-ULugTTye6BBFC9ouN0WVwxxeONmdevfK8hEzSvvScR75XX97g1-dTWlrDNfEjYvw=w1238-h929-s-no-gm" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>볼더를 배경으로 로키 산맥에서</b></td>
    </tr>
  </tbody>
</table>
<table>
  <thead>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczPO0Ow1BaRqr66qa6J0L5IAJohXoyuk6jliHEJa2GfTlcVFQRuIYSiLzV6_qqmit2O6fxaBi60Ovz7LnuqgM78tPzqKhFjeDBNMyNqkQfprOO8S5fxAGWg4Z1bllxoiNwODqG1Utwpok4OURKcpQ2At=w697-h929-s-no-gm" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>로키 산맥을 배경으로 볼더에서</b></td>
    </tr>
  </tbody>
</table>

<p>이번 PLDI가 콜로라도주 볼더에서 열린 만큼, 로키 산맥 하이킹은 자연스럽게 일정에 포함되었다.
주최 측이 교류 행사로 단체 하이킹을 마련해 준 덕분에 좋은 코스를 걸을 수 있었다.
왕복 한 시간 남짓한 길을 걸으며 이탈리아에서 온 석사과정 학생과 친해질 수 있었다.
북적거리는 서울과 달리 자연을 가까이에서 즐길 수 있는 환경이어서, 느긋하게 이야기하며 네트워킹하기 좋았다.</p>

<h2 id="plmw">PLMW</h2>

<p>작년에 이어 올해도 PLMW(PL 멘토링 워크숍)에 참석했다.
작년과 달리 학생들의 친목을 위한 행사, 이를테면 금지어 게임 같은 프로그램은 사라졌다.
아마 참가자들의 피드백이 반영된 결과인 것 같다.</p>

<p>PLMW는 처음부터 끝까지 강의 형식으로 진행됐고, ‘연구하는 방법’에 관한 이야기가 주를 이루었다.
가장 눈길을 끈 세션의 제목은 “Roses are Blue, Violets are Red; With Future AI, is Research Dead?”였다.
AI가 모든 인지 작업을 자동화할 수 있다는 담론이 힘을 얻는 오늘날, 연구 자체의 의미는 연구자라면 누구나 한 번쯤 묻게 되는 문제다.
아쉽게도 세션은 이 문제를 직접 파고들기보다 연구 주제를 선별하고 구성하는 여러 방법론을 소개하는 데 초점을 두었다.
그럼에도 연구자라면 지적 노동의 자동화가 현실이 된 세계에서 연구의 본질을 다시 살펴볼 필요가 있다.</p>

<p>개인적인 생각을 덧붙이자면, 방향을 제시하는 일은 여전히 인간의 영역으로 남겠지만, 구현과 반복 작업의 상당 부분은 AI가 맡게 되리라 본다.
목표가 명확하고 결과를 검증할 수 있는 작업에서 AI 에이전트는 이미 많은 인간보다 뛰어난 성능을 보인다.
최적화나 기능 구현 같은 작업에서 인간은 AI의 지치지 않는 반복 수행 능력과 방대한 맥락 처리 능력을 따라가기 어렵다.
반면 거시적인 방향을 제시하고 중요한 문제를 찾아 정의하는 일은 아직 인간의 몫에 가깝다.
인간이 모호한 문제를 정교하게 다듬어 검증 가능한 형태로 바꾸고, AI가 반복적인 실행과 정리를 맡는 분업이 가능하다.
여기서 방향을 제시한다는 말은 단순히 AI에게 할 일을 분배하는 일이 아니다.
수많은 가능성 가운데 지금 풀 가치가 있는 문제를 고르고, 왜 그것이 중요한지 판단하는 일에 가깝다.</p>

<p>다만 그 과정에서 아이디어를 검증하는 속도는 훨씬 빨라지고 경쟁은 더욱 치열해질 것이다.
AI가 기존 접근으로는 충분히 설명하거나 해결하기 어려운 결과를 더 일찍 드러낸다면, 패러다임의 전환과 큰 발전이 일어나는 주기도 빨라질 것이다.
이는 학계와 인류 전체의 발전이라는 관점에서는 바람직한 흐름일 수 있다.
그러나 그 한가운데서 일하는 개인은 급격한 변화와 치열한 경쟁으로 더 큰 피로를 느낄 수 있다.
오늘날 많은 연구자가 느끼는 불안도 지나치게 빠른 변화 속에서 뒤처질지 모른다는 두려움, 곧 FOMO에서 비롯된다고 생각한다.</p>

<h2 id="쉬어가기-건강한-몸에-건강한-정신이-깃든다">(쉬어가기) 건강한 몸에 건강한 정신이 깃든다</h2>

<p>건강한 신체를 유지하는 일은 연구자로 오래 일하기 위한 필수 조건이다.
인턴 시절과 대학원 초반에 겪은 스트레스로 몸무게가 이전보다 20kg 이상 늘어난 적도 있었다.
당시에는 실력이 부족한 상황에서 평소처럼 운동하는 것을 사치라고 생각했다.
지금 돌아보면 학부생으로서 경험과 실력이 부족한 것은 당연한 일이었는데도, 조급한 마음에 운동을 거의 하지 않았다.
그러나 체력이 떨어지고 스트레스에 대한 저항력도 약해지자, 오히려 원하는 만큼 집중하기 어려워졌다.
다행히 지금은 체중 관리와 운동을 통해 건강한 체중을 유지하고 있다.
과거로 돌아갈 수 있다면, 아무리 바쁘더라도 운동만큼은 꾸준히 이어 갈 것이다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczMuuTZpD7te_Fn4C6LDXvCBindM4ZDwgb7vx8dYe5aQPDCLKiZCFOUi9grL3vANQsioic5zf_ujq19tZWatAap1x4aJGU-iDItbq1rRhUwthKvftAaz94Nlr8fn6FNW5x9Mr7MQBq7rU60fwLmCpGji=w1078-h1436-s-no-gm" /></th>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczNxs7m3yfB_JDMdnsagCTHKZ0rQdDQBmefeNuEegFhhIxiyZzzzTnNYSGT3KWBd3H7tFFJ0OIQFUUzUvjxE91FP20mNLeupKIRNCUmKRfWlnuCcftWU3Eqdy4Z7hMLyvHQQB2ppZwuSPhJrYZRrtdN9=w1078-h1436-s-no-gm" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center" colspan="2"><b>월요일과 화요일 오전에 방문한 호텔 내부 헬스장. 크기는 작지만 알차게 구성되어 있었다.</b></td>
    </tr>
  </tbody>
</table>

<table>
  <thead>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczO6Y8lDTg33NbGHZRn2KjSMVdodIt5olaS0XWsXsLKBKQSVlDINq29Ki1z3SAbZVRwKV6CZQi5DxYwbf3JUZ0nKFvl5SMrfNOATN4-LlxZJJ42bpMSk9WJb5RRPBkMbzLI0iO9nxEn2L5_kDnGb0k_f=w1078-h1436-s-no-gm" /></th>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczO1Y0WdDRzwm0R-X1jVhRNzD0d-TY5mqLdtyyLFKYK5bBSm43U1eT6fv7xortaP7V0u08FzrVxaHF4lCEWD-uwScYH4LASidyWOF10Akbs6LtxHf4Ent17L6jbYnFB_DIO9onWrqdT3rdxvreyZZR7d=w1078-h1436-s-no-gm" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center" colspan="2"><b>둘째 날 학회 일정을 마치고 방문한 호텔 수영장. 멋진 노을과 로키 산맥이 어우러진 풍경이 인상적이었다.</b></td>
    </tr>
  </tbody>
</table>

<table>
  <thead>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczN9ls_ifUGeIyS1Wk0x0oXpnZ_PAUUpcKWWEJ5BPBPt6x0XChHeip_1vqSbO9cXHkJ_8639lbuB43xb3yVvESR7vkm2edpn2Ff6hRpAfF6TTr2FPbpMEC6l7axARZdK9nkszuIb5X9jl5rVeLuxf81q=w1914-h1436-s-no-gm" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>셋째 날 류석영 교수님 연구실 분들과 함께한 러닝. 고산지대여서 그런지 평소보다 훨씬 힘들게 느껴졌다.</b></td>
    </tr>
  </tbody>
</table>

<h2 id="expecto">Expecto</h2>

<table>
  <thead>
    <tr>
      <th style="text-align: center;" colspan="2"><img src="https://lh3.googleusercontent.com/pw/AP1GczOfkVZPkpVXer4xOpoiOPmuOS7VULPSG-rwUTDm9Xl_MMQubMFZ7cn_swzdT77kUTVGipq08GfcEU88P4ikt2cx-VIeMeUfppPkU2VPhOV9Op2XOGEDKnxzPxTAQoMxqgOvA1PcT_1dRK_pK16Wsy-sSA=w1914-h1436-s-no-gm" /></th>
    </tr>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczMMceB0OEeUHni5ahOJagVhdnX7VJsdA9ncYimTptI2IyLYCI3p7EMD-3v-nC-2Af6fk_Wpp9tkInYLmSVeEb7NIKVwsKpctXy0DK8BuRfR5H8sC7N-7vaz1eqvLdAa6qkKTQyUBl4tmSHraFhTyGX7vg=w1078-h1436-s-no-gm" /></th>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczNsT0exZnUSPDgTiYZ9n0OknUEzUaLw8Prlc9vmTwJuXSA7kZwBND85MK5b_TkUKOo_sLG7SXyKHRvtWQRM6ziTjpV39KNv89k7IQG_KfMZzx93nZbaJtzP72nKeSgk82WyBoS8DVgNQKqz2F06bswX9Q=w1078-h1436-s-no-gm" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center" colspan="2"><b>교수님께서 찍어 주신 Expecto 발표 사진</b></td>
    </tr>
  </tbody>
</table>

<p>수요일은 본 학회 첫날이자 내가 처음으로 PLDI에서 발표하는 날이었다.
작년 MobiCom에서 첫 국제 학회 발표를 경험했지만, 여전히 긴장되기는 마찬가지였다.
특히 이 연구에는 MobiCom에서 발표한 VeriSafe Agent보다 더 깊은 애착이 있었기에, 잘하고 싶은 마음도 컸다.</p>

<p>발표를 열심히 준비했지만 아쉬움은 남았다.
긴장한 탓에 더 구체적으로 설명해야 할 부분을 지나쳤고, 질의응답 시간에는 질문에 온전히 집중하지 못해 충분히 답하지 못했다.
이런 자리일수록 힘을 빼고 긴장을 내려놓아야 준비한 만큼 실력을 발휘할 수 있다.
그러나 내게 중요한 자리인 데다 아직 익숙하지도 않아 마음처럼 쉽지 않았다.</p>

<p>다행히 청중의 반응을 보니 내가 전하려던 바는 대부분 전달된 듯해 마음을 놓았다.
특히 월요일과 화요일에 만나 발표에 초대했던 사람들이 실제로 찾아와 축하해 주었고, 발표가 흥미로웠다는 말도 건넸다.
그 순간 묘한 소속감을 느꼈고, 네트워킹과 학회 발표라는 두 목표를 모두 이룬 듯해 기뻤다.
내게 이번 발표는 연구 결과를 소개하는 일 이상이었다.
오랫동안 애착을 둔 연구를 PLDI에서 발표하고, 그 연구를 매개로 사람들과 대화를 나누면서 내가 이 공동체의 구성원이 되어 가고 있음을 실감한 순간이었다.
작년 서울에서 열린 PLDI에서는 논문을 발표할 기회도 없었고, 네트워킹도 어색해 제대로 하지 못했다.
그때와 비교하면 1년 사이에 나름의 성장을 이룬 듯해 만족스러웠다.</p>

<p>발표 뒤에는 내 논문에 가장 큰 영향을 준 Microsoft의 Shuvendu Lahiri와 점심을 함께했다.
Shuvendu의 연구팀은 현재 명세와 인간의 의도를 일치시키는 방법에 큰 관심을 두고 있다고 했다.
그 관심의 바탕에는 AI와 엄밀 검증(formal verification)의 진정한 병목이 명세 작성에 있다는 문제의식이 자리하고 있었다.
Expecto 역시 같은 관찰에서 출발한다. 자연어로 표현된 의도에서 명세를 생성하는 문제를 하향식 명세 합성이라는 아이디어로 풀어낸 연구다<sup><a href="#expecto">5</a></sup>.</p>

<p>다만 명세에는 기능적 요구 사항뿐 아니라 성능, 코드 품질, 보안과 같은 비기능적 요구 사항도 담겨야 한다.
아직 이러한 속성을 효과적으로 표현하는 방법이 충분히 마련되지 않았기에, 명세 언어의 확장은 앞으로 프로그래밍 언어 분야의 주요 연구 주제 가운데 하나가 되리라 생각한다.
Expecto처럼 자연어로 표현된 의도에서 명세를 생성하려는 연구도 앞으로 늘어날 것이다.
그러나 완벽한 해법을 마련하기 어려운 문제인 만큼, 앞으로도 중요한 과제로 남을 것이며 공학적인 관점에서 접근하는 일이 중요해 보인다.</p>

<p>앞서 설명했듯이 인간은 모호한 문제를 명료하고 검증 가능한 형태로 바꾸어 에이전트에게 위임하는 역할을 맡게 될 것이다.
다시 말해, 인간의 핵심 역할은 명세를 작성하는 일이다.
명세 작성은 AI 에이전트를 제대로 다루기 위한 핵심 기술이 될 것이다.
나아가 프로그래밍을 넘어 여러 분야에서 에이전트가 인간의 의도를 정확히 수행하도록 이끄는 기술로 자리 잡으리라 본다.
프로그래밍 언어 기술이 앞으로 소프트웨어 개발자뿐 아니라 에이전트를 다루는 모든 사람을 위한 기술로 확장되어 더 많은 관심을 받기를 바란다.</p>

<h2 id="expecto-비하인드-스토리">Expecto 비하인드 스토리</h2>

<p>Expecto는 주제 선정부터 마무리까지 교수님과 내가 함께 진행한 연구다.
어쩌면 내가 박사과정에 진학하게 된 출발점이라고도 할 수 있다.
2년 전 겨울, 석사 1년 차가 끝나 갈 무렵 나는 박사과정 진학 여부를 두고 깊이 고민하고 있었다.
당시 진행하던 연구에 많은 노력을 기울였지만 큰 진척은 없었고, 더 오래 붙들어도 상황을 바꿀 만한 돌파구는 보이지 않았다.
그래서 연구를 적절히 마무리한 뒤 졸업할지, 아니면 다른 주제로 전환해 박사과정을 밟을지 고민했다.</p>

<p>진행하던 연구를 잠시 접어 두고 새로운 주제를 찾아 나섰다. 마침 추론 모델(OpenAI의 o1 모델)이 등장하며 LLM이 또 한 번 도약하던 시기였다.
당시 LLM을 둘러싼 주된 비판은 GPT-4o와 같은 모델이 추론하는 것이 아니라 패턴을 맞추는 데 그친다는 것이었고, 나 역시 그런 측면이 있다고 생각했다.
그러나 추론 모델은 이러한 비판에 정면으로 답할 만큼 놀라운 성능 향상을 보여 주었다.
나는 LLM의 발전이 당분간 멈추지 않으리라 생각했고, 이를 활용한 연구를 하고 싶었다.</p>

<p>그때 눈에 들어온 것이 엄밀 검증(formal verification)이었다.
엄밀 검증은 프로그램이 주어진 성질을 만족한다는 사실을 수학적으로 보장한다는 큰 장점이 있다.
그러나 많은 노동력이 필요해 극도로 중요한 소프트웨어가 아니면 좀처럼 시도하기 어려운 방법이었다.
LLM의 비약적인 발전으로 엄밀 검증의 자동화가 가능해 보이자 많은 사람이 이 분야에 뛰어들기 시작했다.</p>

<p>문제는 엄밀 검증에 엄밀 명세(formal specification)가 필요하다는 점이다.
그러나 당시에는 엄밀 명세가 이미 주어졌다고 가정하거나, 주어진 코드에서 엄밀 명세를 합성하는 연구가 주로 진행되고 있었다.
나는 자연어에서 엄밀 명세를 정확히 생성하는 기술이 필요하며, 이 과정이 핵심 병목이 될 것이라고 예상했다.
운 좋게도 다른 연구자들도 엄밀 명세에 관심을 기울이기 시작했고, 시기가 맞아떨어져 2026년 PLDI에 논문을 발표할 수 있었다.</p>

<h2 id="쉬어가기-귀여운-콜로라도-토끼">(쉬어가기) 귀여운 콜로라도 토끼</h2>

<p>콜로라도 대학교 캠퍼스에서 만난 귀여운 토끼다.
미국 토끼는 크고 무섭게 생겼으리라 막연히 생각했지만, 의외로 친숙하고 귀여운 모습이었다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczNLN3RJ1GDC4WNMFhN5CUqz7xAvVfD3123U-yd3YBvf_DkOa5ylZOJMnnGD-36UmXehRmjy-CsFJ2ZVKcKtp1KPHmqPerRPimNtmSbSifabNflwfJ0_WSJ-MbJN2TPTBQtXG2jYtsJVPbHAfzxUgB8e=w1204-h1604-s-no-gm" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>귀여운 토끼</b></td>
    </tr>
  </tbody>
</table>

<h2 id="새로운-병목은-검증">새로운 병목은 검증</h2>

<table>
  <thead>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczPgzzuEPFxx-2kdc8gjQ2Lyqyx30j04eCf1yx4WgoTkJ-u0eyD5JBl2v1EjEFHQ-7HLmYa6x4UYtxhRn6tk0kvd3SV0w8HOoi3SHNOz0Vzs5x0c9EmxoUNw9u9XQreyu56VZC3IcIn4_-SqCsiUUsGQ=w1204-h1604-s-no-gm" /></th>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczOq6GOpdSFWLgSdkkFJkBvWSog2yIqvRmApgl3MAjtc3Tyacd9iNGdxLWOlbfixeEtFDFrCMt2f6PrS6QNaCWsQCPoCDDSQeRK7Jfhqf4o22ToPscaMI69DSpV672HEfERAsSC-Io0Fa-_a1yFNcj1U=w1204-h1604-s-no-gm" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center" colspan="2"><b>이제 검증 연구가 핵심이다</b></td>
    </tr>
  </tbody>
</table>

<p>목요일은 UCAL 김미령 교수님의 기조연설로 시작되었다<sup><a href="#miryung-kim">3</a></sup>.
핵심 주제는 프로그램 작성이 아니라 검증이 새로운 병목이 되었으며, 이 과정에서 속성 기반 테스팅(property-based testing)이 어떤 역할을 할 수 있는가였다.</p>

<p>의도에 맞는 프로그램을 자동으로 합성하는 것은 컴퓨터 공학 분야의 오랜 숙원 중 하나였다.
PL 분야에서는 이를 위해 SyGuS, CEGIS 등 여러 합성 방법론을 개발해 왔다.
그러나 프로그램 합성에서는 PL 분야가 AI에 주도권을 내주었다.
그 과정에서 얻은 여러 아이디어는 여전히 유용하겠지만, 프로그램 합성 문제만 놓고 보면 SOTA 합성기조차 최신 AI 에이전트의 프로그램 생성 능력을 따라가지 못한다.</p>

<p>이견의 여지는 있겠지만, 특수한 상황을 제외하면 일반적인 프로그램 합성 문제는 LLM에 의해 대부분 해결되었다고 본다.
이제 핵심은 합성할 문제를 정의하고, 합성된 프로그램이 올바른지 확인하는 일로 옮겨 갔다.
즉, 명세 작성과 구현이 그 명세를 따르는지 증명하는 일이 중요해졌다.</p>

<p>앞서 명세 작성의 중요성을 길게 이야기했으므로, 여기서는 증명에 초점을 맞추고자 한다.
증명은 프로그램 합성과 비슷한 문제이지만, 합성보다 변화에 취약하고 비용도 많이 든다.
증명이 제공하는 것은 올바름에 대한 보장이지 새로운 기능이 아니다. 그러나 그 비용은 테스팅보다 압도적으로 크다.
테스팅과 달리 코드나 의도가 바뀌면 함께 수정해야 하는 부분도 훨씬 많다.
이 점이 프로그램 검증을 실제 산업에서 활용하기 어렵게 만든 핵심 이유 중 하나다.
하드웨어와 달리 소프트웨어는 쉽게 바꿀 수 있고 끊임없이 변화한다. 이는 소프트웨어의 핵심 특성이자 장점이다.
하지만 프로그램 검증의 관점에서 소프트웨어의 변경은 증명하려는 명제 자체가 달라진다는 뜻이다. 따라서 검증 결과는 변화에 매우 취약하다.</p>

<p>김미령 교수님의 핵심 아이디어는 비용이 큰 검증을 무작정 수행하는 대신, 속성 기반 테스팅으로 구현이 명세를 만족한다는 확신을 어느 정도 얻은 뒤 검증하자는 것이었다.
이 이야기를 들으며 앞으로의 과제는 검증을 이상적으로 완전하게 만드는 데만 있지 않다고 느꼈다.
개발 과정에서 감당할 수 있는 비용으로 신뢰를 높이는 실용적인 검증 방법을 찾는 일도 그만큼 중요하다.
구현체가 이미 있는 상황에서는 좋은 해결책이다.
그러나 구현체가 없거나 구현체와 증명을 함께 변경해야 하는 상황에서는 어떨까?</p>

<p>구현체와 증명이 모두 없는 상황에서는 둘을 동시에 생성하는 알고리즘이 가장 효과적일 것이라고 예상한다.
다만 기존 규칙 기반 합성(deductive synthesis)과 같은 합성 방식은 대규모 프로그램을 생성하는 데 한계가 있다.
대규모 프로그램을 생성하려면 LLM의 도움이 필요하며, 이때 LLM을 애초부터 올바르게 만드는(correct-by-construction) 합성 알고리즘에 잘 녹여 내는 것이 핵심이 될 것이다.</p>

<h2 id="jane-street도-엄밀-검증을-한다">Jane Street도 엄밀 검증을 한다!</h2>

<table>
  <thead>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczOK5ojzq3tr2_ICmTceTTqGXAsFGTg2feEB6eAx26uXSDqJce4ngPE7Wq4UUNmHt5wErNgdxc5D3r3RZ-aeeQvEhI--7dWXMIhEb-JO9EYlwtXHiqjHMURipKfrwpDCdGrgKoa4t-IzcOQoSgPRBjAt=w1078-h1436-s-no-gm" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>Jane Street가 개발한 OCaml 확장판 OxCaml</b></td>
    </tr>
  </tbody>
</table>

<p>Jane Street는 소스 코드 대부분을 OCaml 기반으로 작성하는 거의 유일한 회사로 알려져 있다.
사실상 OCaml과 관련 생태계의 거의 유일한 후원자라고 할 수 있는 고마운 회사다.
학회 부스에서 Jane Street가 엄밀 검증에 관심을 두고 있다는 이야기를 듣고, 그 배경을 들여다보았다.</p>

<p>Jane Street는 초기 접근법으로 특화 모델을 직접 훈련하기보다 GPT, Claude에 자체 제작 언어와 에이전트를 결합하는 방식을 고려하고 있었다.
특화 모델을 개발하더라도 GPT나 Claude의 새 버전이 나오면 더 뛰어난 성능을 보일 가능성이 매우 높기 때문이라고 했다.
Codex와 Claude는 생소한 언어인 OxCaml도 매우 잘 다뤄, 자체 모델 훈련에는 큰 관심이 없는 듯했다.</p>

<p>Lean이나 Rocq이 아니라 Dafny와 같은 Hoare Logic 기반 검증 도구를 선택한 이유도 물었다.
수학 문제를 증명하는 것이 목적이 아닌 만큼, 코드 검증에는 이 방식이 더 적합하다고 판단한 듯했다.
앞으로 엄밀 검증 분야의 채용도 진행할 예정이라고 했다.</p>

<p>Jane Street처럼 투자 대비 효율을 중시하는 퀀트 회사가 PL과 엄밀 검증에 관심을 가진다는 사실은 놀라우면서도 반가운 일이다.
수동 엄밀 검증은 투자 대비 효용이 매우 낮은 기술이지만,
AI가 생성의 진입 장벽을 크게 낮추면서 자동화된 엄밀 검증이 실용적인 기술이 되어 가고 있다는 생각이 든다.
그 과정에서 PL 커뮤니티가 많은 기여를 할 수 있기를 기대한다.</p>

<h2 id="쉬어가기-볼더-시내-탐방기">(쉬어가기) 볼더 시내 탐방기</h2>

<table>
  <thead>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczOtDWbQ0Tl-3SEl-eu613Dq5uJzEcKCKbgT30yQ82eseB6yHRL4jA5ZKYO70V_W0dTuND8_fjyLefNcO6k9UNMVbWXD0JlV3xWc7BEQr6Q6adOKZFE-yiqAtIv4xZxrWZ1zLmTO4thSG7CYrKeGDfhQ=w1078-h1436-s-no-gm" /></th>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczPMmuDU9bhzQGOBDpto1qFkFFJ_30d5TJKhis5iAzaPsoCrhDGFmh_PP5UsAZjroFIwBQ6P7OxWgeZHQm32DtVPqwkX4R3pybfxRg0PABXYkPw6NtvXlSZnWmMzbrj98vfEignjynu2vpHeXTJv1Uoz=w1078-h1436-s-no-gm" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center" colspan="2"><b>볼더 시내의 낮과 해 질 무렵</b></td>
    </tr>
  </tbody>
</table>

<p>학회 기간에 볼더 시내를 두 차례 찾았다.
시내는 호텔에서 걸어서 15~20분 정도 거리에 있었다.
한 번은 류석영 교수님 연구실 분들과 저녁에 펍을 찾았고, 다른 한 번은 기념품을 사러 갔다.</p>

<p>펍으로 가는 길에 한 볼더 주민이 꼭 노을을 봐 달라고 권해 사진을 한 장 남겼다.
그는 이 노을을 보기 위해 볼더에 산다고 말했다. 실제로 로키 산맥을 배경으로 펼쳐진 볼더의 노을은 장관이었다.
날씨가 대체로 쾌청해 구름이 없거나 얇게 낀 날이 많았고, 덕분에 노을을 감상하기에 더없이 좋은 하늘이 펼쳐졌다.</p>

<p>시내에는 붉은 벽돌로 지은 2층 건물이 일렬로 늘어서 있었다.
건물의 디자인이 하나같이 비슷해 테마파크의 한 구역 같은 느낌도 들었다.
눈에 띄게 특별한 곳은 없었지만, 관광객으로 보이는 사람들로 예상보다 붐볐다.
거리에는 관광객을 위한 기념품점과 옷가게, 음식점이 주로 자리하고 있었다.</p>

<p>기념품점에서는 자석과 콜로라도 대학교 티셔츠를 사려고 했다.
하지만 티셔츠가 정식 상품처럼 보이지 않아 사지 않았다.
나중에 콜로라도 대학교 학생에게 자신도 시내 기념품점에서 티셔츠를 산다는 말을 듣고, 그때 살 걸 그랬다는 아쉬움이 남았다.</p>

<h2 id="pldi에-대한-비판과-나의-생각">PLDI에 대한 비판과 나의 생각</h2>

<table>
  <thead>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczNkcy7LYN5pCATpcghneVlzzsYChvTBilMX_0l3pRwjGhTLE6lpEjkNn_gZ5RYm_m-HAZS5hfDBMsjBrSwXxkq9IOFJzPUWMBJv2lsdFkeeYrz5Oy245Yv95z3ny6ADsItCbD_mFdJmjt2tvC7hywPY=w1078-h1436-s-no-gm" /></th>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczNtkz8DSbdp5rBPOwf8u_yDrpdElg5McBbNKc-ENHCURpuditF1LGvUd_pT99XMZRWiYxqxubxQ-d1VQur162BbPcJgg7v5wSdaplix2NKWtP16E6BB-xzO8WiJFErcHVtsmrYmUUpyDIwidWWIkJVS=w1078-h1436-s-no-gm" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center" colspan="2"><b>PLDI, 너무 까다롭게 굴지 마라</b></td>
    </tr>
  </tbody>
</table>

<p>학회 첫날 MIT의 Saman Amarasinghe 교수님은 기조연설에서 PLDI가 새로운 연구에 지나치게 배타적이라는 비판을 제기했다<sup><a href="#saman-amarasinghe">2</a></sup>.
요지는 최근 AI 컴파일러 분야의 중요한 논문들이 PLDI가 아닌 ASPLOS, SOSP 같은 OS·시스템 학회에 출판되고 있다는 것이었다.
게다가 이런 논문들은 PLDI에서 좋지 않은 평가를 받아 시스템 학회로 쫓겨나듯 옮겨 간 논문들이었다고 한다.</p>

<p>새로운 연구에 배타적인 태도는 학회 논문의 품질을 관리하는 데 양날의 검이 된다.
새로움에 신중한 태도는 저품질 논문을 걸러 내는 유용한 휴리스틱이 될 수 있다.
방법론을 다듬고 논리를 견고히 하는 과정에서는 근거 없이 낯선 주장을 던지는 일이 큰 도움이 되지 않을 것이다.</p>

<p>그러나 기술과 문제의 성격이 빠르게 바뀌는 시기에는 새로운 연구에 배타적인 태도가 큰 문제가 된다.
AI의 비약적인 발전으로 소프트웨어와 하드웨어 모두가 빠르게 변하고 있다.
소프트웨어 개발 방법이 크게 바뀌었고, AI를 위한 하드웨어 설계와 그에 맞는 컴파일러 개발 방법론도 잇달아 나오고 있다.
이런 변화 속에서 과거의 가치만을 내세워 새로운 연구를 배척하는 태도는 학회의 성장에 그다지 도움이 되지 않을 것이다.</p>

<p>이 비판에 대한 개인적인 생각을 덧붙이자면, PLDI도 다소 관대해질 필요가 있지 않을까 한다.
PLDI는 상당히 보수적인 학회로 보인다.
가장 큰 이유는 어떤 현상에 대해서도 이론적으로 타당하고 수학적으로 증명 가능한 설명을 요구하기 때문이다.
이 때문에 성능이 좋은 방법론이 발견되더라도 설명이 충분하지 않으면 배척된다.
아름다운 이론도 좋지만, 현실과 동떨어진 가정 위에 세워진 이론이라면 단지 아름다운 예술 작품에 불과할 것이다.</p>

<p>이와 대조적으로 AI 분야는 이론적 설명을 잠시 제쳐 두고, 우선 실험적으로 효과가 입증된 방법론이 이끄는 형태다.
한 번 실험적 효과가 입증되면, 이론에 집중하는 연구팀이 그 현상에 대한 이론적 설명을 제시하는 방식이 주를 이룬다.
그런 점에서 AI 분야는 PLDI와 달리 개방적이라고 할 수 있지만, 이론적 설명이 부족하면 언젠가 한계에 부딪힌다.
실제로 최근 AI 분야는 과도하게 실험에 치중되어 최신 모델 훈련 방법에 대한 이론적 설명이 매우 부족한 상태다.</p>

<p>흥미롭게도 지난주 열린 ICML에서 Mark Schmidt 교수님이 진행한 튜토리얼에서 방향성에 대한 힌트를 얻을 수 있었다<sup><a href="#mark-schmidt">4</a></sup>.
이론 중심의 연구자들에게는 현재 AI에서 이론이 외면받는 이유가 확장성이 떨어지고, 현실과 동떨어진 가정 아래에서 이론을 제시하기 때문이라는 비판이 있었다.
반대로 실험 중심의 연구자들에게는 무작정 시도해 보고 잘되기를 기대하는 방식으로 연구하지 말고, 이론적 근거를 토대로 체계적인 실험을 하라는 요구가 있었다.
결국 세상의 많은 문제가 그러하듯 적정선을 지키는 일이 중요하다.
PLDI도 이론과 실증의 경계에서 PL의 핵심 가치를 지키는 동시에 새로운 기술에 대한 주도권을 잃지 않기를 바란다.</p>

<h2 id="pldi를-떠나며">PLDI를 떠나며</h2>

<table>
  <thead>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczOngMZAqJjaTqk3mqYrHA-HjZoq11VtoOuhbIHPFOa9boQYVCI5pWmmPeKkXr2_qXb5ob_3DvTb3yelDj5kcau5bjtn2pl4bre9UPxSIyaPOyMhqF5Gelg8KKoudqr01wMRXyGZhNIYhj6qL9yluYL8=w1078-h1436-s-no-gm" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>학회 마지막 날 찍은 인증 사진</b></td>
    </tr>
  </tbody>
</table>

<p>이번 PLDI에서는 작년과 달리 내 논문도 출판했고, 네트워킹도 훨씬 수월했다.
Expecto 발표 날 외에도, 점심시간에 Shuvendu Lahiri를 직접 찾아가 내 연구에 대한 조언을 들으며 함께 식사했다.
비슷한 연차의 친구들을 만나 내 발표에 초대하고, 연구와 졸업 이후 진로에 관한 고민도 나누었다.
1년 사이에 많은 발전을 이룬 나에게 박수를 보낸다.</p>

<p>그럼에도 아쉬움은 남는다.
발표에서 지나치게 긴장했고, 교수님들이나 회사 사람들과 충분히 네트워킹하지 못했다.
앞으로도 연구와 영어 공부를 게을리하지 않아야겠다는 생각이 든다.</p>

<p>지금 당장은 AI의 눈부신 발전으로 PL과 SE 분야가 조연으로 밀려난 듯하다.
다소 아쉬운 마음이 들지만, AI 에이전트라는 새로운 소프트웨어는 오히려 기존 소프트웨어의 영역을 크게 확장하고, PL이 닿을 수 있는 범위도 넓혀 줄 것이다.
앞으로 AI와 결합한 PL의 엄밀함은 AI를 실제 세상에 적용하는 데 자리한 여러 병목을 해결하는 핵심 열쇠가 될 것이라 믿는다.
그 여정에서 내 연구도 중요한 역할을 할 수 있기를 바란다.</p>

<p>마지막으로 Expecto 연구를 진행하는 데 가장 큰 도움을 주신 교수님께 감사 인사를 드리고 싶다.
연구와 논문에 아낌없이 피드백을 준 연구실 동료들에게도 감사의 말을 전한다.</p>

<h2 id="참고-문헌">참고 문헌</h2>

<p>[<a name="autoverus">1</a>] Chenyuan Yang et al. “<a href="https://dl.acm.org/doi/10.1145/3763174">AutoVerus: Automated Proof Generation for Rust Code</a>” PACMPL (OOPSLA 2025) <br />
[<a name="saman-amarasinghe">2</a>] Saman Amarasinghe. “<a href="https://pldi26.sigplan.org/details/pldi-2026-papers/1/Title-TBD">Programming Language Design and Implementation for the Machine Learning Era: A Personal Perspective</a>” PLDI Keynote (2026) <br />
[<a name="miryung-kim">3</a>] Miryung Kim. “<a href="https://pldi26.sigplan.org/details/pldi-2026-papers/2/Hardening-the-Foundation-Testing-Data-and-Compute-Intensive-AI-Enabling-Stacks">Happiness U-Curve: Navigating the AI Validation Bottleneck with Conformance Testing and Proof-Engineering</a>” PLDI Keynote (2026) <br />
[<a name="mark-schmidt">4</a>] Mark Schmidt. “<a href="https://blog.icml.cc/2026/04/02/announcing-the-icml-2026-tutorials/">Is numerical optimization theory irrelevant to machine learning practice in 2026?</a>” ICML Tutorial (2026) <br />
[<a name="expecto">5</a>] Dongjae Lee and Kihong Heo. “<a href="https://dl.acm.org/doi/10.1145/3808332">Expecto: Extracting Formal Specifications from Natural Language Description for Trustworthy Oracles</a>” PACMPL (PLDI 2026)</p>]]></content><author><name>이동재</name></author><category term="Trip" /><category term="PLDI2026" /><summary type="html"><![CDATA[들어가며]]></summary></entry><entry><title type="html">모두가 자연어의 모호함과 싸우고 있다</title><link href="http://prosys.kaist.ac.kr/natural-language/" rel="alternate" type="text/html" title="모두가 자연어의 모호함과 싸우고 있다" /><published>2026-07-09T00:00:00+00:00</published><updated>2026-07-09T00:00:00+00:00</updated><id>http://prosys.kaist.ac.kr/natural-language</id><content type="html" xml:base="http://prosys.kaist.ac.kr/natural-language/"><![CDATA[<h4 id="꼼수">꼼수</h4>
<blockquote>
  <p>∀x, y. (Us(x) ∧ Perform(x, y)) →
((Fail(y) → Rebellion(x)) ∧ (Succeed(y) → Revolution(x)))</p>
</blockquote>

<p>퀴즈: 위 문장은 2023년 개봉한 한국 영화의 명대사를 다른 언어로 적은 것이다.
어떤 영화의 무슨 대사일까?</p>

<p>정답은 &lt;서울의 봄&gt; 에 나오는 “실패하면 반역, 성공하면 혁명 아입니까?”이다.
일반인들에게는 다소 낯설 수 있는 언어이다.
이 언어는 일차논리(first-order logic)라고 하고, 위에 적힌 것 같은 문장은 일차논리식(first-order logic formula)이라고 부른다.
생긴게 조금 얄궂긴 하지만, 한국어나 영어와 마찬가지로 문법에 맞게 문장을 기술할 수 있고,
문장마다 의미가 있는 또 다른 언어일 뿐이다.
다만 한국어, 영어 같이 자연스럽게 만들어진 “자연어”와 달리, 인간이 만들어낸 “인공어”이다.
그런 까닭에 자연어와 달리, 문법과 의미가 명확하고 모호함이 없다는 장점이 있다.
따라서 철학, 논리학, 수학, 전산학에서 무언가 맞는지 따져볼 때 쓰기 좋다.
특히, 내 연구 분야에서는 프로그램이 올바르게 동작하는지 증명할 때 쓰인다.</p>

<p>위 퀴즈의 반대 방향, 즉, “실패하면 반역, 성공하면 혁명 아입니까?”라는 문장을 일차논리식으로 번역하는 것은 내가 가르치는 과목의
기말고사 문제였다.
2022년부터 <a href="https://github.com/prosyslab-classroom/cs424-program-reasoning">프로그램논증</a>이라는
과목을 매년 가르치고 있다.
이 과목의 목표는 프로그램이 올바르게 동작하는지 따져보는 기술을 배우는 것이다.
그러다 보니 저러한 논리식을 배우고, 프로그램이 논리식에서 말하는 바와 같이 동작하는지 증명하는 방법을 배운다.
개설 첫해 기말고사에 논리식과 관련된 문제로 무엇을 낼까 고민하던 차에, 저러한 번역 문제를 재미로 시도해 보았다.
일차논리로 표현할 수 있는 것이 무궁무진하며 우리 일상 생활과도 동떨어진 것이 아니라는 느낌을 학생들에게 전해 주고
싶었기 때문이다.
그 이후로 문제 선정하는 것도 재미있고, 가사, 속담, 대사 등 무궁무진하게 새로운 문제를 만들 수 있는 점도
편해서 매년 등장시키고 있다.</p>

<h4 id="묘수">묘수</h4>
<p>시험 문제를 편하게 만들려는 얕은 꼼수가, 놀랍게도 깊은 묘수였음은 몇 년 지나서 알게 되었다.
두 해에 걸쳐 같은 형태로 문제를 내면서 재미를 보고, 세 번째 해 기말고사를 앞둔 2024년 10월 말이었다.
KAIST 서울 도곡 캠퍼스에 강의가 있어서 올라갔다가 복도에서 우연히 우리 학부의 신인식 교수님을 만났다.
오랜만에 만나서 인사를 드리고 강의 준비를 하러 가려던 차에, 신 교수님이 갑자기 물으셨다.
“허 교수님 프로그램 검증 연구하시죠? AI 에이전트도 검증할 수 있을까요?”
사연은 이랬다. 신 교수님은 모바일 시스템을 구동하는 AI시스템을 연구중이셨다.
사람이 말로 명령을 내리면 그에 맞게 AI가 스마트폰을 제어해 주는 자율 에이전트 시스템이다.
가령, “8월에 뉴욕으로 가는 가장 싼 항공권을 예매해줘”라고 지시를 하면, AI가 항공권 구매 앱을
켜고, 8월에 뉴욕으로 가는 항공권을 검색한 다음, 가격 비교후 가장 싼 항공권을 예매하고 결제까지 해주는 것이다.
그런데, 당연히도 AI가 사용자의 지시사항을 제대로 수행했는지 검증할 수 있는 방법이 필요했다.
출발일이 8월이 맞는지, 도착지가 뉴욕이 맞는지, 가격이 가장 싸긴 한지, 결제까지 제대로 되었는지 등을
따져보아야 한다.
하지만 마땅히 검증할 방법이 없어서 검사하는 역할을 하는 AI로 다시 한 번 검토하는 것이 당시 최고 수준이라고 했다.
AI의 동작이 못미더워 검증을 해야 하는데, 그 검증을 AI가 하는 상황이라니. 우스꽝스럽다.</p>

<p>문제 상황을 듣고 자연스럽게 든 생각은 이랬다.
“자연어 지시사항을 논리식으로 번역하면 엄밀하게 검증할 수 있지 않을까요?”
여러모로 더 생각해야 할 것들이 많긴 하지만, 어찌 되었건 논리식으로 번역하는 것은 반드시 필요한 조건이라 생각했다.
그리고 몇 년간 시험 문제로 학생들을 통해 실험해 본 결과, 해 볼 만하다는 확신도 있었다.
간단히 서로 문제와 아이디어를 설명한 뒤, 다음에 더 자세히 이야기하기로 하며 헤어졌다.</p>

<p>익숙함과 새로움이 공존하는 재미난 주제였다. 대전으로 돌아와서, 당시 석사과정(현 박사과정)이었던
<a href="https://duncan020313.github.io/blog/">동재</a>에게 이야기를 꺼냈다.
당시 동재도 AI의 행동을 검증하는 방법을 연구하고 있었다.
우리의 대상은 프로그램을 짜는 AI였고, 신 교수님의 대상은 모바일 앱 제어 AI였지만 큰 틀에서는 같았다.
그동안 연구하면서 알게 된 내용과 아이디어도 쉽게 적용할 수 있을 것 같았다.
그렇게 2024년 12월부터 신 교수님 연구진과 함께 본격적으로 뛰어들었다.</p>

<p>일은 일사천리로 진행되었다.
신 교수님 연구실에서는 이미 돌아가는 모바일 AI 에이전트가 있었고 이를 위한 충분한 실험 환경이 마련되어
있었기에 가능했다.
동재와 나는 그 AI가 수행할 지시사항을 논리식으로 번역하고 행동을 제어할 방법을 연구했다.
우리는 모바일 에이전트 행동 검증을 위한 언어를 정의하고, AI를 활용하여 자연어를
그 언어로 번역하기로 했다.
현대 AI가 기반하고 있는 LLM에게 태초에 주어진 사명이었던 자연어 처리 능력을 활용하자는 것이다.
논리식으로 번역되면, AI가 행동할 때마다 그 행동이 어떠한 논리적 함의를 갖는지 추출하고,
행동이 논리식에서 말하는 바와 일치하는지 논리 검증기로 엄밀하게 검증할 수 있다.
또한, AI의 행동이 틀렸을 때 어떤 이유로 틀렸는지 명확히 분석할 수 있으므로,
AI를 멈춰 세운 뒤 틀린 이유를 설명하고 다시 지시를 내릴 수 있다.
이러한 과정은 요구사항이 자연어로 기술되어 있다면 결코 제대로 할 수 없는 일이다.
AI의 행동을 관찰하고 논리식으로 추출하는 것은 신 교수님 연구진이, 논리식으로 번역하고 행동과 일치하는지
판단하는 검증기는 동재가 만들었다.</p>

<p>핵심은 사용자 의도를 논리적으로 엄밀하게 기술할 언어를 정의하는 것이었다.
논리를 표현하는 언어는 여러 가지가 있다. 다만 각 언어마다 간결성, 표현력에 차이가 있다.
위에 언급한 일차논리는 표현력이 강해서 다양한 논리적 사실과 조건을 표현할 수 있지만,
보시다시피 간명하지 않아서 읽고 쓰기가 어렵다.
사람에게 읽고 쓰기 어려운 언어는 AI에게도 마찬가지이다.
언어가 어려우면, AI가 번역을 잘못할 가능성이 크고, 의도가 제대로 번역되지 못하면 검증 자체가 무의미해진다.
모바일 앱 제어를 충분히 표현할 수 있으면서도 최대한 간결한 언어를 정의하는 것이 중요했다.</p>

<p>우리가 스마트폰을 사용할 때 어떤 생각으로 조작을 하는지 되짚어 보니 답이 보였다.
사람들은 스마트폰으로 아주 복잡한 일을 하지는 않는다.
대부분 단순한 조건을 상정하고, 그 조건이 맞으면 특정 동작을 수행하는 식이다.
예컨대,</p>
<blockquote>
  <p>“8월에 뉴욕으로 가는 가장 싼 항공권을 예매해줘”</p>
</blockquote>

<p>라는 지시사항은, 조건 1) 출발일이 8월, 조건 2) 도착지가 뉴욕, 조건 3) 가격이 가장 싼 항공권이라는
세 가지 조건을 검사하고, 모두가 만족되면 항공권을 예매하라는 의미이다.
간소화된 형태로 쓰면</p>
<blockquote>
  <p>(Depart = “August” ∧ Destination = “NewYork” ∧ Cheapest = True) → Book</p>
</blockquote>

<p>와 같이 쓸 수 있다. 여기서 ∧ 는 “그리고”, → 는 “그러면”이라는 의미이다.
보시다시피, 자연어의 구조와 흡사하다.
이와 같은 조건-결론 구조를 갖는 논리식을 특별히 혼 절(Horn Clause)라고 부른다<sup><a href="#horn-clause">1</a></sup>.
이런 구조로 요구사항이 기술되어 있으면, 읽기도, 쓰기도, 결론을 계산하기에도 편한 까닭에,
이를 기반으로 한 여러 프로그래밍 언어도 존재한다.
이른바 논리형 프로그래밍 언어라고 부르는데, 대표적으로 Prolog라는 언어가 있다.
한 가지 재미있는 점은, 이 Prolog 언어가 1972년에 개발되던 당시 주요 목적이 인공지능 개발이었다는 것이다.
당시에는 이러한 규칙 기반 시스템을 잘 만들고, 여러 규칙을 넣어주면 인공지능을 만들 수 있다고 생각했다.
최근에는 AI기술의 주류가 인공신경망으로 바뀌면서, 예전만큼 많이 쓰이고 있지는 않다.
하지만, 우리가 더 안전한 AI 시스템을 개발하려다 보니, 자연스레 70년대 선배들과 비슷한 결론에 도달하게
되었다는 점이 흥미롭다.
잊고 있던 고대 기술 문명의 유적을 다시 발견한 기분이랄까.</p>

<p>연구를 본격적으로 시작한 지 3개월 만인 2025년 3월, 만족스러운 기술이 완성되어 MobiCom 2025에 논문을
제출했다.
서로 다른 분야의 연구진이 모여서 3개월 만에 논문까지 완성할 수 있으리라고는 생각지 못했다.
석사 과정동안 AI 모델의 바닥까지 들여다 보고, 프로그램 합성기, 검증기를 만들어본
동재의 능력과, 모바일 시스템을 설계와 구현에 오랜 경험이 있는 신 교수님 연구진의 협업이 눈부셨다.
배경이 다른 공저자들과 함께 타 분야의 사람들이 쉽게 이해할 수 있도록 여러 번 글을 고쳐 썼던 나날도 빛났다.
논문<sup><a href="#verisafe">2</a><a href="#verisafe-wiki">3</a></sup>은 예상대로 좋은 평을 받고 채택되었고, 11월 홍콩에서 열린 MobiCom 2025에서 동재가 발표했다.</p>

<p>동시에 신 교수님 연구진의 주도로 과기부에서 주최하는 &lt;인공지능 챔피언 대회&gt;에도 모바일 에이전트
기술을 출품했고, 홍콩에서 MobiCom이 벌어지고 있던 날에 우승을 차지했다.
실용에 가까운 모바일 기술로 인정받은 셈이다.
최종 결선에서 신 교수님의 발표 이후, 한 심사위원이 물었다.</p>
<blockquote>
  <p>“AI 에이전트에 물건 주문을 시킬 경우, 환각이 발생해서 주문을 잘못하는 경우도 발생할 수 있을 텐데, 해결책이 있나요?”</p>
</blockquote>

<p>반가웠다.
신 교수님은 우리가 연구한 논리 기반 검증 기술을 소개했고, 우리는 대상인 과기부 장관상을 받았다.
신 교수님과 우연히 복도에서 만나 이야기를 나눈 지 1년 만이었다.</p>

<h4 id="expecto-patronum">Expecto Patronum</h4>
<p>즐거웠던 동행을 일단락하고, 동재와 나는 원래 우리가 연구하던 프로그램 검증 문제로 돌아왔다.
모바일 에이전트 행동 검증을 연구하면서 배운 것들로 밑천이 두둑해진 채로.
우리의 문제도 비슷하다.
사용자의 요구사항이 자연어로 기술되어 있을 때, AI 코딩 에이전트가 만드는 프로그램이 사용자가 원하는
것과 일치하는지 검증하는 문제이다.
마찬가지로 자연어로 기술된 요구사항은 모호하고 장황하여 맞는지 엄밀히 따져 보기가 어렵다.
이를 위해서는 역시, 사용자의 요구사항을 엄밀한 논리 명세로 번역하는 것이 필요하다.
다만 코딩은 모바일 앱 제어보다 훨씬 복잡한 문제이므로, 고품질 번역을 위한 기술이 필요했다.</p>

<p>이번에도 일은 순조로웠다. 또 한 번 “온고지신”의 묘미를 만끽하며.
코딩을 위한 복잡한 요구사항을 처리할 방법으로 동재는 하향식 명세 합성(top-down spec synthesis)을 제안했다.
기존 프로그램 합성 분야에서 널리 쓰이던 하향식 프로그램 합성에서 착안한 방법이다.
만들고자 하는 대상을 큰 틀에서 먼저 얼개를 잡고, 점점 세부적인 사항을 채워 나가는 방식이다.
복잡한 문제일수록 이런 식으로 문제를 쪼개어 푸는 것이 효과적일 수밖에 없다.
다만 쪼개는 과정이 체계적이어야 하고, 쪼개어 풀고 합치는 중간 과정에서 계속 올바른지 검사해야 한다.
이 과정도 그간 프로그래밍 언어 분야에서 축적된 논리 검증 기술을 접목하면 가능할 것이라 보았다.
원리와 직관, 그리고 기본에 충실하면 흔들리지 않는다는 변치 않는 진리를 재확인하며 나아갔다.</p>

<p>우리의 아이디어는 적중했다.
성능은 기존 순수 LLM 기반 번역 기술보다 훨씬 뛰어났다.
천방지축 AI 코딩 에이전트를 올바른 방향으로 이끌 주문이었으면 해서 “Expecto”라고 이름을 붙였다.
모바일 에이전트 연구가 끝난 3월부터 8개월간 갈고 다듬어 11월 PLDI에 제출하니,
역시나 좋은 평가를 받고 단숨에 채택되었다.
문제도 시의적절하고, 아이디어도 직관적인데다가, 더욱이 모바일 에이전트 검증 연구를 통해 동재가 크게 성장한 덕택이었다.
심사평 중 일부는 다음과 같다.</p>
<blockquote>
  <p>“I found the idea of using a top-down approach to be very interesting and natural. […]
This is a clever and neat idea, the authors are going to rack up the citations for it for sure, well done!”</p>
</blockquote>

<p>역시 우리의 직관에 다들 공명하고 있었다.
연구 결과는 2026년 6월, 미국에서 열린 PLDI에서 동재가 발표를 했다.
거기서도 많은 사람들의 관심을 받았고, 학회 기간 내내 여러 사람들에게 우리의 비전을 소개했다.
기술에 관한 자세한 내용은 논문<sup><a href="#expecto">3</a></sup>, 위키<sup><a href="#expecto-wiki">4</a></sup>,
웹페이지<sup><a href="#expecto-page">5</a></sup>를 통해 확인할 수 있다.</p>

<h4 id="자연어의-모호함과-싸우는-사람들">자연어의 모호함과 싸우는 사람들</h4>
<p>요즘 AI가 이토록 많은 사람들의 관심을 받는 이유는 단연코 자연어 구사 능력 때문일 것이다.
인간 이외의 존재 중 인간의 언어를 제대로 이해하는 첫 번째 존재이기에 여타 기계나 동물에게는 느낄 수 없는
친근함이 있다.
허나 인간들 사이의 소통에서도 자연어의 모호함 때문에 숱한 오해와 갈등이 생기지 않던가.
엄밀함을 추구해야 할 과학기술 분야도 마찬가지이다.
중요한 요구사항, 기술문서가 자연어로 모호하게 적혀 있는 탓에, 인간이 문서를 해석하는 과정에서 오해가 생기고,
그로 인해 여러 결함이 생겼다는 소식은 AI바람 이전에도 심심치 않게 들려왔다.
다만, 그동안은 그런 모호함이 큰 문제가 될 정도로 인간이 빠르게 실행에 옮기지 못했을 뿐이며,
따라서 뒷처리를 감당할 시간이 비교적 충분했기 때문이라 추측한다.
하지만, 인간과 비교할 수 없을 정도로 빠르고, 인간보다 훨씬 더 많이 일하는 존재가 모호한 지시사항을
실행에 옮길 미래에는, 가차없지 않을까?</p>

<p>세계 인구보다 더 많은 새로운 존재가 갑자기 자연어를 구사하게 된 세상.
그동안 못 본 체하고 있던 진짜 문제가 수면 위로 올라오고 있다.
AI와 함께 살 미래가 안전할까 걱정하지만,
문제는 예전부터 우리 안에 있었는지도 모른다.
오히려 AI 덕분에 문제를 직시하게 되어 다행이다.
그러므로 이제 본격적으로 자연어의 모호함과 싸워야 한다.
이미 힘겹게 싸우고 있는 이가 있다면, 엄밀한 응원과 격려를 보낸다.</p>

<h4 id="뒷-이야기">뒷 이야기</h4>
<p>본 글의 제목은 최근 본 드라마 &lt;모두가 자신의 무가치함과 싸우고 있다&gt;의 제목을 패러디한 것이다.
그림 잘 그리는 AI도 있겠다, 재미삼아 패러디한 제목에 맞게 드라마 포스터도 패러디해 보았다.
허나, AI에게 수정 지시를 내리면서 또 한 번 자연어의 모호함과 고되게 싸워야 했다.
몇 글자 바꾸는 것을 지시하는데 어찌 그리 손이 많이 가는지.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center;">
        <img src="http://prosys.kaist.ac.kr/assets/images/natural/natural.jpg" width="600px" />
      </th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center">
        <b>잘 보면 보일 것이다. 싸우다 포기한 인간의 흔적.</b></td>
    </tr>
  </tbody>
</table>

<h2 id="참고">참고</h2>
<p>[<a name="horn-clause">1</a>] 논리학자 Alfred Horn이 소개한 개념이다. <a href="https://en.wikipedia.org/wiki/Horn_clause">위키백과 참고</a>. <br />
[<a name="verisafe">2</a>] Jungjae Lee, Dongjae Lee, Chihun Choi, Youngmin Im, Jaeyoung Wi, Kihong Heo, Sangeun Oh, Sunjae Lee, and Insik Shin, <a href="http://prosys.kaist.ac.kr/publications/mobicom25.pdf">Safeguarding Mobile GUI Agent via Logic-based Action Verification</a>, MobiCom 2025 <br />
[<a name="verisafe-wiki">3</a>] <a href="https://github.com/prosyslab/pl-wiki/wiki/VeriSafe-Agent">VeriSafe Agent, PL Wiki</a> <br />
[<a name="expecto">4</a>] Dongjae Lee and Kihong Heo, <a href="http://prosys.kaist.ac.kr/publications/pldi26.pdf">Expecto: Expecto: Extracting Formal Specifications from Natural Language Description for Trustworthy Oracles</a>, PLDI 2026 <br />
[<a name="expecto-wiki">5</a>] <a href="https://github.com/prosyslab/pl-wiki/wiki/Expecto">Expecto, PL Wiki</a> <br />
[<a name="expecto-page">6</a>] <a href="https://prosys.kaist.ac.kr/expecto/">Expecto Webpage</a></p>]]></content><author><name>허기홍</name></author><category term="AI" /><category term="프로그램검증" /><category term="PLDI2026" /><category term="MobiCom2025" /><summary type="html"><![CDATA[꼼수 ∀x, y. (Us(x) ∧ Perform(x, y)) → ((Fail(y) → Rebellion(x)) ∧ (Succeed(y) → Revolution(x)))]]></summary></entry><entry><title type="html">PL 연구자가 바라본 MobiCom</title><link href="http://prosys.kaist.ac.kr/dongjae-mobicom/" rel="alternate" type="text/html" title="PL 연구자가 바라본 MobiCom" /><published>2025-11-25T00:00:00+00:00</published><updated>2025-11-25T00:00:00+00:00</updated><id>http://prosys.kaist.ac.kr/dongjae-mobicom</id><content type="html" xml:base="http://prosys.kaist.ac.kr/dongjae-mobicom/"><![CDATA[<h2 id="들어가며">들어가며</h2>
<p>MobiCom은 모바일 컴퓨팅과 네트워크를 다루는 학회로, PL/SE를 주로 다루는 우리 연구실이 참석할 기회는 매우 드물다.
운 좋게도 신인식 교수님 연구실의 이정재 학생과의 공동 1저자 논문이 채택되어 논문 발표자로서 다녀올 기회를 얻었다.
첫 해외 출장이자 혼자 떠나는 출장이면서 동시에 발표자로서 참석하는 첫 국제 학회였기에 나에게는 큰 의미가 있었다.
다만, 당장 다음 주 금요일에 PLDI 논문 제출 마감이었기 때문에 무거운 마음의 짐도 나와 함께 출국했다.
홀로 떠난 출장이기에 최대한 나의 경험과 생각을 구체적으로 공유하여 현장감을 생생하게 전하기 위해 노력했다.</p>

<h2 id="출국">출국</h2>
<p>내가 처음이자 마지막으로 혼자 해외로 떠나는 비행기를 타 본 것은 초등학교 3학년 때였다.
당시 미국에 있는 외삼촌 댁에서 한 달 살기를 하기 위해 홀로 미국행 비행기를 탔었다.
15년이 지나 어엿한 국제 학회의 발표자로서 출국하게 되니 감회가 새로웠다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczPPh7W5PfaMHlgn6KexuqLBTQAPp7nQxUoHoWJiv6DkjZ2ISUEGUdxri5LaxRzEY02QphjvyPnSsyVNNsXWgd3OEdpTHTlBFPIxQ2Ae1CamcDdxKh5hsvtfK8fiFmjqt8vsywjR9xgSBVWtrPXQOiOt=w695-h926-s-no-gm?authuser=3" alt="" width="80%" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>버크셔 돼지 등뼈 K 쌀국수</b></td>
    </tr>
  </tbody>
</table>

<p>여행을 가기 전에는 모름지기 음식을 든든하게 먹어두어야 한다.
게다가, 초저가 항공사인 홍콩 익스프레스를 탑승했기 때문에 기내식이 제공되지 않아 더욱 든든하게 먹어야 했다 (물도 돈을 주고 사야 한다).
내 선택은 압도적인 크기의 등뼈 쌀국수였다.
버크셔 돼지 등뼈 K 쌀국수라는 글로벌한 이름을 가진 메뉴였다 (영국 돼지 + K- + 쌀국수).
아침 9시부터 비닐장갑을 끼고 등뼈를 뜯고 있는 내 모습이 조금 우스웠다.</p>

<p>식사 직후에는 출국 심사와 PLDI 논문 제출을 위한 실험을 돌린 후 발표 연습을 했다.
출국 전 주 금요일에 연구실 내부 리허설을 진행했는데 썩 마음에 들지 않는 상태였다.
이번 리허설을 진행하면서 스스로가 발표에 있어 자신이 없을수록 긴장하게 된다고 느꼈다.
역시 자신감은 실력에서 나오는 법일까?
연구실의 피드백과 주말 동안의 연습을 통해 최대한의 자신감을 확보하기 위해 노력했다.</p>

<h2 id="홍콩-적응기">홍콩 적응기</h2>
<table>
  <thead>
    <tr>
      <th style="text-align: center;">
        <img src="https://lh3.googleusercontent.com/pw/AP1GczOoT7NnsgewFiZOYAgCbYoW5Ww2Uee_wWny3wkQmp9q0nacG24pnMmI85-R7osCH6cnBW5LLZfQyADySwZA_x2nYT-H_X29kfr1FS3YB03ezow9yKtYIxiY655GkXVeIhm3scGLfyJzpG8-G9Zx3U8X=w695-h926-s-no-gm?authuser=3" alt="" width="45%" />
        <img src="https://lh3.googleusercontent.com/pw/AP1GczMz2peSXlyqwcoFxaQ8mQuQx6Gp0DjlTI3hwscICUcVevOZJeg3shRZP9A8AH3HcXb6QENlaWDBSq8EFkKK9cFC02QSrlxp5Bqk2vWf8aG22G7LTa14LliSmm2oHzy6bTiVux3iOKXEXP1ooJLShgJ4=w695-h926-s-no-gm?authuser=3" alt="" width="45%" />
      </th>
    </tr>
    <tr>
      <th style="text-align: center;">
        <img src="https://lh3.googleusercontent.com/pw/AP1GczN88MuheHC0j_gveQrEWOU9S6ge90vczbUgQK5SyxpMF1g6n-IJNSk-aXiT7ZmJkrvxG6wDAxV39D5f-iBmBvGzMgcrd-h9lSPdh5GTZornrmYSN_7pvQY8WQVkpIOARmefOgWEEdLWjtIDT0UXDB2w=w1235-h926-s-no-gm?authuser=3" alt="" width="80%" />
      </th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>멋진 호텔</b></td>
    </tr>
  </tbody>
</table>
<p>감사하게도, 연구실의 지원으로 이번 출장에서는 학회가 열리는 Kerry Hotel에서 묵을 기회를 얻었다.
해변 근처의 5성급 호텔이었는데, 방의 크기와 편의 시설 모두 훌륭했다.
특히 밤에 보이는 야경이 장관이었다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczMstNHL1917Fnqg3hIT6IS60l8usgjMUjQcbUWX6nuVWPpmPMoK18Ds3GrKFVQto4bdir1PXHLL7jy5_LsHc8USeb6ElBQp9dHsZj-TpYOq5mgxAYjAYsZN1UyuW805qFFKfk9y9rRELp1W5dd68KZx=w695-h926-s-no-gm?authuser=3" alt="" width="45%" />
      <img src="https://lh3.googleusercontent.com/pw/AP1GczPuWlqv-Llrea8gCcsh_mphGXi6u-9DMA7L2xgUEl5yF_LT--KrMprKBDcOdSvTVE225imWRVW6Rxe6fNw1lQU1ylm2SZu7wGVLDG9Kx2-03LB_D4dR4Lg3J6XWzfl2jYQdcZMTr4uXgRJ0-TQKYcrX=w695-h926-s-no-gm?authuser=3" alt="" width="45%" />
      </th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>호텔로 가는 길</b></td>
    </tr>
  </tbody>
</table>
<p>공항에서 호텔까지는 A25 버스를 타고 갔다.
호텔까지는 총 1시간 15분 정도 걸렸는데, 2층 버스를 타고 경치를 보면서 가니 심심하지는 않았다.
특히 시내 쪽으로 들어갈 때 건너는 거대한 사장교가 인상적이었다.
나는 이런 거대 토목 구조물을 좋아하는데, 커다란 철근 콘크리트 기둥과 케이블이 적절한 조화를 이루어 다리를 떠받치는 모습이 인상적이었다.
콘크리트 기둥이 한국보다는 좀 더 투박한 형태라는 점도 재미있었다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczOKE5gc6YaNueT4toKF7_9B5IVzCarHpfA1eSnQ7G658mrEK_3PZKYYWYQCES3gIBDVYS7NAvdwnGU1YkOKxfFeO1guqhNYjawLXAVYwrP0lYd9OXGC7WckSDQfoCXl9PEkW7ADpcj7wYtBUCGZa5B2=w695-h926-s-no-gm?authuser=3" alt="" width="80%" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>ACM 백팩</b></td>
    </tr>
  </tbody>
</table>

<p>호텔에 도착해서 방에 짐을 둔 후에는 학회 등록을 하러 로비로 내려갔다.
등록은 학회가 시작하는 날부터 하는 줄 알았는데, 나처럼 전날 도착한 사람들을 위해 등록을 먼저 열어두는 것 같았다.
등록하면 여러 가지 기념품을 주는데, 그 중 ACM 백팩이 있었다.
보통 기념품으로 가방을 주면, 에코백을 많이 주는데, 거대한 검은색 백팩을 주어 당황스러웠다.
아쉽게도, 돌아가는 비행기에 수화물 개수 제한이 있어 반입이 어려웠다.
하는 수 없이 호텔방에 그대로 두고 돌아왔다.</p>

<p>등록까지 마치니 벌써 저녁 시간이 되어 딤섬을 먹으러 나갔다.
나는 보통 여행을 떠나면 그때그때 구글 지도에서 맛있어 보이는 식당을 골라 즉흥적으로 가는 편이다.
알아보니 도보 25분 거리에 있는 팀호완이라는 가게가 유명한 것 같아 그곳으로 갔다.
가는 길에는 해가 저물어가는 홍콩의 모습과 러닝을 뛰는 사람들을 볼 수 있었다.
기분 좋은 고독함을 느끼며 딤섬 가게로 가는 길을 걸었다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center;">
        <img src="https://lh3.googleusercontent.com/pw/AP1GczNyjAyba4xQe_NXwN6ZcngHAb7_MiSrSBFI4YajAskg3dK65-VNtVwiaHIjhaZ7o5ScAldWUEwxT8Ih5vVz2P0QXgLXccDe6ymMCcB5NoVO7HT4KsyaC8kk73eA3M2hTaqjwKbxdBJBTQDVv5vmcx6R=w695-h926-s-no-gm?authuser=3" alt="" width="45%" />
        <img src="https://lh3.googleusercontent.com/pw/AP1GczOb1WvsbWQ1gbLI6UFjMQPbZGVypIFmra7WVrRzqFkgxB04f-60tx5lCOwuow4qu5NfcM5T2TkX_mniqfknY89agAiiM2NzvHtIzEW3ZttXc_pVDSOH7na8W7mNTkFxa_s2pV0jdOwck63UFyFRqFWq=w695-h926-s-no-gm?authuser=3" alt="" width="45%" />
      </th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>맛있는 딤섬</b></td>
    </tr>
  </tbody>
</table>

<p>딤섬 가게에서는 총 세 종류의 딤섬을 주문했다.
시키고 보니 한국에서도 먹을 수 있는 것들이어서 좀 더 도전적인 것을 주문할 걸 하는 생각이 들었다.
하지만 아는 맛이 무서운 법. 홍콩에서의 첫 끼로는 부족함이 없었다.
특히 고추기름 소스가 딤섬의 맛을 훌륭하게 살려주었다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczMnVUYYKn7C3hBcHnHucoi_uUoMejZaAcsLRFtp3_xSffgAm46YWkzn-IMTDs_7Ib7UH8Q9oXxFjE55sgEzHBEvOJmKtvX9NhXxFVKQr9u3zrmbbSFYEiQ8qTwAgxO3_gN5H0oG5g22RcxsLoiKyVbI=w695-h926-s-no-gm?authuser=3" alt="" width="80%" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>가게 이름은 #Hashtag B</b></td>
    </tr>
  </tbody>
</table>

<p>딤섬을 먹고 나서는 홍콩에서 유명한 에그 타르트 가게에 방문했다.
2개의 에그 타르트와 1개의 피스타치오 타르트를 주문했다.
에그 타르트는 파이 기반의 타르트와 패이스트리 기반의 타르트로 나뉜다고 한다.
이곳은 패이스트리 기반의 타르트로, 한국 사람들 입맛에 더 잘 맞는다는 얘기를 들어 이곳으로 방문했다.</p>

<p>짧은 외출을 마치고, 호텔로 돌아와서는 다음 날 있을 VeriSafe Agent 발표 연습을 했다.
5번 정도 처음부터 끝까지 발표를 반복해서 연습했는데, 지난주 금요일 리허설보다는 훨씬 만족스러웠다.
발표 자료를 약간 수정한 후 긴장 반 걱정 반으로 잠자리에 들었다.</p>

<h2 id="나의-첫-해외-학회-발표">나의 첫 해외 학회 발표</h2>

<p>장거리 이동을 해서 발표 당일 컨디션이 나쁠까 걱정했지만, 다행히 컨디션이 좋았다.
마지막으로 발표 연습을 방에서 하고, 아침을 먹으러 근처 맥도날드로 갔다.
지난주부터 맥모닝을 먹고 싶었는데, 배도 채울 겸 맥모닝을 주문했다.
메뉴는 팬케이크가 포함된 디럭스 세트였는데, 팬케이크가 말라비틀어져서 상당히 실망스러웠다.
아쉬운 마음과 함께 호텔로 돌아갔다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczOv9I-JscNkTqg4fQ5EgAFA51gKQxL0YjMmDWbv0Trr9y5y-cQEvhz120iUe9qYtuLTtnrZ0ZMdIdxoDbw6atgbbaVnwtsQQgdltBVfHkFbWAnWtWBlJpBIdqZEHBrtyLJqaaCAB4Mh0Yd9Ov96_3yb=w695-h926-s-no-gm?authuser=3" alt="" width="80%" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>아침밥</b></td>
    </tr>
  </tbody>
</table>

<p>MobiCom은 독특하게도 단일 세션으로 진행된다.
즉, 동 시간대에 여러 개의 세션이 진행되지 않고 하나의 세션만 진행된다.
그렇기 때문에 학회가 진행되는 발표장 역시 다른 학회보다 훨씬 크다.
내 체감상 여름에 다녀온 PLDI의 가장 큰 발표장보다 1.5배 정도 크게 느껴졌다.
스크린의 크기 역시 그에 걸맞게 훨씬 거대했다.
발표 자료도 모든 자리에서 가려지지 않고 잘 보여서 좋았다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center;"><img src="https://lh3.googleusercontent.com/pw/AP1GczNPmLWfzj8Tby_HEe1kh96gTR6tvfQVYBPrteUVx4Zx9QIHHkl9kgWkX2FlFcMm6Ew5sNOUOILkqACze7LgfDq165Unt-s9OwOmVtLCvEfWYzi7ZokYYckCYQnCUeofaxuNpJV2xFbvmKeSKwibRF-4=w695-h926-s-no-gm?authuser=3" alt="" width="80%" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>학회장으로 가는 웅장한 길</b></td>
    </tr>
  </tbody>
</table>

<p>첫 학회 발표인 데다가 혼자 덩그러니 앉아 있으니 더욱 긴장이 몰려왔다.
하지만, 이런 큰 무대에서 발표할 수 있다는 사실에 설레는 마음도 있었다.
해외 학회에 참석하더라도 이런 큰 무대에서 발표하는 것은 드문 기회이기에 잘 마무리해야겠다는 생각이 들었다.</p>

<p>발표할 때면 긴장을 해소하는 나만의 방법이 있다.
발표를 듣는 청중들을 사람이 아닌 무언가 (강아지, 고양이 등등)이라고 생각하면 긴장이 해소된다.
청중들을 대단한 사람들이라고 생각하고 실수를 안 하려고 신경 쓰면 오히려 실수를 더 자주 저지르게 된다.
반대로, 청중들을 평범한 사람들 혹은 극단적으로 사람이 아닌 무언가라고 생각하면 실수하지 않아야겠다는 생각을 없앨 수 있다.
핵심은 잘 하고자 하는 마음을 없애면 긴장이 풀린다는 것이다.
건전한 방법인지는 모르겠으나 개인적으로 효과는 확실했다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center;">
        <img src="https://lh3.googleusercontent.com/pw/AP1GczN3oQQW9flrnuGlqUmf5ziRylDCCw52kcn24FGdiaXDfgOJWiB_exkIqRossSrYPOi9ZmedqkjecXm3gH29u3VKtcNRCcEoCGdJ79ZYB7s57IWlhwxn9dLjzFvbaPbv1bSW_sdsJvZ1QrZvu1fa0fWm=w695-h926-s-no-gm?authuser=3" alt="" width="45%" />
        <img src="https://lh3.googleusercontent.com/pw/AP1GczPSo14oy1-CvNIoNSKSZkVNTVnh7e9gU1ZNve9yZ_ewmhKlNcCHCYf0u5QUiCI94OUssB8xX96fqxkefRbaT-yGKgYFsl1lCAuiUVPQ5YQC28vSK10pv06T_-kJtyMdI5l1faeT6FCoiGZwx2yzRRg6=w694-h926-s-no-gm?authuser=3" alt="" width="45%" />
      </th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>발표하는 나. 호텔 직원분께 부탁드렸다.</b></td>
    </tr>
  </tbody>
</table>

<p>첫 발표를 마치고 나서 개인적으로는 만족스러웠다.
전달하고자 하는 내용도 모두 명확히 전달했고, 발표 시간도 이전에 생각해 두었던 12분을 정확히 맞추었다.
집중력의 차이 때문인지 오히려 실전에서 연습 때보다 훨씬 더 잘 해낸 것 같아서 더욱 만족스러웠다.
시간을 잘 지키니 그것 때문인지는 모르겠지만 세션 체어가 나를 흐뭇한 미소와 함께 쳐다보았다.
뿐만 아니라, 꽤 많은 사람들이 내 발표에 대해서 질문을 하기 위해 마이크 앞에 줄을 서 있었다.
내 기억으로는 기조연설을 제외하고 가장 질문자가 많았던 것으로 기억한다.
첫 발표치고는 훌륭한 성과였다.</p>

<p>다만 아쉬웠던 것은 질의응답이었는데, 긴장한 탓에 상대방이 무슨 말을 하는지 정확히 이해를 못 해서 동문서답을 했다.
특히 질문을 하는 사람이 정리된 질문을 하는 것이 아니라 생각나는 대로 이것저것 언급하면 더욱 답변하기가 어려운 것 같다.
영어 공부를 더 열심히 해야겠다는 생각이 들었다.</p>

<h2 id="mobicom에서-보고-들은-것">MobiCom에서 보고 들은 것</h2>

<table>
  <thead>
    <tr>
      <th style="text-align: center;">
        <img src="https://lh3.googleusercontent.com/pw/AP1GczPFIbdKXyShjP-uFay2xksT-sHrqdUIanlv4GT-8QHmmmCVqNvfYDtuVVf-JbXC2uxVRZK2uVtgGU11hXRnHCdidxqYpd_HX96ZLhMlcRIUnhCNqEuPXD8kru-G-YBND3qaJFC4M0wjQU_eXgYzxUfV=w1235-h926-s-no-gm?authuser=3" alt="" width="80%" />
      </th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>MobiCom 방문 인증</b></td>
    </tr>
  </tbody>
</table>

<h3 id="운영-방식의-차이">운영 방식의 차이</h3>
<p>PLDI와 MobiCom의 결정적인 차이는 운영 방식에 있었다.
병렬로 각자 관심 있는 세션에 들어가는 PLDI와는 달리 MobiCom은 같은 시간에는 하나의 세션만 운영한다.
장점은 관심 없었던 새로운 분야의 연구도 접해볼 수 있다는 것이지만,
반대로 그 연구를 이해하기 위해서 상당한 에너지를 소모해야 했다.
특히, 통신이나 센서 분야의 경우 내가 전혀 배경지식이 없어서 이해하는 데 애를 먹었다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center;">
        <img src="https://lh3.googleusercontent.com/pw/AP1GczOLkv0pZMirwoyFS_oPATpFL38wWMOdyOyjdoAbA67DX0Ura2X784jonI7ZIG_cxt8kDR9D4IIyK-ycYcHcMcSKbnD-lurCCfkyQYYyxSaDpG-nYYPgPCTkPFAKIUJFp4ZUjksPO2Q6MsGLP5PWrhee=w695-h926-s-no-gm?authuser=3" alt="" width="80%" />
      </th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>갑자기 등장한 사자</b></td>
    </tr>
  </tbody>
</table>

<p>또 재미있었던 부분은 뱅큇 중간에 진행되는 시상식을 아주 요란하게 한다는 점이다.
올해는 매 시상마다 중국 전통 사자춤을 추는 연출이 있었다.
PLDI의 경우 굉장히 정적이고 엄숙하게 진행되었던 것으로 기억하는데, 이렇게 재밌는 이벤트가 있으면 더 좋겠다는 생각이 들었다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center;">
        <img src="https://lh3.googleusercontent.com/pw/AP1GczNh362if-e9ISRwl5hveHa0ZbaVWvNAjKUfGTos-jaMmKsMwtKtWLjmywAhh-auIey_Sbb0zmOUfcvPyy2hsN0tm2WiWh8HGS6OKKD13xHhhLVArfaLSWuI1bicDQGJ4aYV_YaiaRNob0YkLr9GSaPC=w694-h926-s-no-gm?authuser=3" alt="" width="45%" />
        <img src="https://lh3.googleusercontent.com/pw/AP1GczNyb10LvMlo9nQ2W8svPVFvlAkq7-I6EwmOU66ZPCTT7R2IybS1RLG1uGrHASCua2wt8zjTNwRC2Vsxful7xPM2TA2cBoufl1-r7ie1VNbriSmwrJUN-z6ruTy1S16YAbrAZkZtZNT7dmZ7ATpha72b=w695-h926-s-no-gm?authuser=3" alt="" width="45%" />
      </th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>뱅큇 음식들. 양 안심은 처음 먹어봤는데 양고기 특유의 향이 거의 없었다</b></td>
    </tr>
  </tbody>
</table>

<h3 id="흥미로운-문제들">흥미로운 문제들</h3>
<p>현실적인 문제를 정면으로 다룬다는 점도 인상적이었다.
PLDI도 현실의 문제를 풀긴 하지만 대부분 소프트웨어 개발 현장(컴파일러, 버그 찾기, 프로그램 수정 등)에 머문다.
연구 분야가 PL/SE니 당연한 결과겠지만, MobiCom은 일반 사용자를 위한 프로젝트가 많아 문제의 동기가 훨씬 폭넓었다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center;">
        <img src="https://lh3.googleusercontent.com/pw/AP1GczPtSFXFeCNfUoZZc5PrAuOuVheivvs7wAfY2R3d2L0XQiXN5Vkx5tIcyPCn7K_kvEsyg6lvJK7LW_Cw_21M-eH5YIv_t6s_1v840X_L_sYAIkmLtim7126uPqBruwy0FWmP8ycqcY95sYdXkUTdRKvA=w1235-h926-s-no-gm?authuser=3" alt="" width="80%" />
      </th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>Hearable 기기용 음성 처리 AI 연구</b></td>
    </tr>
  </tbody>
</table>

<p>한 가지 사례는 Hearable기기 (보청기와 이어폰의 중간 어딘가)에서 음성 처리를 위한 AI를 개발하는 연구였다<sup><a href="#Hearable">1</a></sup>.
주요 문제는 이어폰에 들어가는 연산 장치 수준으로 실시간 (6ms 미만) 음성 처리를 해야 한다는 것이다.
API를 사용하는 경우 응답 지연이 심해지고, 반대로 직접 연산을 수행하자니 기존 음성 처리 모델들이 너무 크기 때문에 적합하지 않았다.
기존 모델들도 지연 시간이 너무 길고 (25ms) 품질도 떨어졌다.
연구자들은 모델과 디코딩 알고리즘, 하드웨어를 동시에 최적화하는 방식으로 문제를 해결했다.</p>

<p>흥미로웠던 부분은 문제 해결 방식보다 도메인이었다.
모바일 기기들의 특성상 적은 자원을 사용해서 빠른 시간에 좋은 결정을 내려야 하는 경우가 많다.
즉, 최신 대형 모델을 사용할 수 없는 것이다.
이러한 문제야말로 신경-기호 AI가 활약하기 적합한 환경이라는 생각이 들었다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center;">
        <img src="https://lh3.googleusercontent.com/pw/AP1GczPtSFXFeCNfUoZZc5PrAuOuVheivvs7wAfY2R3d2L0XQiXN5Vkx5tIcyPCn7K_kvEsyg6lvJK7LW_Cw_21M-eH5YIv_t6s_1v840X_L_sYAIkmLtim7126uPqBruwy0FWmP8ycqcY95sYdXkUTdRKvA=w1235-h926-s-no-gm?authuser=3" alt="" width="80%" />
      </th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>AutoIoT</b></td>
    </tr>
  </tbody>
</table>

<p>비슷한 문제의식을 공유하는 AutoIoT<sup><a href="#AutoIoT">2</a></sup> 라는 이름의 연구도 있었다.
AIoT(Artificial Intelligence of Things) 분야에서는 센서 데이터를 받아 “온도가 올라가면 에어컨을 켜라” 같은 의사 결정을 내리는 시스템을 만든다.
하지만 기존 방식처럼 날것의 센서 데이터를 LLM에게 직접 보내면 개인정보 유출, 높은 쿼리 비용, 지연 문제가 한꺼번에 터진다.
AutoIoT는 LLM이 바로 결정을 내리기보다 의사 결정 코드를 작성하게 만들어 이 문제를 우회했다.</p>

<p>IoT나 웨어러블 분야 역시 호출 빈도가 높고 센서 데이터를 그대로 이해하기 어려워 대형 모델을 쓰기 힘든 영역이다.
여기에 신경-기호 AI로 신호 처리와 신경망 모델을 결합하면 실용적인 솔루션을 디자인할 수 있겠다는 생각이 들었다.
특히 PLDI에서 Işıl Dillig 교수님이 소개한 신경-기호 합성기<sup><a href="#NeurosymbolicSynth">3</a></sup>와 엮으면 현실적으로 활용할 수 있으면서도 흥미로운 연구를 할 수 있을 것 같다.</p>

<h3 id="pl의-활용">PL의 활용</h3>

<table>
  <thead>
    <tr>
      <th style="text-align: center;">
        <img src="https://lh3.googleusercontent.com/pw/AP1GczMyluHpuHSuYwwu8lmB52tA9ABOVusD0MaHGVZEvYCRVASx3XCmLYd9yoDWvquGkZXcS8IBKLGtZSbEam7e41YWX9B-v6SiY8vr48H5ujkHwOziebL87W01zBjxC6QuKGenkAsNE0c7iUMkU4l4SxE6=w1235-h926-s-no-gm?authuser=3" alt="" width="80%" />
      </th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>스펙의 발전이 더 빠른 독특한 상황</b></td>
    </tr>
  </tbody>
</table>

<p>발표를 듣다 보면 PL 분야의 기본 기술조차 다른 분야에서 꽤 넓은 활동 무대를 가질 수 있다는 사실을 새삼 깨닫게 된다.
대표 사례가 블루투스 명세의 엄밀한 검증(Formal Verification) 연구였다<sup><a href="#FVBluetooth">4</a></sup>.
자연어 명세를 Dafny로 유한 상태 머신(Finite State Machine)으로 옮기고, 구현체도 동일한 형태로 모델링한 뒤 모든 동작이 명세를 지키는지 수학적으로 증명했다.
전형적인 기법이지만 새로운 도메인에 적용했다는 이유만으로도 충분한 가치를 인정받은 셈이다.</p>

<p>내가 발표한 VeriSafe Agent 역시 실행 중 검증(Runtime Verification)과 유사한 기법으로 에이전트의 행동을 검사한다<sup><a href="#VeriSafeAgent">5</a></sup>.
방식 자체는 기초적이지만, 검증의 대상과 문제 설정이 신선해 MobiCom 무대에 설 수 있었다.</p>

<p>글을 쓰다 보니 얼마 전 연구실 회식 자리에서 교수님이 들려주신 이야기가 떠올랐다.
교수님께서 박사 과정을 하던 시절에는 SE 분야에 다루기 좋은 문제가 많지만, 해결 방식이 종종 이론적 토대를 갖추지 못해 PL 기술을 이식할 여지가 많았었다는 내용이었다.
모바일 분야도 아직 PL 기술이 본격적으로 적용되지 않은 미개척지라는 생각이 자연스레 이어졌다.</p>

<p>지금까지 PL 기술이 ‘프로그래밍’에 묶여 있었다면, 앞으로는 현실 문제를 프로그램처럼 모델링해 PL 이론을 접목하는 방식이 가능하다고 본다.
언어 모델 덕분에 비정형 데이터를 정형화하기가 쉬워졌으니, PL 기술을 현실 문제 해결에 직접 투입하는 날도 머지않았다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center;">
        <img src="https://lh3.googleusercontent.com/pw/AP1GczMDXmRLaKkTHFaGsVCUrVHg0p4wB1ye2yhDoGKXlMEWIq8yriQOQ198ZNRv0OQflUe-_EzdvMCAhQZq2L2fveaqF9CiS7JNbfbW9oSdRZwBk146rT6QB1fLrIb-E86sh7S0ls-kY4N4sMBoHE-jjDIe=w1235-h926-s-no-gm?authuser=3" alt="" width="80%" />
      </th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>온고지신</b></td>
    </tr>
  </tbody>
</table>

<p>MobiCom 개회사에서도 옛것과 새것을 아우르는 융합 연구가 높은 Acceptance Rate를 차지한다는 통계가 소개됐다.
융합 연구는 접근법 자체가 참신하다는 장점이 있고, 연구자 개인에게도 다양한 분야의 지식을 흡수하며 사고 틀을 넓혀 준다.
한 분야만 깊게 파다 보면 사고가 굳어지기 쉬운데, 여러 분야를 넘나드는 공부가 유연한 사고방식을 지켜 준다.
AI 발전으로 지식 습득 장벽이 낮아진 만큼, 나 역시 PL/SE를 넘어 AI, 모바일, 네트워크 등 다양한 도메인에서 새 문제를 찾아보고 싶은 마음이 커졌다.</p>

<h2 id="홍콩-여행">홍콩 여행</h2>

<p>학회를 즐기고 남는 시간에는 학회장 주변 여행을 다녔다.
방문하기 직전 PLDI 준비로 워낙 바빠서 홍콩에 무엇이 있는지 전혀 알지 못한 상태로 방문했지만,
운 좋게도 신인식 교수님 연구실 분들을 만나 함께 여행을 다녔다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center;">
        <img src="https://lh3.googleusercontent.com/pw/AP1GczMuoQYU4mOVHXaJmTS4kVFMVDHZwauKRyMfZ13mr1Aqv6eXL9bZ3YzTzLJXzz6GyBdzEqdKBFS0e3BpX4ze05JzIKkl1x4E_nMc55wWkba1zjdAMvqObBv8-60qXpyMvUEb1sJqL9SXFS6mipmhoUYQ=w695-h926-s-no-gm?authuser=3" alt="" width="45%" />
        <img src="https://lh3.googleusercontent.com/pw/AP1GczNwkDriy5zZiuvhGaDLCs02jzRtpPlfFOfttDc2mRYx4tC99WtxPszNabl_JJbvTah4_QUacxLWW-gQVQyfrb9nygFJ9zZSgaRPcf8kDpYSXMrNaDnWY4WKsQhSJUfQlvXGOhrLhuXy7B5qZ2DHQIh8=w695-h926-s-no-gm?authuser=3" alt="" width="45%" />
      </th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>우유 푸딩과 토스트</b></td>
    </tr>
  </tbody>
</table>

<p>홍콩은 미식의 도시로 유명하지만, 그중에서도 디저트류와 딤섬이 유명하다고 한다.
그중에서도 우유 푸딩을 먹기 위해서 페리를 타고 바다를 건넜다.
우유 푸딩, 연꽃 푸딩, 생강 푸딩을 주문했다.
연꽃 푸딩은 연꽃 열매가 올라간 푸딩이었는데, 향이 없는 밤 맛이 났다.
전반적으로 우유 향이 진해서 맛있게 먹었다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center;">
        <img src="https://lh3.googleusercontent.com/pw/AP1GczOm1gMWs2eQPWd3wvMYQeEGULms7ORAURoAgtTaSwwlDdU5wnnC3la1RJFE2D7-WEwI3JtBhybAzy5GiDyW21W1TeTefqB1MgF4e_P0WuXBU9hIV3f_JX7bqUXJmGiKxuQb_9lzTFfQVoTEgVSZRuxa=w695-h926-s-no-gm?authuser=3" alt="" width="45%" />
        <img src="https://lh3.googleusercontent.com/pw/AP1GczMW588x9GFoodf9rfcWpOYxD0w8qM28wrdEUCTWDO18Athqjwfs7RytT_fQo3xCv-YPwOiBCNle1p_RxdVuBCyQXEJFrGcTCGQ4KzDWkscj4CfWfKgyP7Yq0-hRvpPhn3L7TlAJ0V3GlmGLYTwbuRV-=w695-h926-s-no-gm?authuser=3" alt="" width="45%" />
      </th>
    </tr>
    <tr>
      <th style="text-align: center;">
        <img src="https://lh3.googleusercontent.com/pw/AP1GczNeh2tbQRSm53cuyeTR-wCzhZhTeJkcFbltjAk8mxYMBMCDxZoYJF8H0Tdwznyz_PpF1cx5RRi6mWqUb-33GCEOq81BF76M3RF3-wH79Lf7LRodu9pqAn1LQKaVDY_8CBaXx--VGSv6UzjNLPiD21c4=w695-h926-s-no-gm?authuser=3" alt="" width="45%" />
        <img src="https://lh3.googleusercontent.com/pw/AP1GczN--8fWI7peIV_7r0ycAwuOZDEBIR7J701rIr_IEDg66F3SnAa7zyyvnoaQ689wnoKXN4F_Or0KsGJe8nHKEIJN2Ugq2_3rLROIp_RsqTMwQaLeVQgNrJp0jxKP_fESlh8umpLCeCEgof21OA5yJ_51=w695-h926-s-no-gm?authuser=3" alt="" width="45%" />
      </th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>재밌는 것들</b></td>
    </tr>
  </tbody>
</table>

<p>이후에는 영국이 지배하던 시절의 홍콩에 최초로 지어진 감옥을 방문했다.
이런 장소는 역사적 배경을 알고 방문하면 좀 더 재밌는데, 사전 조사가 부족해서 아쉬웠다.
이후에는 호텔로 돌아가는 길에 도교 사원, 길거리 시장을 구경했다.</p>

<p>솔직히 말해서 여행 장소로서 홍콩은 아쉬운 점이 많았다.
대부분의 길거리 모습이 비슷하고 (중국어가 많은 명동 느낌), 관광할 장소도 한정적이었다.
게다가 내가 홍콩 영화에 대해서 아는 게 없다 보니 영화에 나온 장소에 가더라도 크게 느껴지는 것은 없었다.
조금 아쉬웠지만 PLDI 논문 제출 직전이었기 때문에 오히려 유혹에서 벗어날 수 있어 다행이라는 생각이 들었다.</p>

<h2 id="마치며">마치며</h2>

<table>
  <thead>
    <tr>
      <th style="text-align: center;">
        <img src="https://lh3.googleusercontent.com/pw/AP1GczN9FyGFnERrPKRuo-nSLAz8NMycwU6H9UFV7Gz9BYdDT_3fst_WG38ZbSfBbRd-aVbKu47TfWMdok4EXwRFmaWLsybmYS-m3hG4o7_fmF12QKFp_AoOxg5rsYaTzF8_OI7DvJW21UdVzci9qQDN9v0t=w694-h926-s-no-gm?authuser=3" alt="" width="45%" />
        <img src="https://lh3.googleusercontent.com/pw/AP1GczMEyludNZNeEaY9qv3hddrJEflQeAxzhMO9FspTZ6nuskcILeaXaPHlaNEwzwFSGDaNTJOFU-BKOdLKO8-yfDDyga0e7DJe5FNrdUlrtBJw5gVtkGWbK2x_hWKmuYfINOjgY8edAZA9WL7DkUjPI-gm=w695-h926-s-no-gm?authuser=3" alt="" width="45%" />
      </th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>MobiCom 안녕~</b></td>
    </tr>
  </tbody>
</table>

<p>이번 출장에서는 여러 가지 고마운 일들이 많았다.
먼저, 처음으로 떠난 출장이자, 혼자 떠난 출장이어서 걱정되는 점도 많았지만 별 탈 없이 돌아온 것에 감사한다.
그리고, 신인식 교수님 연구실 분들이 챙겨주셔서 외롭지 않게 학회와 홍콩을 즐길 수 있었다.
교수님과 연구실 차원에서 좋은 호텔과 학회비를 지원해 주어 좋은 환경에서 머물다 올 수 있었다.
마지막으로 함께 논문을 작성한 모든 저자분들 덕분에 대표로 MobiCom이라는 큰 무대에서 발표할 기회를 얻을 수 있었다.
나에게 귀중한 경험을 제공해 준 모든 사람들에게 감사를 전한다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center;">
        <img src="https://lh3.googleusercontent.com/pw/AP1GczOSb2YpIGmLPvdoEIqBtg5zL9Nn_Mj7y9Mo9behDPg6iNj0pufx47BFeZl4X9_YN4vtkC1oWOI-rUPIJEKMe3ZxiCa0vNKPdz7sBB1CeK_SXMDhQqBTLvHx9GiVs4FsFnSMpagsR1JGlCI8hRREHr2l=w1235-h926-s-no-gm?authuser=3" alt="" width="80%" />
      </th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>연구 잘하는 법: Stay curious! Keep questioning! Keep exploring!</b></td>
    </tr>
  </tbody>
</table>

<p>이번 연구를 통해 소프트웨어 분야 밖에도 우리가 기여할 수 있는 문제들이 많이 있다는 사실을 새삼 느꼈다.
같은 분야 사람들과의 소통도 중요하지만, 때로는 전혀 다른 분야의 연구자들과 대화하며 시야를 넓히는 일이 큰 자극이 된다는 것도 깨달았다.
하던 것만 하는 지루한 연구자가 되지 않기 위해서 부단히 노력해야겠다.</p>

<h2 id="참고-문헌">참고 문헌</h2>
<p>[<a name="Hearable">1</a>] Itani et al. Wireless Hearables With Programmable Speech AI Accelerators
[<a name="AutoIoT">2</a>] Shen et al. AutoIOT: LLM-Driven Automated Natural Language Programming for AIoT Applications
[<a name="NeurosymbolicSynth">3</a>] Barnaby et al. PhotoScout: Synthesis-Powered Multi-Modal Image Search
[<a name="FVBluetooth">4</a>] Le et al. Formalization, Implementation, and Verification of the Bluetooth L2CAP State Machine
[<a name="VeriSafeAgent">5</a>] Lee et al. VeriSafe Agent: Safeguarding Mobile GUI Agent via Logic-based Action Verification</p>]]></content><author><name>이동재</name></author><category term="Trip" /><category term="MobiCom2025" /><summary type="html"><![CDATA[들어가며 MobiCom은 모바일 컴퓨팅과 네트워크를 다루는 학회로, PL/SE를 주로 다루는 우리 연구실이 참석할 기회는 매우 드물다. 운 좋게도 신인식 교수님 연구실의 이정재 학생과의 공동 1저자 논문이 채택되어 논문 발표자로서 다녀올 기회를 얻었다. 첫 해외 출장이자 혼자 떠나는 출장이면서 동시에 발표자로서 참석하는 첫 국제 학회였기에 나에게는 큰 의미가 있었다. 다만, 당장 다음 주 금요일에 PLDI 논문 제출 마감이었기 때문에 무거운 마음의 짐도 나와 함께 출국했다. 홀로 떠난 출장이기에 최대한 나의 경험과 생각을 구체적으로 공유하여 현장감을 생생하게 전하기 위해 노력했다.]]></summary></entry><entry><title type="html">안전한 정적 분석과 시대정신</title><link href="http://prosys.kaist.ac.kr/dagstuhl/" rel="alternate" type="text/html" title="안전한 정적 분석과 시대정신" /><published>2025-11-24T00:00:00+00:00</published><updated>2025-11-24T00:00:00+00:00</updated><id>http://prosys.kaist.ac.kr/dagstuhl</id><content type="html" xml:base="http://prosys.kaist.ac.kr/dagstuhl/"><![CDATA[<h2 id="들어가며">들어가며</h2>
<p>“시대정신”이라는 말이 있다.
특정한 시대에 큰 영향을 끼치는 중요한 가치를 일컫는다고 한다.
독일의 철학자 헤겔이 그 개념을 처음 고안한 이래 지금까지 이어져 매 선거철이면 우리 귀를 자주 간지럽힌다.</p>

<p>지난 4월 헤겔의 나라에서 이메일을 한 통 받았다.
<a href="https://dagstuhl.de/25421">“현대 SW공학과 안전한 정적 프로그램 분석(Sound Static Program Analysis in Modern Software Engineering)”</a>이라는
주제로 닥스툴 세미나(Dagstuhl Seminar)가 열리는데 참가하지 않겠느냐는 초청장이었다.
닥스툴 세미나는 독일의 작은 마을인 닥스툴의 닥스툴 성(Schloss Dagstuhl)에서 정기적으로 열리는 전산학 분야 전문가들의 모임이다.
일년 내내 각 분야별 다양한 주제로 세미나가 열리는데, 초청받은 연구자들이 모여 3-5일간 집중적으로 토론하고 교류하는 자리다.
닥스툴 세미나가 즐거운 자리라는 것을 익히 들은적 있는데다가, 특히 주제도 매우 마음에 들어서 단숨에 참가한다고 답장을 보냈다.</p>

<p>현대 SW 개발에서 정적분석은 빠질 수 없는 필수 요소가 된지 오래다.
특히, 안전성(soundness)이 보장되는 정적 분석기는 프로그램의 올바름을 증명할 때 필수이다.
정적 분석에서 안전성이란 프로그램의 실제 실행의미를 모두 포섭하도록 분석하는 성질을 뜻한다.
분석기가 실행의미를 모두 포섭하면서 샅샅이 훑어봤는데도 오류가 없는 것으로 밝혀지면 그 프로그램은 올바른 것이다.
가령, 어떤 변수 x의 값이 프로그램 실행 중에 항상 10 이상이라고 하자.
안전한 정적 분석기는 이러한 실제 값을 모두 포섭하면서 x의 값을 실행 전에 예측한다.
예를 들어, x의 값이 “양수”라고 예측한다면 이는 안전하게 실제를 모두 포섭한 것이다.
양수는 10 이상인 수를 모두 포함하므로.
이러한 예측 결과가 있으면, “1/x”이라는 식이 0으로 나누는 오류가 없음을 증명할 수 있다.
예측 결과 “x”는 양수이므로 0이 될 수 없기 때문이다.
실제를 포섭하는 예측 결과로도 오류 발생 가능성이 없다는 것을 보였으니,
실제 실행에서도 당연히 오류가 없을 것임이 자명하다. 증명 끝.
테스팅으로는 유한 시간안에 구석구석 숨어 있는 모든 오류를 찾아낼 수 없기 때문에,
크고 복잡한 시스템 개발에서 이러한 정적 분석은 아주 유용하다.
따라서 SW의 안전성이 매우 중요한 시스템(예: 항공기 제어, 운영체제, 의료기기 등)에서는 안전한 정적 분석기가 필수적이다.</p>

<p>하지만, 안전한 정적 분석이 안전필수 SW가 아닌 일반 응용SW 개발에서 얼마나 실용적인가에 대해서는 여러 의견이 많다.
실행의미를 모두 포섭하기는 하지만 실제가 아닌 상황까지 고려하는 경우도 있다는 문제 때문이다.
너무 보수적으로 프로그램을 분석하다보면 실제 오류가 아닌데도 오류라고 판단하는 경우가 생긴다.
가령, 어떤 변수 x의 값은 실제로 항상 양수만 가능한데도, 분석기가 보수적으로 “0보다 같거나 큰 수”라고 판단하는 경우도 있다는 뜻이다.
그렇다면 “1/x” 같은 식이 있을 때, 분석기는 x가 0이 될 가능성도 있다고 잘못 판단하여 “0으로 나누기 오류”를 보고할 것이다.
이른바 허위경보(false alarm)이다.
안전하지만 허위경보가 절대 없는 정적 분석기를 만드는 것은 이론적으로 불가능하다는 것이 이미 증명되어 있다.
그리하여 사람들은 허위 경보 비율을 줄이기 위해 종종 안전성을 포기하는 선택을 하곤 한다.
그러다보면 당연히 실제 오류를 놓치는 경우도 발생하기 마련이다.
따라서 허위경보와 놓치는 오류 사이에서 적절한 균형을 찾는 여러 기술을 많은 이들이 개발하고 있다.</p>

<p>이번 닥스툴 세미나의 주제는 이른바 “안전한 정적 분석의 시대정신”“을 논하자는 것으로 들렸다.
현대 소프트웨어 개발 현장에서 필요로 하는 정적 분석은 어떤 모습이어야 하는가?
지난 50년간 이 분야가 걸어온 길은 어떠하며, 앞으로는 어떤 방향으로 나아가야 하는가?
우리 연구실도 이에 관해 오랫동안 고민하던 차였다.
마침 최근 재미있는 성과도 나오고 있는 터라 우리 이야기를 들려주면 아주 딱이겠다 싶었다.
참가자들의 전문 분야도 다양해서 사람들이 어떤 반응을 보일지도 무척 궁금했다.
새로운 모험을 떠나는 기분으로 독일행 비행기에 올랐다.</p>

<h2 id="닥스툴-가는-길">닥스툴 가는 길</h2>

<p>모험은 역시 멀고 험난한 법.
전에 닥스툴에 다녀온 분들과 이야기할 때면, 하나같이 빠지지 않는 말이 있었다.
바로 외진 시골 마을이라는 점.
교통이 불편하다고들 했다.
가기 전까지 그저 도시사람(서울사람)들의 엄살이라고 여겼다.
안내서를 보니 프랑크푸르트 공항에서 기차와 택시를 타고 한참 가야한다고 되어 있다.
시간이 좀 걸리기는 한데, 기차와 택시로 갈 수 있는데 웬 엄살인가?</p>

<p>막상 가보니 뒤통수가 얼얼했다. 택시를 타면 갈 수 있다고 했지, 택시를 항상 탈 수 있다고는 하지 않았다는 점을 놓쳤다.
한국에서 독일로 가는 비행기는 보통 독일 시간으로 저녁에 도착하고, 하필 내가 도착한 날은 일요일인 것이 문제였다.
안내서에 적힌 여러 경로 중, 나는 St. Wendel 역에서 택시를 타는 방법을 골랐다.
프랑크푸르트 공항에서 St. Wendel 역까지는 기차로 약 두 시간 걸리고
역 앞에는 정류장이 있으니 거기서 버스나 택시를 타면 된다고 했다.
구글 스트리트 뷰로 미리 역 주변을 살펴보니 정류장도 있고, 역 바로 앞에 건물도 보이는 흔한 마을이었다.
인터넷 검색을 해보니 내가 잘 아는 교수님들의 여행기가 몇 편 보였는데,
다들 St. Wendel 역에서 택시나 버스를 탔다고 하는 것도 안심이 되었다.
안내서에는 다른 역(Türkismühle)에 내리는 경로를 더 추천하긴 했지만, 그 쪽은 역 주변에 대중 교통이 없다며 미리 택시를
예약하라고 되어 있었다.
귀찮았다. 뭐 얼마나 대단한 오지라고? 기차가 다니는 마을인데?
그냥 St. Wendel으로 내질렀다.</p>

<p>St. Wendel 역에 가까워질수록 분위기가 심상치 않다.
창밖에는 아무것도 안보인다. 컴컴하다.
사람들은 거의 다 내렸다. 내리기만 한다.
기차 안에는 나밖에 없다.
밤 9시 반쯤 역에 내리니 작은 마을이 보이지만, 사람은 보이지 않는다.
정류소는 있지만, 버스도 택시도 없다.
역앞 도로가 마을에서 제일 큰 길로 보이지만 드문드문 차가 지나갈 뿐이다.
작은 별의 어린왕자가 이런 삶이겠구나 싶다.</p>

<p>기다려도 오지 않는 택시를 포기하고 방법을 찾아 나서야 했다.
지나가는 가족이 있어 붙잡고 도움을 청해보았다.
고마운 독일인들은 흔쾌히 길가에 서서 직접 택시 회사도 알아봐주고 전화도 해주었지만 어디도 전화를 받지 않았다.
밤은 점점 깊어가고, 어디 호텔이라도 잡아서 다음날 가는 수 밖에 없다고 생각하던 차에
문 닫을 준비를 하는 술집이 보였다.
마지막 희망을 걸고 들어가 사정을 이야기했다.
영업을 마무리하던 친절한 독일 청년은 어딘가에 전화를 걸어서 한참 통화를 했다.
2분 후에 택시가 온다는 반가운 소식.
곧 산신령같은 외모를 지닌 할아버지 택시기사가 도착했고, 칠흑같은 산골짜기를 지나 닥스툴 성에 도착했다.
도착해보니 밤 11시 무렵. 다들 저녁을 먹고 숙소로 들어간 듯했고, 남아서 맥주를 마시던 두세명이 반갑게 맞아주었다.
합류해서 맥주 한 잔을 들이켰다.
평화가 물밀듯 밀려왔다.</p>

<p>그 밤의 고생이 당황스럽긴 했지만, 처음 며칠간 사람들과 안면을 트는 데에 유용한 이야깃거리로 쓰였다.
이야기를 들은 사람들의 반응은 한결같았다.
“아니 왜 택시 예약 안했어요?”
안내서에 예약 안하는 선택지도 있었으니까.
역시 선택지 많은게 항상 좋은 것은 아니다.</p>

<p>다음 번에 닥스툴로 가는 이들을 위해 명심 사항을 정리한다. 비슷한 고생이 없길 바란다.</p>
<ul>
  <li>독일 기차 앱을 미리 준비하여 예매. 프랑크푸르트 공항에서 기차표 파는 자판기만 있는데 찾기도 쓰기도 어려움.</li>
  <li>프랑크푸르트에서는 광역이 아니라 지역 기차를 타야하는데 길 찾기가 어려움. 지하철 아닌가 싶은 플랫폼으로 내려가서 타야함.</li>
  <li>택시는 미리 예약. 안내서에서 가장 추천하는 Türkismühle 역에서 내려서 예약한 택시를 타는 방법이 가장 안전.</li>
  <li>현금 충분히 준비. 택시는 카드가 안됨.</li>
  <li>세미나를 마치고 공항으로 돌아갈 때는 참가자들과 함께 갈 수 있도록 세미나 주최측에서 도와줌.</li>
</ul>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczMp_oXFkSfc5NKCMHkFgingq4j6zZJK2npnK_Ji_Gr9wccowNNwq8TeMV9U7vCV2mspyLtJb2wK6HltZGZzPBpdECA0CasHuIOWZTb-hAtwQeYgvGd03UQ0WRLpzM2SEhHpEhhNFIu-SjMxRKOzUVDd=w1262-h1683-s-no?authuser=0" alt="" width="50%" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>우여곡절 끝에 밤늦게 도착한 닥스툴 성</b></td>
    </tr>
  </tbody>
</table>

<h2 id="닥스툴-성">닥스툴 성</h2>
<p>닥스툴 성은 1700년대에 지어진 오래된 성이다. 현재는 개조, 보수하여 전산학 세미나 센터로 사용되고 있다.
이 센터의 운영은 <a href="https://www.dagstuhl.de/en">라이프니츠 정보과학 연구소(Leibniz Center for Informatics)</a>에서 맡고 있다.
우리가 잘 아는 그 수학자 라이프니츠의 이름을 딴 기관이다.
이번에 가서 알았는데, 전산학자들의 많이 쓰는 서지 관리 시스템인 DBLP도 이 연구소에서 운영하고 있었다.
매 주 한두개 세미나가 일년 내내 열리는 듯 했다. 우리 세미나가 열린 주에도 다른 세미나가 동시에 진행되고 있었다.</p>

<p>독일 정부의 지원을 받아서 참가자들에게는 굉장히 저렴한 비용으로 숙식을 제공한다.
숙소는 대학 기숙사 같은 느낌인데, 소박했지만 불편함은 없었다.
식사도 성 안에 있는 식당에서 급식처럼 제공되었다.
독일의 가정식(혹은 독일 학생들의 급식)이 이런 것인가 싶은 느낌이었다.
그 이외에 물, 맥주, 와인, 과자 등은 언제든 각자 가져다 먹고 스스로 정산서에 기록한 후,
퇴실할 때 한꺼번에 계산하는 방식이었다.</p>

<p>닥스툴 성은 주변이 온통 숲과 산으로 둘러싸인 외진 곳에 위치해 있다.
주변 자연 경관이 좋을 것 같아서, 달리기를 해볼까 운동화를 챙겨갔지만 헛수고였다.
해가 너무 늦게 뜨고, 일찍 질 뿐더러, 건물 근처를 제외하고는 말그대로 칠흑같은 어둠이라서 나가 뛰어다닐 곳이 없었다.
봄이나 여름이었으면 어땠을지 궁금하다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczPXLrI0k-DxLIFZBtJoyR6pU_NCPbKO7Bg3O3JBgfYurQcIHrmS6grp3hWIO1KJ4u8FEcpbN7nXlXkpa95kncr3Q1yJaLfMGEyD0FQf8ZjR7iPc8aSJOxnCEA6ykgS8-fFmiXB5Hjy6MbidxAwWdidk=w1262-h1683-s-no?authuser=0" alt="" width="75%" /></th>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczNF00uJTaF-gfgunkZ19GvPAWtwnWIbfMTaMOgC8NuRRdjg0kAgF82cg9addXfEBXkNxvqp-xSOTznTBwL1WDNQgqICTRUKMRiD6GgVfEbQxM2cq5BpD7QjN9V3K6dqwQ7_n3dRMTabxqPXU8zmeRrC=w1262-h1683-s-no?authuser=0" alt="" width="75%" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>닥스툴 성</b></td>
      <td style="text-align: center"><b>하리보의 나라에 온것을 환영하는 침대</b></td>
    </tr>
  </tbody>
</table>
<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczMbuvafDEkeUep7YrMmbnHj0Bm_UE5LHjssMfpiz4_V6NDpxKvQ05aE_qy6p_nfOH-2OsDdPh-vuequxxQ13cVqJlNVJz6vgKERTRXX0CmHsNCAbSxW-9r0xWuJ-IS1mQTuz97cGqw-pfrmWOT9tnGc=w1670-h1253-s-no?authuser=0" alt="" width="75%" /></th>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczPAlhIrKQKFot49rR-JOJyARlH8F7DYMP3Q1GIaKH6BYfSmmhYy4MdOzMHS5Cgr3F-zvWgQJBWJCDeMCM3qwbUrzAq2m3KlZP8GAIIewloUlnUG6uoKXxH3XJIWDJAr4vMCMfvLJQBi5YKaI5gTTC5l=w1262-h1683-s-no?authuser=0" alt="" width="75%" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>독일 가정식 같았던 음식</b></td>
      <td style="text-align: center"><b>무인매장식 운영</b></td>
    </tr>
  </tbody>
</table>

<h2 id="세미나-개요">세미나 개요</h2>
<p>우리 세미나는 월요일 아침부터 금요일 점심까지, 매일 오전 9시부터 오후 6시까지 밀도있게 진행되었다.
참가자들의 연령대도 다양했다. 70년대에 박사학위를 받은 분부터, 지금 박사과정에 있는 학생까지. 50년 세월이 모였다.
각 참가자들이 20-30분 정도로 각자 발표하는 것 이외에도, 여러 주제에 관해 토론하는 시간이 많았다.
무작위로 조를 짜서 특정 주제에 관해 토론하는 시간,
이론팀(theory)과 현실팀(practice)으로 나누어 상대팀 사람들과 한명당 10분씩 이야기하는 스피드 데이트 시간을
통해서 참가자들의 연구 방향과 서로 다른 시각을 엿볼 수 있었다.
또한, 매 식사 시간에는 각 식탁에 참가자들이 무작위로 배치되기 때문에 자연스럽게 여러 사람들과 교류할 수 있었다.
매일 저녁에는 맥주와 치즈가 제공되었고, 탁구, 당구, 다트, 보드게임 등으로 즐거운 시간을 보냈다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczPCFWFxtXBnTQGyPUnz6dD1VZ6m0EIobdFum7s13oykf0NJ3kgibU2vUyXllt3X0bjzn0lkoExK09xfRHUzMBFKkhT-UeazsxyuT0vQL4yWyzNSus-WA7XGQP6ej8Ic87Tio9Hf1YywTNLtiAo76GF2=w1262-h1683-s-no?authuser=0" alt="" width="50%" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>참가자들이 선정한 토론 주제 후보. 정적 분석 분야의 오랜 문제와 새로운 문제가 모두 모였다.</b></td>
    </tr>
  </tbody>
</table>

<h2 id="지향성-프로그램-분석-의심에서-확신으로directed-program-analysis-from-suspicion-to-witness">지향성 프로그램 분석: 의심에서 확신으로(Directed Program Analysis: from Suspicion to Witness)</h2>

<p>초대장에 적힌 세미나 취지를 읽고는 반가웠다.
같은 고민을 하던 우리 연구실의 연구 방향과도 결이 맞았다.
우리가 하고 있는 일을 소개할 좋은 발표 제목을 생각하다가
위와 같은 제목을 골랐다.
기존 정적 분석이 오류 의심에서 멈추었다면, 우리는 의심을 뛰어넘어 확신에 이르는 결론을 내놓겠다는 포부였다.
긴 여정의 마지막날 마지막 발표 순서인 것이 아쉬웠지만, 그래도 많은 사람들이 관심을 가졌고 여러 질문이 이어졌다.
발표 슬라이드는 <a href="https://kihongheo.kaist.ac.kr/slides/dagstuhl25421.pdf">여기</a>에서 볼 수 있다.</p>

<p>앞서 언급한 허위 경보 문제는 정적 분석이 안고 있는 근본적인 숙제이다.
오랜 시간 동안 수많은 연구자들이 여러 접근법을 시도해왔다. 크게 세 가지 방향으로 나누어 볼 수 있다.</p>
<ol>
  <li>안전성을 유지한 채 더욱 정교한 분석을 설계하여 허위 경보를 줄이려는 방향. 정교한 분석을 현실적인 비용으로 실현하는 것이 관건.</li>
  <li>안전성을 포기하고 허위 경보를 줄이려는 방향. 안전성을 포기하면서도 놓치는 오류가 적은 분석을 설계하는 것이 관건.</li>
  <li>안전성을 유지하되, 사용자를 위해 분석 결과를 후처리하는 방향. 후처리의 정교함과 효율성, 설명가능성이 관건.</li>
</ol>

<p>세 가지 방향 모두가 현실에서 매우 중요하다.
나같은 경우, 박사 과정 중에는 1번과 2번 방향을 주로 연구했고, 졸업후 지금까지는 3번 방향을 주로 연구하고 있다.
발표 주제도 그래서 3번 방향에 초점을 맞추었다.
마침 조별 토론의 주제 중에도 이 방향과 밀접한 “정적 분석 결과의 설명가능성(사용자 편의성)”이 있었다.
토론보다 내 발표가 먼저 있었으면 좋았겠지만, 발표 홍보 기회로 삼기로 했다.
토론 과정에 나온 내용에 맞게 발표 내용을 일부 보완하기도 했다.</p>

<p>조별 토론의 초점은 어떻게 하면 일반 개발자(정적분석 비전문가)에게 정적 분석 결과를 잘 설명할 수 있겠냐는 것이었다.
정적 분석기의 동작이 프로그램의 실행 과정과 다른 경우가 많기 때문에, 일반 개발자들이 결과를 이해하기 어려워하는 경우가 많다.
또한, 반대로 개발자들이 분석결과를 검토하면서 내린 결론(예: 오류 진위 여부)을 다시 분석기가 이해하도록 만드는 것도
중요하다.
이 문제를 해결하기 위해서, 우리 연구실에서는 개발자와 분석기가 손쉽게 상호작용하는 알람 랭킹 시스템을 연구한 적이 있다.
이 시스템은 정적 분석 결과로 나온 오류 후보 지점을 의심도 순으로 정렬하여 개발자에게 편의를 제공하고, 개발자가
검토한 결과를 다시 분석기에 반영할 수 있게 한다.
분석 결과에 관한 자세한 설명은 없지만, 적어도 의심도 순으로 정렬된 목록을 제공한다는 점에서 유용하다.
이를 이용하면 여러 오류 의심 지점이 존재할 때, 고효율 저비용으로 주어진 시간안에 많은 오류를 찾아낼 수 있다.
하지만, 여전히 개별 오류 의심 지점에 대한 설명가능성 문제는 남아 있었다.</p>

<p>반면, 이 발표에서는 어떻게하면 설명을 잘할 것인지가 아니라, 어떻게하면 설명을 안해도 되는지를 이야기하고 싶었다.
의심스러운 오류 후보 지점을 개발자에게 그냥 전달하는 대신, 실제 오류를 증명하는 증거(즉, 오류 유발 입력)를
잘 찾는 방법을 소개하고자 했다.
개발자에게 오류 유발 입력보다 더 좋은 설명은 없기 때문이다.
이를 실현하고자 하는 것이 이른바 지향성 프로그램 분석(Directed Program Analysis)이다.
정적 분석기가 오류 의심 지점을 찾아내면,
각 오류 의심 지점 별로, 해당 지점에서 발생하는 실제 오류 유발 입력을 효과적으로 찾는 기술이다.
이러한 입력을 효과적으로 찾으려면, 정적 분석기가 오류 의심 지점을 찾을 때 사용한 내부 정보를 잘 활용해야 한다.
하지만 이러한 과정은 개발자에게 직접 드러나지는 않고, 오직 마지막에 도출된 오류 유발 입력만이 개발자에게 전달된다.
“확실하지 않으면 승부를 걸지 말라”는 영화 <타짜>의 격언과 맞닿아 있다.</타짜></p>

<p>발표에서는 이러한 지향성 프로그램 분석의 개념과 연구실에서 개발한 세 가지 적용 사례를 소개했다.
아이디어도 재미있어 했지만, 현실 세계에서 널리 쓰이는 SW에 있는 실제 오류를 찾아냈다는 점에서
관심을 많이 받았다.
연구실 학생들이 이루어낸 성과가 자랑스러웠다.
발표에서 소개한 각 사례는 다음과 같고, 구체적인 이야기는 해당 링크에서 살펴볼 수 있다.</p>
<ul>
  <li><a href="http://prosys.kaist.ac.kr/dafl-story">응용 프로그램의 메모리 오류 탐지</a></li>
  <li><a href="http://prosys.kaist.ac.kr/sky-and-star">라이브러리 프로그램의 비정상적 예외 상황 탐지</a></li>
  <li><a href="http://prosys.kaist.ac.kr/high-and-far">컴파일러의 잘못된 최적화 오류 탐지</a></li>
</ul>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczNn1Lmczlrv2rYi4CYxhJAK7vH-4GEZehLH2T8Yp8b3o85954ZeJaJu2vr895mK3RKFHY-isW2OJyH9QUwKpaWDx9f0VfcoMA6U1fE8xCK23A6gBTSUz_4cx05oi2GfYrbuaio3Igpq50rHfnGV4Q5W=w1310-h983-s-no?authuser=0" alt="" width="70%" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>마지막 날 마지막 발표 중</b></td>
    </tr>
  </tbody>
</table>

<h2 id="기록정신">기록정신</h2>
<p>닥스툴 세미나의 운영에서 매우 인상적이었던 점은 기록정신이었다.
세미나 기간 동안 모든 발표와 토론 내용은 함께 기록했다.
각 발표자는 발표 전후로 요약문을 공책에 직접 기록했고, 세미나 후에는 웹 시스템에 올려서 공유했다.
토론시에도 각 조별로 중요한 논의 내용을 기록하여 전체와 공유했다.
이러한 내용은 세미나가 끝난후 정식으로 웹에 출판되어 누구나 열람할 수 있다.
역대 모든 세미나의 자료는 <a href="https://drops.dagstuhl.de/entities/journal/DagRep">여기</a>에서 볼 수 있다.
좋은 말씀은 누구나 쉽게 접할 수 있도록 널리 퍼트리자는 정신.
역시 구텐베르크의 나라답다.
이 글을 쓰는 시점에는 아직 우리 세미나의 자료가 올라오지 않았지만, 최근에 참가자들의 메일링 리스트를 통해
최종본의 의견을 수렴하는 절차가 진행 중인 것으로 보아 머지 않아 올라올 것으로 보인다.</p>

<p>이 외에도, 여러 방면으로 참가자들의 흔적을 오래된 성에 새겨넣었다.
모든 참가자들은 방명록에 자필로 서명을 남겼다.
또한 도서관에는 각 참가자들이 직접 집필한 책을 비치해놓고 저자에게 직접 한마디씩 남기도록 했다.
우리 세미나 참가자들이 쓴 책도 도서관 입구의 작은 책장에 비치되어 있었다.
물어보니 지난 번에 참석했을 때 남겨놓았다는 사람들이 있었다.
도서관에는 제법 책이 많았는데, 그 작은 입구 책장에 우리 세미나 참석자의 책이 여러권 꽂혀 있는 것으로 보아,
아마 각 세미나 때마다 참가자들의 저작을 입구에 비치해놓는 것 같다.</p>

<p>이러한 기록정신은 참석자들의 가슴에 은은한 모닥불을 지피는 듯 했다.
우리가 나눈 이야기가 이 성처럼 오래도록 남을 것이라는 생각.
우리의 토론과 참여가 존중받고 지원받는다는 느낌.
그런 이유로 여기에 있는 일주일을 더 알차게 보내야겠다는 책임감.
마지막 날 밤 이야기를 나누어보니 나만 든 생각은 아니었다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczOEbmgeUiQfXN1HqyViyW6Lck7t1Rkq2D5TDHpenMWIXrJ82PFN8MuacYb7s4lNF7I4wHuLTCZfbniy5Y9KiNZuJq44qB4Bzo7UthwRNTx6Riq9ZSsVsWXzZo4EsM4TRFZzkvXH3jjHK8zSu-da-Ubp=w1262-h1683-s-no?authuser=0" alt="" width="100%" /></th>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczOXcQJbS8iAOA_aEYi1sf5D795ETkyxu08KuBQSq5-GxATB5n051v8cTXEUTv3IO4Wq9Xd6SWfPkdui0aQX2_072WeAc_f0xRdFp4fSbkWUcG10sNO7-4MPYycDsDklL9QpxWrVmeT0heKefvPGWLty=w1262-h1683-s-no?authuser=0" alt="" width="100%" /></th>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczPufA709WlUGEXrPRGruE5e2gX71wCLf54PuOkQkxof4Rorrs9TBnt2mFk9NWJVHM6uF-qXTY0uJQTur4v7zwpqz5MXf6OTdYjEO1wfF-C7TLffpJ1AJloymfl_TBRk0ZPb1MDTErjc9XSeox4DjLgx=w1262-h1683-s-no?authuser=0" alt="" width="100%" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>모든 발표자들은 발표 요약이 담긴 책</b></td>
      <td style="text-align: center"><b>내 발표 요약문</b></td>
      <td style="text-align: center"><b>참석자들의 저작물</b></td>
    </tr>
  </tbody>
</table>

<h2 id="마무리">마무리</h2>
<p>잊고 있던 구석의 감각이 근질근질해지는 일주일이었다.
학생때부터 논문으로 만나던 선배 연구자들 그리고 오랜만에 만난 또래 친구들.
이해하고자 곱씹기를 반복했던 그 때 그 아이디어, 예제, 수식.
기억 저편에 있던 논문 제목.
대학생 시절 처음 홀로 떠난 여행지였던 독일.
내재된 많은 기억이 하나둘 떠오르며 귀국 길, 다시 흥겨운 먼 길을 재촉했다.
중세 판타지 영화 세트장 같은 세미나 장소도 묘한 분위기를 더했다.
그 분위기가 익숙할 유럽인들에게는 어떤 느낌일지 모르겠지만.
칼과 마법으로 용을 잡으러 떠나던 그 세계 사람들과, 과학을 연구하는 우리는 닮은 점이 많지 않은가.
여태껏 알지 못했던 세상의 비밀을 캐낸다는 것,
감당하기 어려운 거대한 것에 맞선다는 것,
같은 뜻을 품은 동료들과 힘을 합친다는 것.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczMsycGj9gfmyL3fN-Qs9yY-wZZGvUiFjf2lBLL5VFs22rwEps5J36-NhVw3GaM-joLo6vqobOC33Fe7VR-oHzWBR0zLjoUDQDbDpgBbP0h5Hnomrvz0rIe1XMGgTSnTMi5wNaXNW0I47nH3wU9bCDqJ=w1670-h1253-s-no?authuser=0" alt="" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>유구한 역사와 전통을 지닌 닥스툴 세미나의 단체사진</b></td>
    </tr>
  </tbody>
</table>]]></content><author><name>허기홍</name></author><category term="정적분석" /><category term="소프트웨어공학" /><category term="프로그래밍언어" /><category term="Dagstuhl Seminar" /><summary type="html"><![CDATA[들어가며 “시대정신”이라는 말이 있다. 특정한 시대에 큰 영향을 끼치는 중요한 가치를 일컫는다고 한다. 독일의 철학자 헤겔이 그 개념을 처음 고안한 이래 지금까지 이어져 매 선거철이면 우리 귀를 자주 간지럽힌다.]]></summary></entry><entry><title type="html">Optimuzz: 안전한 컴파일러를 위한 오번역 자동 탐지 기술</title><link href="http://prosys.kaist.ac.kr/optimuzz/" rel="alternate" type="text/html" title="Optimuzz: 안전한 컴파일러를 위한 오번역 자동 탐지 기술" /><published>2025-10-15T00:00:00+00:00</published><updated>2025-10-15T00:00:00+00:00</updated><id>http://prosys.kaist.ac.kr/optimuzz</id><content type="html" xml:base="http://prosys.kaist.ac.kr/optimuzz/"><![CDATA[]]></content><author><name>장봉준</name></author><category term="Research" /><summary type="html"><![CDATA[]]></summary></entry><entry><title type="html">몰입을 위한 약속</title><link href="http://prosys.kaist.ac.kr/engagement/" rel="alternate" type="text/html" title="몰입을 위한 약속" /><published>2025-09-30T00:00:00+00:00</published><updated>2025-09-30T00:00:00+00:00</updated><id>http://prosys.kaist.ac.kr/engagement</id><content type="html" xml:base="http://prosys.kaist.ac.kr/engagement/"><![CDATA[<p>이번 학기에 강의하는 과목의 <a href="https://github.com/prosyslab-classroom/cs424-program-reasoning"> 소개 페이지</a>에 아래와 같은 문구를 추가했다.</p>
<blockquote>
  <p>몰입을 위한 약속</p>

  <p>모두가 몰입하는 강의를 위해 모든 전자기기(노트북, 타블릿, 핸드폰)는 책상위에 올려놓지 않기로 합시다.
수업 중 전자기기를 사용하는 것이 끼치는 악영향은 이미 널리 알려져 있습니다.
본인의 주의를 산만하게 할 뿐만 아니라 주변 사람들이 수업에 집중하는데도 큰 방해가 됩니다.
모두가 각자 따로 모니터를 보기 보다는 함께 같은 곳을 보며 왁자지껄 난상토론하는 수업이 되길 바랍니다.
필요한 자료는 이 저장소에 있으니 원한다면 미리 인쇄를 해서 오세요.</p>
</blockquote>

<p>오랜 생각이었는데, 지난 방학 때 주위 사람들이 불을 붙여주었다.
학부 교수님들에게 이 생각과 필요성을 공유했더니 공감하는 분들이 많았다.
몇 분들은 이번 학기부터 같은 방식으로 수업을 운영하고 계신다고 한다.</p>

<p>우리 학부의 이러한 움직임이 소문이 났는지, 카이스트 신문에서 인터뷰 요청이 왔다.
이참에 학교 전체에 널리 화두를 던져 보면 좋겠다는 생각에 기쁘게 응했다.
해당 <a href="https://times.kaist.ac.kr/news/articleView.html?idxno=22470">기사</a>가 최근 실렸다.
기자님이 “기술은 항상 이로운가?” 라는 제목을 붙여주었는데, 아주 딱 맞는 제목이다.</p>

<p>지면 제한상 담지 못한 인터뷰 전문을 아래에 싣는다. 기사에는 생략된 인용 자료와 세세한 경험이 담겨있다.</p>

<hr />

<h3 id="먼저-간단한-소개를-부탁드립니다">먼저 간단한 소개를 부탁드립니다.</h3>

<p>안녕하세요. 전산학부에서 학생들을 가르치는 허기홍입니다. 이번 학기에는 <프로그램논증>이라는 과목을 가르치고 있습니다.</프로그램논증></p>

<h3 id="이번-학기부터-수업에서-전자기기-사용을-제한하기로-결정하신-가장-큰-이유는-무엇인가요">이번 학기부터 수업에서 전자기기 사용을 제한하기로 결정하신 가장 큰 이유는 무엇인가요?</h3>
<p>학생들에게 제대로 몰입하는 즐거움을 알려주고 싶었습니다.
더구나 혼자가 아니라 함께 말이지요.
모두가 한 곳을 바라보고 같은 생각에 골몰할 때 피어나는 에너지는 엄청납니다.
밴드의 연주가 합이 맞을 때, 축구장의 응원 소리가 공명할 때를 생각해보시면 될겁니다.
끓어오르는 무언가가 있지요. 수업에서도 전자기기로 분산되던 에너지를 한데 모아보고 싶어서 이런 결정을 했습니다.</p>

<p>이러한 생각을 한 지는 오래 되었습니다만 최근에 방아쇠가 당겨졌습니다.
저희 연구실 학생과 우리 학부 동료 교수님을 통해서 접한 한 <a href="https://www.sciencedirect.com/science/article/pii/S0360131512002254?via%3Dihub">연구 논문</a> 때문입니다 <sup id="fnref:1" role="doc-noteref"><a href="#fn:1" class="footnote" rel="footnote">1</a></sup>.
수업시간에 전자기기를 사용하는 것이 (당연히) 사용자의 주의를 산만하게 할 뿐만 아니라,
주변 학생들에게도 악영향을 미친다는 연구결과였습니다.
이리저리 움직이는 화면, 타자치는 소리가 주변 학생들에게 방해가 되는 것이죠. 마치 간접 흡연 같더라고요.
더 알아보고 싶어서 인터넷을 뒤지다가 펜실베니아 대학의 한 교수님이 쓰신 경험담도 우연히 접했습니다 <sup id="fnref:2" role="doc-noteref"><a href="#fn:2" class="footnote" rel="footnote">2</a></sup>.
단순히 전자기기 사용을 제한하는 것 만으로도 수업 분위기가 눈에 띄게 좋아졌다는 이야기였습니다.</p>

<p>결심이 굳어졌지요. 나만 알지 말고 널리 퍼트려야겠다 싶어서 주위 여러 교수님들께 공유했습니다.
공감하시는 여러 교수님들께서 이번 학기부터 같은 방식으로 수업을 운영하고 있는 것으로 알고 있습니다.</p>

<h3 id="이러한-결정을-내리기-전에-학생들의-전자기기-사용으로-인해-직접-목격하신-문제점들이-있으셨나요-구체적인-사례를-말씀해주실-수-있나요">이러한 결정을 내리기 전에 학생들의 전자기기 사용으로 인해 직접 목격하신 문제점들이 있으셨나요? 구체적인 사례를 말씀해주실 수 있나요?</h3>
<p>노트북 같은 전자기기를 켜놓고 수업을 듣는 학생들이 제대로 집중을 못하는 상황은 아주 흔하죠.
화면을 보고 타자를 치며 씽긋이 미소짓는 학생들은 수업을 하다보면 자주 보입니다.
제가 만든 강의 자료가 그렇게 재미있을리가 없다는 건 제가 잘 아는데 말입니다.
저는 수업시간에 학생들에게 질문을 많이 하는데요.
예를 들어 “여기서 x의 값은 무엇이라고 생각하세요?”, “이 상황에서 가능한 해결책은 뭐가 있을까요?” 같은 것들입니다.
대답이 어려울 때는 간혹 있지만 질문 자체는 쉬운 경우가 대부분입니다.
그런데 간혹 돌아오는 대답이 당황스러울 때가 많습니다.
“아, 제가 질문을 잘 이해 못했습니다.” 주로 전자기기를 들여다보는 학생들이 그런 경우가 많았지요.</p>

<h3 id="전자기기-사용을-제한한-후-수업-분위기나-학생들의-참여도에-변화를-느끼셨나요-특히-교수님께-질문하는-학생들이-더-많아졌는지-궁금합니다">전자기기 사용을 제한한 후 수업 분위기나 학생들의 참여도에 변화를 느끼셨나요? 특히, 교수님께 질문하는 학생들이 더 많아졌는지 궁금합니다.</h3>
<p>변화를 많이 느끼고 있습니다. 학생들의 눈빛이 날카롭습니다. 제가 하는 수업은 전통적인 강의 중심 수업입니다. 하지만 단순, 일방적인 강의가 되지 않게끔 학생들과 소통을 많이 하는 편인데요. 질문과 답변의 수준이 예년에 비해 확실히 높습니다. 몇 년동안 쓰던 강의자료에서 틀린 부분을 집어 내는 학생도 있었고요. 예년과 비슷한 수준으로 학생들과 소통을 해도, 학생들의 이해도가 높아서 수업 진도가 더 빨라졌습니다.</p>

<h3 id="보내주신-기사에서는-이-정책의-장점으로-필기가-학생들의-이해를-돕는다는-점을-꼽았습니다-필기를-하는-학생들이-많이-있는지-궁금합니다">보내주신 기사에서는 이 정책의 장점으로 필기가 학생들의 이해를 돕는다는 점을 꼽았습니다. 필기를 하는 학생들이 많이 있는지 궁금합니다.</h3>
<p>네. 많은 학생들이 필기를 하면서 수업을 듣고 있습니다.</p>

<h3 id="학생들의-반응은-어떤가요-반대-의견이나-불편함을-표현한-학생들이-있었나요-현재-학생들은-이-정책을-어떻게-받아들이고-있나요-적응-과정은-어떠했나요">학생들의 반응은 어떤가요? 반대 의견이나 불편함을 표현한 학생들이 있었나요? 현재 학생들은 이 정책을 어떻게 받아들이고 있나요? 적응 과정은 어떠했나요?</h3>
<p>반응이라고 할 게 없습니다.
불편함을 이야기하는 학생도 없었고요.
첫시간에 제가 취지를 설명했고 모두들 고맙게도 잘 따라주고 있습니다.
그도 그럴 것이 딱히 새로운 것은 없잖아요?
우리는 어릴 때부터 이렇게 칠판 보면서, 선생님 눈 보면서, 공책에 써가면서 공부했듯이.
그냥 하던대로 하는 거니까 불편한 것은 없지요.</p>

<h3 id="수업-중-전자기기-사용-제한을-어떤-방식으로-시행하고-계신가요">수업 중 전자기기 사용 제한을 어떤 방식으로 시행하고 계신가요?</h3>
<p>책상 위에는 전자기기를 올려 놓지 말기로 약속을 했습니다.</p>

<h3 id="이러한-방식으로-수업을-진행하기-위해서는-수업을-위해-추가적인-준비가-필요할-수도-있겠다는-생각이-듭니다-그러한-예시가-있나요-긴급상황이나-특별한-사유가-있는-경우에-대한-예외-규정이-있나요">이러한 방식으로 수업을 진행하기 위해서는 수업을 위해 추가적인 준비가 필요할 수도 있겠다는 생각이 듭니다. 그러한 예시가 있나요? 긴급상황이나 특별한 사유가 있는 경우에 대한 예외 규정이 있나요?</h3>
<p>추가 준비가 필요하지는 않습니다. 늘 하던대로 하는 것이지요.
제 강의 자료는 다 공개되어 있으니 원하는 학생은 인쇄를 해와도 되고요.
특별한 사유나 긴급 상황이라는게 어떤게 있을까요?
영화관이나 콘서트장을 생각해보면 됩니다.
그런 장소에서는 모두의 몰입을 위해 핸드폰을 켜지 않는 것이 예의라는 것을 우리 사회가 합의했죠.
그런데 공연 중에 긴급 상황이 벌어지면 어떻게 하나요?
주위 사람들에게 양해를 구하고 나가서 일을 처리하면 되지요.
이러한 것은 수업시간 전자기기 제한과 상관없이 늘 있는 일이라서 특별할 것은 없습니다.</p>

<h3 id="전자기기를-교육적으로-활용할-수-있는-순기능도-있을-것인데-이러한-부분을-포기하는-것에-대한-아쉬움은-없으신가요">전자기기를 교육적으로 활용할 수 있는 순기능도 있을 것인데, 이러한 부분을 포기하는 것에 대한 아쉬움은 없으신가요?</h3>
<p>전자기기를 활용해서 하는 수업이라면 당연히 순기능을 잘 활용해야지요.
하지만 제 수업은 강의식 수업이라서 전자기기가 도움이 되는 경우는 떠올리기가 어렵습니다.
저도 과거에 수업을 들을 때나 학회 발표를 들을 때 도움이 될까하여 노트북을 가지고 가본 적이 있는데요.
늘 도움이 안되는 것을 깨닫고는 그 뒤로 가져가지 않습니다.</p>

<p>인간의 뇌가 멀티태스킹에 약하다는 것은 많은 뇌과학자들이 지적하는 바입니다.
현대에 들어 아무리 전자기기에 익숙해진 우리라고 해도, 수백만년을 흘러온 물길이 하루 아침에 바뀌지는 않으니까요.</p>

<h3 id="이-정책을-다른-수업이나-다른-교수님들께도-권하고-싶으신가요-그-이유는-무엇인가요">이 정책을 다른 수업이나 다른 교수님들께도 권하고 싶으신가요? 그 이유는 무엇인가요?</h3>
<p>네. 종이를 뚫을 것 같은 학생들의 눈빛을 마주하는 수업이 매우 즐겁습니다.
맞닿는 시선을 가로막는 전자기기를 걷어내니 더 깊은 이해로 빠져듭니다. 모든 교수님들께 권합니다.</p>

<h3 id="앞으로도-이-정책을-지속적으로-유지하실-계획인가요">앞으로도 이 정책을 지속적으로 유지하실 계획인가요?</h3>
<p>네.</p>

<h3 id="마지막으로-교수님의-정책에-대해-학생들에게-전하고-싶은-메시지가-있으신가요">마지막으로 교수님의 정책에 대해 학생들에게 전하고 싶은 메시지가 있으신가요?</h3>
<p>정책이라고까지 말하기에는 너무 거창합니다.
대신 제 수업에서는 “몰입을 위한 약속”이라고 부릅니다.
전자기기 바깥, 현실의 무언가에 한 번 몰입해 보시죠.
그리고 주위에 비슷한 몰입을 하는 사람들과 공명해 보시죠.
무언가 느껴질겁니다. 전기줄과 전자기파를 통해서는 전달되지 않는 무언가가요.</p>
<div class="footnotes" role="doc-endnotes">
  <ol>
    <li id="fn:1" role="doc-endnote">
      <p>Sana et al., Laptop multitasking hinders classroom learning for both users and nearby peers, Computers &amp; Education, 2013. <a href="#fnref:1" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
    <li id="fn:2" role="doc-endnote">
      <p><a href="https://www.nytimes.com/2025/08/21/opinion/mobile-phones-college-classrooms.html">https://www.nytimes.com/2025/08/21/opinion/mobile-phones-college-classrooms.html</a> <a href="#fnref:2" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
  </ol>
</div>]]></content><author><name>허기홍</name></author><category term="수업" /><summary type="html"><![CDATA[이번 학기에 강의하는 과목의 소개 페이지에 아래와 같은 문구를 추가했다. 몰입을 위한 약속 모두가 몰입하는 강의를 위해 모든 전자기기(노트북, 타블릿, 핸드폰)는 책상위에 올려놓지 않기로 합시다. 수업 중 전자기기를 사용하는 것이 끼치는 악영향은 이미 널리 알려져 있습니다. 본인의 주의를 산만하게 할 뿐만 아니라 주변 사람들이 수업에 집중하는데도 큰 방해가 됩니다. 모두가 각자 따로 모니터를 보기 보다는 함께 같은 곳을 보며 왁자지껄 난상토론하는 수업이 되길 바랍니다. 필요한 자료는 이 저장소에 있으니 원한다면 미리 인쇄를 해서 오세요.]]></summary></entry><entry><title type="html">두 번 가서 배로 좋은 PLDI와 FSE 여행기</title><link href="http://prosys.kaist.ac.kr/sujin-trip-pldifse25/" rel="alternate" type="text/html" title="두 번 가서 배로 좋은 PLDI와 FSE 여행기" /><published>2025-07-28T00:00:00+00:00</published><updated>2025-07-28T00:00:00+00:00</updated><id>http://prosys.kaist.ac.kr/sujin-trip-pldifse25</id><content type="html" xml:base="http://prosys.kaist.ac.kr/sujin-trip-pldifse25/"><![CDATA[<h1 id="들어가며">들어가며</h1>
<p>PL 분야의 큰 학회인 PLDI가 6월 16일부터 20일까지, SE 분야의 큰 학회인 FSE가 6월 23일부터 25일까지 각각 서울과 노르웨이 Trondheim 에서 열렸다.</p>

<p>같은 연구실의 봉준님의 논문이 PLDI 2025에 채택되어 기쁜 마음으로 응원가는 겸, PLDI SRC 2025에 제출했던 내 논문도 채택되어 포스터 발표를 하기 위해 PLDI에 참석하였다.
그리고 연희님, 그리고 지금은 군대를 가신 희원님과 열심히 작성했던 논문이 FSE 2025에 채택되어 학회에 참석하게 되었다.</p>

<p><br /></p>

<h1 id="616-mon">6/16 (Mon.)</h1>
<p>PLDI의 주요 발표들은 수요일부터 이루어졌지만, 교수님의 전폭적인 지원으로 워크샵부터 참여할 수 있는 기회가 주어졌다.
아침 5시 반부터 이동하며 약간 피곤함을 느꼈지만, 최신 프로그램 분석 분야의 논문 발표를 들으면서 학회에 왔다는 것을 실감하기 시작했다.</p>

<p>그리고 맛있는 점심 도시락은 잠을 확실하게 깨워주었다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczM4uZ2boNfNROOOtOCD7nUhyPUxtq69rvQVCu1N2EpXTV5RIT2N52-wd3_zfP-59hRZD2Q62_Frkad4Nsk_F2C_7eTd507Y0oFBpjnB_-BnpMW0KehO19_pfBGczg3-xD5pM_sTznCp_jPHD_DuxYDK=w1230-h923-s-no-gm?authuser=0" alt="" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>비싸고 맛있는 도시락</b></td>
    </tr>
  </tbody>
</table>

<p><br /></p>

<p>오후 2시부터는 PLMW라는 학생 연구자들을 위한 친목(?) 활동과 교수님들의 다양한 조언을 들을 수 있는 워크샵에 참석하였다.
친목 활동 중 하나로는 관심 분야의 사람들끼리 조를 짜고 대화하는 활동이 있었는데, 프로그램 합성 분야는 학생 연구자들의 관심이 많이 줄은 것인지 조가 따로 만들어지지 않았다.
그래서 방황하다 타입 시스템 분야에 가서 사람들과 이야기를 나누었다.
간단한 자기소개를 하면서 이야기를 시작했는데, 내가 명찰에 대학원생이라고만 적어두었더니 석사인지 박사인지를 다들 궁금해했다.
그래서 다음부턴 학위 과정을 명확히 써야겠다는 생각이 들었다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczMIlJKnBtl_IIHB_7klN0XKnLP_WveyMaX99UuSCJVa7NeIU7TgswrNKiLmnrh_Cy43soVoGMpTtP8ZUJJZlZydAwPItFijCRw7HEyeHasxEsFTEf15YwU5SzwAUyFsmfamkQ6XSLquKYV-q-luqTZa=w693-h923-s-no-gm?authuser=0" alt="" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>다음부턴 박사과정이라고 적자!</b></td>
    </tr>
  </tbody>
</table>

<p><br /></p>

<p>다들 왜 이 조로 왔는지를 이야기 했고, 나는 다른 연구를 하는데 배우고 싶어서 왔다고 이야기 했더니 내 연구에 대해 더 궁금해하여 설명하게 되었다.
그리고 결국 타입 시스템 연구에 대해서는 많이 듣지 못한 채 세션 시간이 끝나 나오게 되었다.
그래도 수요일에 포스터 발표를 한다고 홍보도 하였고, 그때 자리에 함께 있었던 한분이 실제로 포스터를 구경 오시기도 하였다. :&gt;</p>

<p><br /></p>

<h1 id="617-tue">6/17 (Tue.)</h1>
<p>교수님들의 강연으로 PLMW 세션이 가득 채워져있었고, 하루 종일 발표를 들었다.
교수님들은 대학원생 때부터 현재까지 학계에 있으면서 겪은 다양한 경험들을 공유해주셨고, 필드에서 쓰일 수 있는 연구를 하는 게 중요하다는 것을 거듭 강조하셨다.
제안서를 쓸 때도 중요하지만, 회사에 기술을 넘기는 것까지 많은 교수님들이 생각하고 계신 것 같았다.
“지치지 않고 문제를 찾는 것, 그리고 그 문제를 잘 푸는 것” 말은 너무 쉽지만 실행하기는 쉽지 않은게 인생과 참 비슷하다는 생각이 들었다.
어쩌면 연구는 인생을 더 잘 살아가는 방법을 찾는 과정을 배우는 것인지도 모르겠다는 생각도 들었다.</p>

<p>저녁에는 리셉션이 있었고, 비어있는 테이블이 있어 신나하며 자리를 잡았더니 많은(?) 사람들이 인사를 하며 대화를 하러 왔었다.
한번은 교수님과 같이 프로그램 분석 분야 연구의 미래에 대해 이야기를 하고 있었는데, Yizhou Zhang 교수님이 다가오셨다.
Zhang 교수님은 당일 PLMW 에서 발표를 하셨어서 기억하고 있었고, 발표를 들었다는 것을 어필하며 내 연구에 대해서도 간단하게 설명드릴 수 있었다.
간단한 연구 설명만을 준비했어서 조금만 더 궁금해해도 설명하기가 조금 어려웠는데, 여러 번 반복하다보니 더 나중에 만난 사람들에게는 더 잘 설명할 수 있게 된 것 같았다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczP750uzDEWPMe9l-fXnbDOMpcpaoA9-wytFMh9N_6Y41xOroMca-fxDmKmqjrPqotXoGYV5kaIdYVTL6ro0o5x7eWxta9muDGGetHHZrnzGz9YoeY_Ey1VAW5_9fjQG_rblBAvIyUT48RlB6VbGGjGf=w1230-h923-s-no-gm?authuser=0" alt="" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>일정 끝난 후 학회 인증 사진</b></td>
    </tr>
  </tbody>
</table>

<p><br /><br /></p>

<h1 id="618-wed">6/18 (Wed.)</h1>
<p>류석영 교수님의 멋진 기조 연설을 시작으로 PLDI의 주요 일정이 시작되었다.
첫 날에는 이 넓은 공간이 가득 채워질 수 있다고? 싶었던 호텔의 그랜드 볼룸이 가득 차고, 의자가 부족해 바닥에 앉아서 연설을 듣는 사람들도 있었다.
이런 멋진 공간에 함께 있을 수 있음에 뭔가 벅차오르는 감정이 들었다.</p>

<p>이 날은 PLDI에서 드물게 볼 수 있었던 프로그램 합성 세션이 있는 날이었다.
PL 분야니까 합성 연구가 좀 많지 않을까? 라고 기대했던 학회 전과 다르게, 합성 연구 논문이 많지 않아서 조금 아쉬웠다.</p>

<p>합성 연구 중 가장 기억에 남는 연구는 2편이 있었다.
한 편은 SyGus 에서 성능을 끌어올리기 위한 연구<sup><a href="#synthesis1">1</a></sup>였는데, 테스트 케이스를 잘 가르는 분기문을 찾고자 하는 연구였다.
Duet<sup><a href="#duet">2</a></sup>이라는 굉장히 잘하는 도구가 있어서 이보다 더 잘할 수 있나? 하는 궁금증이 있었는데, 더 잘할 수 있는 방법이 있다는 것이 놀라웠다.
UnitCon도 다른 사람들이 보기에 이렇게 보이려나 싶긴 했다.</p>

<p>다른 한 편은 반복문 실행 횟수를 정확하게 계산하는 연구<sup><a href="#synthesis2">3</a></sup>였다.
반복문이 종료했을 때 값이 0이 되는 카운터 변수를 두고, 초기 카운터 변수를 계산하는 함수를 합성하는 것을 목표로 하는 연구였다.
실행 횟수의 상한이나 하한 중 하나만을 굉장히 안전하게 계산하던 다른 연구들과 다르게 정확한 실행 횟수를 찾으려고 한다는 점이 더 발전한 연구라는 생각이 들었다.
그리고 특히 카운터 변수를 두어 종료 시점에 항상 0이 되도록 한다는 간단한 조건을 만족하는 함수를 찾는다는 아이디어가 좋다는 생각이 들었다.</p>

<p>저녁 시간에는 PLDI SRC 포스터 발표 시간이 있었다.
포스터를 설치하고 시작 시간이 되자마자 굉장히 많은 사람들이 내 포스터에 관심을 가져주었다.
심사위원 분들이 4분 정도 왔다 가셨고, 많은 학생들과 교수님들이 내 연구에 관심을 가지고 공감해주어 기쁜 시간을 보낼 수 있었다.
설명을 하면서 그 순간에도 연습이 되었는지, 시간이 갈수록 말이 조금 더 쉬워지는 느낌이 들었다.
부족한 영어에도 끝까지 포스터를 이해하려고 노력해준 학생들과 교수님들께 감사드린다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczO02DNwkyS761CaMB6fWc2d7f2LUu0ytTn1wDdqOD5973Kj7T0ZHqTrj_0ONbEMKqlIEcJ6wocJ8-95lXrKB_RSZG9C2seiPWL0oZe5TMq-Po_Oyr0WJQ_6u4lpMiE82FyixxcMFlrHXT03Ool0P3kZYg=w693-h923-s-no-gm?authuser=0" alt="" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>유닛콘 스티커를 주고 싶어 파우치를 꼭 손에 쥔 나</b></td>
    </tr>
  </tbody>
</table>

<p><br /></p>

<p>참고로 다른 학회에서도 주는지는 모르겠지만, PLDI SRC는 인증서도 준다.
멀리서 보면 상같기도 해서 기분이 좋다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczMnZRuP9QCeH1BWvAysZXXTykpoEBta40_E_NTX9KMghTA-TZRw2XEIxaO1LUurtjH6gL2S8Cw9kjyeMJxg52D7VVq-AY9bdEJToy_FRrA-9gOKhxdsog51B78XdCcHobgDH3M0G9PennwyZmlTAiUb=w713-h923-s-no-gm?authuser=0" alt="" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>SRC 참가자 인증서</b></td>
    </tr>
  </tbody>
</table>

<p><br /><br /></p>

<h1 id="619-thu">6/19 (Thu.)</h1>
<p>학회를 마무리 하며 비즈니스 미팅이 이루어졌었다.
홈 그라운드에서 열린만큼 많은 한국인들이 학회에 참여했었고, 허충길 교수님께서 연산자 오버로딩같은 개념으로 한글을 설명할 때는 다 같이 웃기도 했다.</p>

<p>저녁에는 다양한 상의 수상자들을 축하하며 코스 요리가 제공되었는데, 정말 너무 맛있었다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczN0nGwANTigUAWRqof8FtKTfV1921_gIHfwF_BvZQtMGDT-yCy3kdzYUIJMdtC9O_G3pyoVTonNCNYGc2B54ISLerrWXEit5HIK4i43NDuFpzG6o3TS7H0jdxTKCfqAmkIo3pjyrCADpjTSxWMqS_Ub=w693-h923-s-no-gm?authuser=0" alt="" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>보기도 좋은 맛있는 고기</b></td>
    </tr>
  </tbody>
</table>

<p><br /><br /></p>

<h1 id="620-fri">6/20 (Fri.)</h1>
<p>PLDI 학회의 마지막 날이었다.
오전 키노트에서는 Işıl Dillig 교수님이 뉴로 심볼릭 연구에 대한 이야기를 해주셨다.
각 목표에 맞는 DSL (Domain-Specific Language) 를 정의하여 프로그램을 합성하는데, 구체적인 내용을 LLM으로부터 알아오는 연구들이었다.
예를 들어 이미지 수정을 목표로 하는 연구에서는 이미지 수정에 맞게 객체 찾기, 블러처리 하기 등의 동작을 정의한 DSL이 있고, 각 객체를 LLM으로부터 알아오도록 구성이 되어 있었다.
여전히 LLM이 이상한 답을 주면 올바른 프로그램을 못 만든다는 한계가 존재하긴 했지만, LLM을 활용한 연구의 성공적인 사례가 아닐까 생각이 들었다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczPwQsBX8893ej1-SVkGLPbbAzUPTAYfBpwiyoITFh16CvLqF4lq4eygUwVKVen-llvg5APpzzY2UCv7rq9IuAoPeG9ve_isYj_4vrPcJZjsUU0AwSvMEal4EdpB1oRe_cE0jCebhkOYqECP2ktpn9D4=w691-h923-s-no-gm?authuser=0" alt="" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>이미지 수정에 사용된 예시</b></td>
    </tr>
  </tbody>
</table>

<p><br /></p>

<p>봉준님은 학회의 마지막 날 <a href="https://prosys.kaist.ac.kr/optimuzz/">Optimuzz</a> 발표를 하셨다.
긴장한 티가 하나도 나지 않으면서 발표를 엄청 잘 하셨는데, 그 모습이 너무 대단하게 느껴졌다.</p>

<p>점심식사 후 월요일에 PLMW에서 만났던 애플에 다니시는 분을 만나 이야기를 나눌 수 있었다.
애플에서는 C에서 Swift로 넘어가려는 작업이 많이 진행되고 있다는 이야기를 들었다.
그리고 실제 기업 입장에서는 오버헤드를 절대 무시할 수 없어 비용을 최소한으로 줄이면서 근본적인 문제를 해결하는 방안에 대해 계속해서 연구하고 고민하고 있다는 이야기도 들었다.
연구자가 보는 작은 오버헤드와 기업 입장에서 보는 작은 오버헤드에는 차이가 있을 수도 있겠다는 생각이 들었는데, 자리를 뜨고 든 생각이어서 질문하지는 못했다.
명함도 받았는데, 근래 본 명함 중 가장 예쁜 명함이라는 생각이 들었다 :&gt;</p>

<p><br /></p>

<h1 id="pldi가-끝나고-fse-시작-전">PLDI가 끝나고 FSE 시작 전</h1>
<p>노르웨이로 가기 위해 재정비 시간이 필요했다.
그래서 금요일 오후에 학회가 끝난 후 대전으로 내려와 짐을 새로 싸고, 토요일 오후에 비행기를 타러 인천으로 갔다.
노르웨이를 가기 전 무엇을 먹어야 가장 좋을까 고민하다가 떡볶이를 먹었는데, 조금 아쉬웠던 것 같다. 돌아오면 다시 떡볶이를 먹기로 하고 비행기에 몸을 실었다.</p>

<p><br /></p>

<h1 id="622-sun">6/22 (Sun.)</h1>
<p>노르웨이에 도착한 이 날은 학회 기간 동안 유일하게 맑은 하루였다.
기온은 20도 안팍으로 한국과 다르게 시원했고, 바닷가 근처여서 그런지 바람은 더 시원했다.
체크인 전까지 시간이 남아 관광을 가기로 했다.
근처에 Munkholmen 이라는 감옥, 수도원, 요새로 그 용도가 계속 변화한 역사가 있는 섬을 방문하였다.
페리를 타고 이동할 수 있었는데, 운행 시간이 정해져있어서 기다리면서 아이스크림도 먹고 마지막 바이킹 동상도 구경했다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczNIoeR5JvUoRAJSlYy0z4kQhjQS7hK2k-pbogxgFfTRLpSwCFplxYSf0EtqmRZtbtklrTNFVuEUlUoB2jO6wtITqKfK2E7kh9hwLhf-yYNIveI4j5mSVycH161BoBVdtV3xckbjvaZKdtPQxUWC0fj4=w693-h923-s-no-gm?authuser=0" alt="" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>마지막 바이킹</b></td>
    </tr>
  </tbody>
</table>

<p><br /></p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczNm2XDO_2IrTRaLt9xrssh1kmVTr6FoUgjlA0VCYL0-WUF02buo5YOVJJAAIcJ8Y4QF12DazGUT7rUjacqQEOzmL1JDHk3ufv25AYe8_udJAp81Um6OBkj4_-9oBrZf-5oSVGbD0dDfQqr27dcemnM0=w693-h923-s-no-gm?authuser=0" alt="" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>춥지만 아이스크림은 못 참아!</b></td>
    </tr>
  </tbody>
</table>

<p><br /></p>

<p>섬으로 이동해서는 섬의 역사에 대한 설명을 간단하게 듣고 각자 돌아다니는 시간을 가졌다.
어떻게 섬 하나가 감옥, 수도원, 요새로 쓰일 수 있지 하는 의문이 들었는데, 직접 둘러보고 나서는 쓰일만한가? 라는 생각이 자동으로 들게 되었다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczPn4-9Rlh0zbz5OoL_a-0Ye1Z6fpB2TMMH9Mdo4f1zCdkrrwQ7FFsF6iIj_akFLMuVG3rr54-d_ms-juDU-7pa4Rzv0NFhqYGsFIu3PEmS12U-GYph2UHzHIb5alhEjJPSfzYvyIxQ8-n6kjZDv6TD7=w693-h923-s-no-gm?authuser=0" alt="" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>공기 좋고 맑은 Munkholmen에서</b></td>
    </tr>
  </tbody>
</table>

<p><br /></p>

<h1 id="623-mon">6/23 (Mon.)</h1>
<p>학회의 첫 날이 밝았다.
<a href="https://prosys.kaist.ac.kr/unitcon/">UnitCon</a> 발표가 첫 날에 있어 너무 긴장한 상태로 하루를 보냈다.
발표 전 청심환도 챙겨먹고 발표장에 갔는데, 예상치 못한 일이 너무 많이 일어나서 당황스러웠다.
발표자료를 넘길 리모컨이 따로 주어지지 않았고, 노트북이 있는 단상은 나에게 너무 높았다.
발표 전 공용 노트북이 잠겨 발표 시간에 촉박함을 느끼기도 했다.
이래저래 당황스러움을 느꼈던 나는 그게 발표에서 다 드러나게 되었다.
아쉬움이 많이 남았었기 때문에 빠른 재도전을 해야겠다는 생각이 들었다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczM-iPIBsADRm1S9Qz8ONsdITH5w9ZrpLHDJuDU6uJzWMhWIQjhtyi_GHsu0xCXTAXov8MfaqLdj9vb4hie8y06NzxsMnl3z_pevhxfuRmkdn_VonSHeZfHsVce4cdwPj2cIdPLCJ3mvJ7z5OhupAzWG2Q=w693-h923-s-no-gm?authuser=0" alt="" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>팔이 걸쳐진 이유는 너무 높아서 입니다.</b></td>
    </tr>
  </tbody>
</table>

<p><br /></p>

<p>발표가 끝난 후에는 소문으로만 들었던 따뜻한(?) SE 학회답게 관광을 다 같이 갔다.
트론하임에는 니다로스 대성당이 있는데, 이곳에서 오르간 연주를 보여준다고 하여 성당으로 갔다.
중세 느낌이 물씬 느껴지는 오래된 건물이었다.
웅장했고, 정교했다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczNX5BrWhY7WdPVf2zvNtwjZn7prNDaKBuGTIs4rITnuPmqBB59pKO3MzTq3TqXG2cnVmuaI_hrAgJdhTT6VHhnMzK8h1WP5pW9rXPe4yW6osrtiM9EJ0BaCQOs0dPlQXXGtj77n4_0XeY0zn3uOwcfm=w1230-h923-s-no-gm?authuser=0" alt="" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>니다로스 대성당</b></td>
    </tr>
  </tbody>
</table>

<p><br /></p>

<p>그리고 어쩌다보니 백야(?) 기간에 북유럽에 방문하게 되어 하루종일 어둡지 않은 하늘을 볼 수 있었다.
밤 11시에 해가 지고 새벽 3시에 해가 뜬다고 했는데, 백야가 맞는지 아닌지는 정확히 모르겠다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczO2yBrTppgvER-W3qchfjCodI9mBMvOGANSB-J-nsklLoxxq_KPFEtR2KlFdR9sAQ6-RFwHe7kizVZelisdr30FNMNpncPDi6lECcwwENh_CaNiZETXtI4NR3s8Kjvo3ohjOJKB-Qjah67vxUeCDehN=w693-h923-s-no-gm?authuser=0" alt="" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>이 하늘이 밤 12시라니!</b></td>
    </tr>
  </tbody>
</table>

<p><br /><br /></p>

<h1 id="624-tue">6/24 (Tue.)</h1>
<p>발표를 끝냈기 때문에 이 날부터는 편한 마음으로 발표를 열심히 들으러 다닐 수 있었다.
분야가 굉장히 다양했고, 리서치 트랙의 논문 뿐 아니라 저널, 인더스트리 논문들이 분야별로 묶여 발표가 진행되어서 발표 시간이 각양각색이었다.
그래서 그런지 교수님들의 발표도 제법 많이 볼 수 있었다.</p>

<p>테스팅은 확실히 인기 있는 분야인지 세션이 4번이나 열렸다.
이 날은 3번째 테스팅 세션이 있었는데, COBOL 테스팅을 자바로 옮기는 연구<sup><a href="#testing1">4</a></sup>와 여러 종류의 테스트 오라클을 한번에 보여줌으로써 디버깅을 용이하게 하는 연구<sup><a href="#testing2">5</a></sup> 등에 대한 발표를 들을 수 있었다.
같은 테스팅 분야에 묶여있었지만, 각 발표가 모두 특색있었다.</p>

<p>저녁에는 뱅큇이 있었고, 각종 상의 수상을 축하하며 코스 요리가 제공되었다.
UnitCon은 우수 논문상을 받아서 많은 사람들의 축하를 받을 수 있었다.
어떤 논문이 우수 논문상을 받는지 기준도 궁금했었는데, 리뷰 점수의 평균이 3.67점 이상인 논문들 중에서 골라진다고 하는 것 같았다.
이때 리비전 후 점수가 변경되었으면 변경된 점수로 계산한다고 했다.
논문을 열심히 쓰고 리비전도 열심히 했더니 좋은 결과가 있었던 것 같다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczNcK8s8X1ZYzAxLbjcFkNu3tKuaFMuBSkj8AIwd_c5cHg0jCiZkcejyNDRWh5m1WYfIQQ7vVggnuxeK30OcaMvKGNJSIeJRMf0QOBWIJsbe4TvILMIN9vlkTdbrNrGVcOOaVm3dGVjIdlU--LYU__OKUw=w1230-h923-s-no-gm?authuser=0" alt="" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>3팀씩 사진을 찍었다.</b></td>
    </tr>
  </tbody>
</table>

<p><br /><br /></p>

<h1 id="625-wed">6/25 (Wed.)</h1>
<p>FSE 일정이 끝나면서 ISSTA가 시작되는 날이었다.
새로 등록하는 사람들이 많아지면서 다시 학회장이 북적북적해졌다.
이날도 어김없이 테스팅 세션을 찾아 다녔다.
연산 리소스 관련된 flaky test에 대한 조사 논문<sup><a href="#testing3">6</a></sup>에 대한 발표, 가짜 객체 (mock)을 사용하는 테스트의 특성을 조사한 논문<sup><a href="#testing4">7</a></sup>에 대한 발표를 들었다.
가장 기억에 남는 것은 0.5CPU와 2GiB RAM을 사용하면 연산 리소스의 flaky test를 피할 수 있다는 것이었다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczP6F1sbPQf2ypRWhFG33CFJ3WIahFgP82QVfLAMN4cEz8xHMgmG7RJuZM3CDmMMST7o9nnOxd_-9h6-Rl5PcuvsIw1EcusG6haterrPCWNVfXdlmfntbn8aczkL8WjwNr5qZeG3piDFU-WzhetK1wBI=w1230-h923-s-no-gm?authuser=0" alt="" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>연산 리소스의 flaky test를 피하기 위해 참고하자</b></td>
    </tr>
  </tbody>
</table>

<p><br /></p>

<p>점심은 파스타와 샐러드 등을 자유롭게 가져가 먹을 수 있게 제공되고 있었다.
그래서 자리에 앉아 음식을 먹는데 충북대의 기은님과 Stuttgart 대학의 Beatriz Souza가 와서 같이 대화를 하며 밥을 먹었다.
Beatriz Souza가 링크드인을 보여주었는데 팔로워가 엄청 많아서 신기해했더니 웃긴 사람들이라며 엄청 웃었다.
FSE에서도 꼭 스티커를 나눠줘야지 라는 생각으로 PLDI에 챙겨갔던 파우치를 들고 갔는데 드디어 한 개를 나눠줄 수 있었다.
나름 성공적(?)인 교류였다는 생각이 들었다.</p>

<p>FSE 학회 일정이 끝나고는 근처에서 하는 플리마켓 행사를 구경가기 위해 나왔다.
버거 패티 냄새가 유혹했지만, 잘 참고 구경을 다녔다.
밴드 공연도 구경하고, 다양한 상품과 음식들도 구경했다.
그 중 가장 기억에 남는 것은 많은 종류의 치즈가 진열된 곳이었는데, 치즈 종류가 너무 다양해서 신기했다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczO-F3C8PDGZm4glFo9t9ohv6bqtWimsl6qzlET9gfxQ9vb8kQ892tkLmAOgXOue7Ii4mUxrbXtMP3xsWAJY94AxW3XcwbGY9hbq9pyjVv-Nw_8eSA84rRcemansFd7H4PzLorjIJt3UlVpcp5sQq3OJ=w693-h923-s-no-gm?authuser=0" alt="" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>녹색 치즈가 신기합니다.</b></td>
    </tr>
  </tbody>
</table>

<p><br /></p>

<p>새로운 도시를 가니, 익숙했던 서울과 다르게 낯선 느낌이 여행에 재미를 불어넣어준 것 같았다.</p>

<p><br /></p>

<h1 id="627-thu">6/27 (Thu.)</h1>
<p>한국으로 돌아가는 날이었다.
오전에는 전날 3배 정도 비싸게 주고 구매한 노르웨이 바세린을 환불하러 다녀왔다.
한국에서도 환불을 잘 하지 않는 편인데, 왠지 지금이 아니면 절대 환불을 할 수 없다는 생각 때문인지 용기가 나서 무사히 환불을 잘 하고 나왔다.
다들 가격 비교를 잘 하고 사자!</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczNATzqG-O1O2ZSx0a1focHPiCAqbcJOOdkyOfoMYRt1milaM9dS19vF86-JsrvQRxkcLmloYgslvga_EotHbJtE8LlMt8G7uiUjH5OHtaxm_S8LMeqyf9QBBRD3k7nBdB_DuOHMOurAqyvCKb_AN4MP=w693-h923-s-no-gm?authuser=0" alt="" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>약국에선 69 크로네, 여기선 24 크로네!</b></td>
    </tr>
  </tbody>
</table>

<p>10시 반에 체크아웃을 하고 교수님, 연희님과는 각자의 시간을 보내다가 점심에 학회장에서 다시 만나기로 하고 흩어졌다.
나는 카페에서 커피를 마시며 조금 쉬기로 하였다.
코르타도 라는 스페인식 카페라떼를 시켜 마셨다.
한국에서는 무조건 아이스 아메리카노를 시켜먹는 나로썬 새로운 도전이었다.
씁쓸하고 부드러운 게 꽤 먹을만했다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczPbF9XumQrN3NfUuT7Kuiu2Ue2lUUWV1KFvC1gCbLIEtIOC-69QYVYgVNvUjL8jS9MyNJn0qoIMiTnNmk0BdhsB21FMBcpySk3yTRrXqv3s6MCMjYmF8vBGCxkCMUmElR9LUA4mOMF5NMt3v68RyR5-=w693-h923-s-no-gm?authuser=0" alt="" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><b>나름 아트도 있다.</b></td>
    </tr>
  </tbody>
</table>

<p><br /><br /></p>

<h1 id="마치며">마치며</h1>
<p>교수님의 전폭적인 지원과 좋은 기회로 큰 국제 학회 두 곳에 참석할 수 있었다.
다양한 연구자들을 만나고, 연구에 대한 열정을 느낄 수 있어서 배운 점이 많았던 일정이었다는 생각이 들었다.
좋은 논문 발표를 해주신 봉준님, 함께 PLDI부터 FSE까지 긴 여정을 함께 해주신 연희님, 마지막으로 출장 준비를 도와주신 김은주 선생님께 감사드린다.
2년 전 내 논문을 가지고 학회에 방문하고 싶다는 꿈을 이루게 되어 기쁘다.
지금 연구도 잘 마무리하여 내 논문을 가지고 다시 학회에 방문하고 싶다.
<br /><br /></p>

<hr />

<h3 id="참조">참조</h3>
<p>[<a name="synthesis1">1</a>] Yuantian Ding and Xiaokang Qiu, “A Concurrent Approach to String Transformation Synthesis”, PLDI (2025) <br />
[<a name="duet">2</a>] Woosuk Lee, “Combining the Top-down Propagation and Bottom-up Enumeration for Inductive Program Synthesis”, POPL (2021) <br />
[<a name="synthesis2">3</a>] Daniel Riley and Grigory Fedyukovich, “Exact Loop Bound Analysis”, PLDI (2025) <br />
[<a name="testing1">4</a>] Sandeep Hans et al., “Automated Testing of COBOL to Java Transformation”, FSE Industry (2025) <br />
[<a name="testing2">5</a>] Matthew C. Davis et al., “TerzoN: Human-in-the-Loop Software Testing with a Composite Oracle”, FSE (2025) <br />
[<a name="testing3">6</a>] Denini Silva et al., “The Effects of Computational Resources on Flaky Tests”, TSE (2025) <br />
[<a name="testing4">7</a>] Hengcheng Zhu et al., “Understanding and Characterizing Mock Assertions in Unit Tests”, FSE (2025)</p>]]></content><author><name>장수진</name></author><category term="Trip" /><category term="PLDI2025" /><category term="FSE2025" /><summary type="html"><![CDATA[들어가며 PL 분야의 큰 학회인 PLDI가 6월 16일부터 20일까지, SE 분야의 큰 학회인 FSE가 6월 23일부터 25일까지 각각 서울과 노르웨이 Trondheim 에서 열렸다.]]></summary></entry><entry><title type="html">두 번 생각하는 두 학회 여행기</title><link href="http://prosys.kaist.ac.kr/yeonhee-pldifse25/" rel="alternate" type="text/html" title="두 번 생각하는 두 학회 여행기" /><published>2025-07-25T00:00:00+00:00</published><updated>2025-07-25T00:00:00+00:00</updated><id>http://prosys.kaist.ac.kr/yeonhee-pldifse25</id><content type="html" xml:base="http://prosys.kaist.ac.kr/yeonhee-pldifse25/"><![CDATA[<p>좋은 기회로 2주 연속으로 큰 국제 학회에 참석하게 되었다. 서울에서 열린 PLDI 와 노르웨이 트론하임에서 열린 FSE 에 연달아 참석하면서 밀도 있게 두 분야의 연구를 접할 수 있었다.</p>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczPRkw5zxVhSJPJyAFcLfFwPT6z1byzv67CmRdHGWRbdTRUezoOOq9wukMjtJmOSRKY4zdjc046FdvYtvIIHb9ZdPjZklGUbbDib5g9cGO08n2jOsIQhk9Q4pXnqjdVNAd1iG0RcnoRx1nwIg2ssHn6x=w2486-h1864-s-no-gm?authuser=0" alt="" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><strong>FSE에서 UnitCon 우수 논문상 수상 후 으쓱한 시간</strong></td>
    </tr>
  </tbody>
</table>

<h2 id="pldi-와-fse-에서-언어-모델을-이용하는-방법">PLDI 와 FSE 에서 언어 모델을 이용하는 방법</h2>

<p>두 학회는 각각 PL 과 SE 분야에서 손꼽히는 큰 국제적인 학회다.
두 분야 모두 프로그램 그 자체를 연구 대상으로 본다. 그래서 언어 모델을 사용하는 방식도 큰 틀에서는 비슷한데, 입출력에 프로그램이 사용된다는 점이다.
우선 요구사항이나 실행 예시 등 프로그램과 관련된 정보를 해석하는 데 언어 모델을 사용한다.
예를 들어 PLDI 마지막 날 키노트였던 Işıl Dillig의 발표에서 다양한 도메인에서의 프로그램 합성 기술이 소개되었는데, 비디오로 작성된 입출력 예시와 같이 프로그래밍 언어 외적인 입력을 다루는 데 언어 모델을 사용했다.
FSE에서 발표된 Hossain 등<sup id="fnref:1" role="doc-noteref"><a href="#fn:1" class="footnote" rel="footnote">1</a></sup>의 연구는 자연어로 작성된 개발 문서를 읽는 데 언어 모델을 사용하고, Wang 등<sup id="fnref:2" role="doc-noteref"><a href="#fn:2" class="footnote" rel="footnote">2</a></sup>의 연구는 GUI 입력을 해석하는 데 언어 모델을 사용했다.</p>

<p>다음으로 프로그램 코드를 작성하는 데 언어 모델을 사용한다.
PLDI의 인더스트리 세션에서 있었던 공순호 박사님의 발표에서는 언어 모델을 이용해서 Lean 증명 프로그램을 작성하는 문제가 소개되었다.
언어 모델이 필요한 이유와 Lean 프로그램을 더 잘 작성하기 위해 필요한 강화 학습 등의 학습 방법, 좋은 데이터를 수집하는 방법 등의 문제를 제시하기도 했다.
이 외에도 테스트 케이스<sup id="fnref:3" role="doc-noteref"><a href="#fn:3" class="footnote" rel="footnote">3</a></sup> 나 패치<sup id="fnref:4" role="doc-noteref"><a href="#fn:4" class="footnote" rel="footnote">4</a></sup><sup id="fnref:5" role="doc-noteref"><a href="#fn:5" class="footnote" rel="footnote">5</a></sup> 등 다양한 형태의 프로그램 코드를 작성하는 데 언어 모델을 사용하고 있었다.
다소 당연할 수도 있지만, 이렇게 프로그램을 언어 모델의 입출력으로 사용한다는 점이 두 분야의 공통적인 특징을 보여준다고 생각했다.
내게도 프로그램은 유용한 도구이면서 재미있는 연구 대상이다.</p>

<p>하지만 두 학회의 연구에는 차이도 있었다. 내가 가장 크게 느낀 차이점은 두 분야에서 문제와 해결책을 정의하는 순서가 다르다는 점이다.
언어 모델을 활용해서 해결하고자하는 문제의 범위와 언어 모델의 능력 범위를 설정할 때 우선 순위가 달랐다.
우선 PLDI 에서 접한 연구는 문제의 범위를 먼저 설정하고 그 안에서 언어 모델이 동작하도록 제한하는 방식으로 접근했다.
위에서 언급한 Işıl Dillig의 키노트에서 소개되었던 일련의 연구도 이렇게 볼 수 있다.
언어 모델이 사용할 수 있는 DSL 을 먼저 정의하고, 그 언어 안에서 언어 모델이 프로그램을 작성하게 한다.
또, Mündler 등<sup id="fnref:6" role="doc-noteref"><a href="#fn:6" class="footnote" rel="footnote">6</a></sup>은 타입 시스템 기반의 조건부 생성 (Constrained decoding) 기술을 제안했다.
언어 모델이 작성할 수 있는 코드의 타입 시스템을 정밀하게 정의하고, 언어 모델이 그 범위 밖에서는 코드를 생성할 수 없도록 제한하는 방법이다.</p>

<p>반면 FSE 에서 접한 연구는 다양한 관점에서 폭넓게 언어 모델의 능력을 파악하려고 했다.
리서치 트랙 뿐만 아니라 인더스트리나 아이디어 트랙을 포함해서 언어 모델의 능력을 평가하는 다양한 벤치마크 연구들이 있었다.
예를 들어 COFFEE<sup id="fnref:7" role="doc-noteref"><a href="#fn:7" class="footnote" rel="footnote">7</a></sup>는 기존에 있던 언어 모델 평가 벤치마크를 확장해서 성능 평가를 함께 할 수 있게 만드는 기술이다.
언어 모델의 환각 현상을 평가하거나<sup id="fnref:8" role="doc-noteref"><a href="#fn:8" class="footnote" rel="footnote">8</a></sup> 언어 모델이 작성한 코드의 코딩 스타일을 평가<sup id="fnref:9" role="doc-noteref"><a href="#fn:9" class="footnote" rel="footnote">9</a></sup> 하려는 연구도 있었다.
이렇게 언어 모델의 능력을 먼저 파악하고 나면 풀고자 하는 문제의 범위에 맞는 언어 모델을 선택하거나, 필요한 능력을 끌어올리기 위해 추가 학습을 하기도 한다.
특히 LWO<sup id="fnref:10" role="doc-noteref"><a href="#fn:10" class="footnote" rel="footnote">10</a></sup>는 이런 관점에서 더 나아간 연구였다. 언어 모델을 특정 과제에 적응시킬 때, 더 효율적으로 학습하기 위한 PEFT 방법을 제안했다.</p>

<p>두 학회를 연달아 참석하다보니 언어 모델을 활용하는 방식 차이를 느낄 수 있었다.
물론 두 학회에 발표된 논문들이 내 기준에 따라 명확하게 나뉘는 것은 아니다.
하지만 이런 여러 갈래의 기술들 사이에서 우리가 지금 하고 있는 연구의 위치는 어디인지, 앞으로 하고 싶은 연구가 어떤 방향인지 고민해볼 수 있었다.
특히 FSE에서는 수진님, 교수님과 쉬는 시간마다 다양한 내용에 대해서 토론하면서 생각을 구체화할 수 있어서 좋았다.
이미 PLDI에서 다양한 최신 연구를 접하면서 새로운 관점이 생기기 시작했을때라 더 생각이 발산하고 있었다.
나는 조건부 생성에대해서 고민하고 있었고, 교수님은 언어 모델을 이용한 증명 생성에 관심이 있었다.
셋이 함께하는 연구의 다음 과제에대해서 토론하기도 했다.
가끔은 같이 이야기하고 있지만 집단적 독백 상태에 있다고 느꼈는데, 그런 대화도 즐거웠다.</p>

<h2 id="학회를-가꾸고-지키는-사람들">학회를 가꾸고 지키는 사람들</h2>

<p>PLDI에는 비즈니스 미팅, FSE 에는 타운홀이라는 이름으로 학회의 성과를 공유하고 앞으로 학회의 발전을 논의하는 자리가 있었다.
PLDI 비즈니스 미팅은 2일차 저녁식사 직전에 한시간이 넘는 긴 시간동안 진행되었는데도 참석한 사람이 많았다.
시작할 때 한글의 우수성을 자랑하는 발표가 먼저 있었는데, PL 의 연산자 오버로딩, 오버라이딩 같은 개념을 도입해서 한글의 시스템을 해석한게 재밌었다.
참석자들도 자주 웃었는데 이렇게 기술적인 유머로 다같이 웃을 수 있다는 데에서 결국 비슷한 사람들이라는 친근감을 느끼기도 했다.
학회의 참석자 수나 채택율 등 올해의 학회에대한 통계 보고가 있었고, 내년의 PLDI 소개도 이어졌다.</p>

<p>마지막에는 학회에 있는 문제점과 이를 해결하는 방법에대해 토론하는 시간이 있었다.
몇가지 주제가 있었는데, 모의 리뷰 (Shadow PC) 제도에 관한 내용도 언급되었다.
처음 리뷰를 시작하는 PC 들을 위해 교육이 필요하다는 의견이 있었고, 한 학생이 모의 리뷰 제도를 제안했다.
학회 일정 중 만났던 학생이었는데, 나와 같은 박사 3년차라고 했다.
우리 연구실에서는 나와 태은님이 이전에 모의 리뷰 제도에대해 대화했던 적이 있었다.
비슷한 시기에 있는 학생들끼리 비슷한 일에 관심을 갖게 되는건 자연스러운 일일 것이다.
이게 빨리 어른이 되고 싶은 어린이의 마음인가 생각했다.</p>

<p>FSE 타운홀은 늦게 참석한 탓에 토론의 후반부만 들을 수 있었다.
두 학회의 참석자 통계만 비교하면 FSE 참석자가 백여명정도 많았는데, 타운홀 참석자 수는 훨씬 적었다.
행사가 진행된 장소의 크기가 너무 커서 사람이 더 적어보였는지도 모르겠다.
하지만 적은 인원으로도 활발한 토론이 이어지고 있었는데, 주제는 대체로 PLDI 의 비즈니스 미팅에서와 비슷했다.</p>

<p>두 학회 모두 더 좋은 학회를 만들어가고자하는 분위기를 느낄 수 있었다.
참석자들은 적극적으로 문제를 지적하고 해결책을 제안하고 이에 대한 장단점과 예상되는 효과같은 것들을 다방면에서 토론했다.
학회가 발전하려면 새롭고 의미있는 기술도 필요하지만, 한 사회로서 학회를 유지하고 발전시키려는 노력도 필요하다.</p>

<h2 id="국내에서-열리는-국제-학회">국내에서 열리는 국제 학회</h2>

<p>이번에 PLDI 가 서울에서 열려서 더 좋았던 점은 세계적인 연구자들이 국내에 방문했다는 점이다.
연구자들을 학교로 초대해주신 교수님들 덕분에 학회 전 며칠간은 다양한 발표가 끊이지 않았다.
학회에서의 연구 발표는 시간 제약이 있다 보니 짧고 간결하게 최신 기술 위주로 진행이 된다.
하지만 학교에서 있었던 발표는 한시간이 넘도록 연구 분야의 개요부터 최신 연구까지 다양하고 자세하게 소개가 되어서 더 깊이 배울 수 있었다.
학회 발표 보다 소규모로 진행이 되다 보니 발표 이후에 직접 질문하거나, 연사에게 우리 연구를 소개하면서 이야기 할 기회가 더 있었던 점도 좋았다.
다가오는 가을에 서울에서 국제 학회가 한번 더 예정 되어 있다. 가을에도 좋은 발표들이 있을 것 같아 기대된다.</p>

<p>연구실의 다른 학생들도 여행기에서 언급했지만, 교통이 편리하고 시차가 없으면서 익숙한 도시였던 점도 큰 장점이었다.
익숙한 도시에서 익숙한 교통편을 타고 학회장으로 출퇴근해서 학회에 더 집중할 수 있었다.
PLDI 첫날 처음 대화했던 학생이 서울에서 관광할 거리를 물었는데, 예상하지 못해 당황했다.
하지만 나중에는 이게 장점이라는 것을 알게 되었다. 처음 만나는 사람들과 이야기할 때 좋은 소재로 사용할 수 있었다.</p>

<p>이어서 있을 FSE 여행을 위해 체력을 아끼느라 PLDI 를 더 적극적으로 즐기지 못했던 것은 아쉽다.
다음 일정을 걱정하느라 본 학회 일정 외의 워크샵이나 연구실 회식 등에 참석하지 않았다.
미리 체력을 더 길렀더라면 더 즐길 수 있었을텐데 하는 아쉬움이 남는다.
다음에 이런 일이 있을 때를 대비해서 운동을 더 열심히해야겠다.</p>

<h2 id="unitcon-발표와-여유가-있는-학회">UnitCon 발표와 여유가 있는 학회</h2>

<h3 id="연구-교류">연구 교류</h3>

<p>이번 FSE에서는 저자로 참여한 <a href="https://prosys.kaist.ac.kr/unitcon/">UnitCon</a> 논문이 발표되었다.
특히 우수 논문으로 선정되어 더 좋았다.
발표자인 수진님이 첫날 발표 준비로 바쁜 동안 나는 사람들과 우리 논문에대해 이야기할 기회가 있었다.
아쉽게도 UnitCon과 비슷한 분야를 연구한 사람과 깊이 토의할 기회는 없었지만, 다른 분야의 연구자들이 내 소개를 듣고 연구의 필요성에대해 공감해줄 때 신이 났다.</p>

<p>PLDI 를 포함해 FSE 이전까지의 학회에서 나의 주요 <a href="https://prosys.kaist.ac.kr/networking-guide/">네트워킹 전략</a>은 혼자 커피를 들고 서 있으면 다가오는 사람과 이야기하는 방법이었다.
하지만 FSE 에서는 그게 잘 통하지 않았다.
우선 3개 학회가 연달아 열리는 학회였고, FSE 가 그 중간에 있다 보니 사람들이 지쳐있었다.
한국인이 많아 아는 얼굴들을 만나 인사하다 보면 쉬는 시간이 금새 지나가버리기도했다.
혼자 있을 때 다가오는 사람을 기다리는 수동적인 방법으로는 사람을 만나기 어려웠다.
첫날 점심때는 사교적인 도현님의 도움으로 처음 보는 사람들과 식사하면서 대화할 수 있었는데, 그 외에는 발표자들을 찾아가 질문 몇 번 했던 것 외에 이렇다할 교류 활동이 없었다.</p>

<p>그래서 FSE 마지막 날에는 Doctoral Symposium 에 참석했다.
일단 포스터 발표가 있다는 점이 좋았다.
포스터 발표장에서는 모두가 돌아다니면서 연구 이야기를 하고 있으니, 나도 끼어서 말하기 좋을거라고 생각했다.
포스터 목록에 관심있는 주제들이 있는 것도 좋았다.
언어 모델을 이용해서 코드를 잘 생성하려는 기술이 몇 편 있었다.
가서 보니 작은 방에서 소규모 인원이 이야기를 하고 있어서 더 좋았다.
큰 학회장에 있을 때 보다는 부담을 덜고 다른 사람의 포스터에 다가가서 대화를 시작하기 좋았다.
특히 언어 모델에 취약점을 추가 학습하는 방법에 관한 포스터 발표가 있어서 발표자와 자세히 이야기했다.
비슷한 시기에 비슷한 주제를 연구하는 또래를 만나서 반가웠고, 더 동기부여가 되기도 했다.
이 자리에서 만난 학생들과는 서로 메일이나 링크드인 연락처를 교환하기도 했다.
다음에 기회가 된다면 직접 포스터 발표도 해보고 싶다.</p>

<h3 id="도시-여행">도시 여행</h3>

<table>
  <thead>
    <tr>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczM_WsoFt3kz_uig5Ul7BkOPDPmlGkRJ3ILA-sGDlxxvwTT0A96XU6PMPiG0WUGMJtQQ7Mhczhrr_A3vmWIX4bVmucaF-0zefq4J-_k73M4TY5pHL1qGzMa1OFh34R2RRk9lNncu3OmruRAoZHSI4aZH=w2486-h1864-s-no-gm?authuser=0" alt="" /></th>
      <th style="text-align: center"><img src="https://lh3.googleusercontent.com/pw/AP1GczOFrF8ISkdPM6GUG2AhbCDhRM7HSBrVMELtTgINhwaRJiqtDWjHUCvJOw92C212fZwDo-73TdfgcJnEtvONHL46PdUdMvvl-YlmNEPIXp4tousO6-ZHnJor-Js6qHpLNNXN4n04VLffFVg9oZeS6wLrmQ=w1992-h2656-s-no-gm?authuser=0" alt="" /></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align: center"><strong>해도 좋고 바람도 좋은 Munkholmen</strong></td>
      <td style="text-align: center"><strong>옛 감옥 체험</strong></td>
    </tr>
  </tbody>
</table>

<p>트론하임에 도착한 첫날에는 호텔 체크인 시간까지 여유가 있어서 관광을 했다.
배를 타고 Munkholmen 이라는 섬을 가서 가이드 투어를 들었다.
천년 전에 수도원으로 지어졌다는 건물이 있었는데, 그래서 이름이 수도사의 섬이 된 모양이다.
천년 동안 수도원은 용도를 바꿔서 요새로도 쓰이고 감옥으로도 쓰였다고 했다.
외벽이 두텁고 무뚝뚝하게 생겨서 어느 쪽이든 어울린다고 생각했다.</p>

<p>학회 첫날 리셉션이 도시의 주요 관광지에서 열렸다.
니다로스 성당에서 오르간 연주를 듣고 옆에 있던 대주교의 궁전에서 스파클링 와인과 핑거 푸드를 먹었다.
도시에 도착한 첫날 혼자 돌아다녔는데, 우연히 도착한 곳이 니다로스 성당이었다.
추모 공원과 높은 고딕 성당이 함께 있는데, 공원의 나무가 크고 울창해서 첫날 날씨가 좋을 때는 정말 예뻤다.
행사 일정으로 다시 갔을 때는 비가 와서 예쁜 풍경을 다시 보지 못한게 조금 아쉽다.
하지만 혼자 갔을 때는 들어가지 못한 성당 내부를 볼 수 있었던 것은 좋았다.
오래된 건물의 냄새가 났고, 스테인드글라스가 화려했다.
오르간 연주도 신기했는데, 악기가 눈앞에 있는데도 어딘가 먼 곳에서 소리가 들려오는 것처럼 들렸다.
UnitCon 발표가 끝나고 즐거운 기분이어서 더 멋있어 보였는지도 모르겠다.</p>

<p>트론하임에 도착한 첫날과 떠나던 마지막 날을 제외하면 거의 항상 비가 내렸다.
학회 일정은 하지가 막 지난 시점이라 해가 정말 길었는데, 밤 11시에 해가 져서 새벽 3시에 해가 떴다.
어느 날은 번화가에서 맥주를 마시다가 해가 진 뒤 자정에 들어갔지만 자정의 하늘도 비 내리는 낮의 하늘과 거의 차이가 없었다.
원래도 트론하임은 365일 중 260일은 비가 내리는 도시라고 한다.
그런 중에 첫날과 마지막날 밝은 해를 봤으니 운이 좋은 셈이다.</p>

<h2 id="마치며">마치며</h2>

<p>이번 두 학회를 통해 다양한 연구를 접하고 세계적인 연구자들을 만나 교류할 수 있었다.
두번의 학회 모두 참석할 수 있게 지원해주신 지도 교수님께 감사드린다.
그리고 PLDI 와 FSE 에 참석할 수 있는 기회를 만들어 준, 멋진 동료 봉준님과 수진님에게도 감사한다.</p>

<hr />

<h4 id="참조">참조</h4>
<div class="footnotes" role="doc-endnotes">
  <ol>
    <li id="fn:1" role="doc-endnote">
      <p>Hossain, Soneya Binta, Raygan Taylor, and Matthew Dwyer. “Doc2OracLL: Investigating the Impact of Documentation on LLM-Based Test Oracle Generation.” FSE 2025. <a href="#fnref:1" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
    <li id="fn:2" role="doc-endnote">
      <p>Wang, Chenxu, et al. “LLMDroid: Enhancing Automated Mobile App GUI Testing Coverage with Large Language Model Guidance.” FSE 2025. <a href="#fnref:2" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
    <li id="fn:3" role="doc-endnote">
      <p>Kim, Myeongsoo, Saurabh Sinha, and Alessandro Orso. “Llamaresttest: Effective rest api testing with small language models.” FSE 2025. <a href="#fnref:3" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
    <li id="fn:4" role="doc-endnote">
      <p>Behrang, Farnaz, et al. “DR. FIX: Automatically Fixing Data Races at Industry Scale.” PLDI 2025. <a href="#fnref:4" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
    <li id="fn:5" role="doc-endnote">
      <p>Wu, Susheng, et al. “Mystique: Automated Vulnerability Patch Porting with Semantic and Syntactic-Enhanced LLM.” FSE 2025. <a href="#fnref:5" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
    <li id="fn:6" role="doc-endnote">
      <p>Mündler, Niels, et al. “Type-Constrained Code Generation with Language Models.” PLDI 2025. <a href="#fnref:6" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
    <li id="fn:7" role="doc-endnote">
      <p>Peng, Yun, et al. “Coffe: A code efficiency benchmark for code generation.” FSE 2025. <a href="#fnref:7" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
    <li id="fn:8" role="doc-endnote">
      <p>Yang, Borui, et al. “Hallucination Detection in Large Language Models with Metamorphic Relations.” FSE 2025. <a href="#fnref:8" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
    <li id="fn:9" role="doc-endnote">
      <p>Wang, Yanlin, et al. “Beyond functional correctness: Investigating coding style inconsistencies in large language models.” FSE 2025. <a href="#fnref:9" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
    <li id="fn:10" role="doc-endnote">
      <p>Wang, Chaozheng, et al. “Beyond PEFT: Layer-Wise Optimization for More Effective and Efficient Large Code Model Tuning.” FSE 2025. <a href="#fnref:10" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
  </ol>
</div>]]></content><author><name>류연희</name></author><category term="Trip" /><category term="PLDI2025" /><category term="FSE2025" /><summary type="html"><![CDATA[좋은 기회로 2주 연속으로 큰 국제 학회에 참석하게 되었다. 서울에서 열린 PLDI 와 노르웨이 트론하임에서 열린 FSE 에 연달아 참석하면서 밀도 있게 두 분야의 연구를 접할 수 있었다.]]></summary></entry><entry><title type="html">문제가 문제다(2): 높이 올라가야 멀리 보인다</title><link href="http://prosys.kaist.ac.kr/high-and-far/" rel="alternate" type="text/html" title="문제가 문제다(2): 높이 올라가야 멀리 보인다" /><published>2025-07-03T00:00:00+00:00</published><updated>2025-07-03T00:00:00+00:00</updated><id>http://prosys.kaist.ac.kr/high-and-far</id><content type="html" xml:base="http://prosys.kaist.ac.kr/high-and-far/"><![CDATA[<p><em>(<a href="http://prosys.kaist.ac.kr/sky-and-star">이전 이야기</a>에서 이어진다.)</em></p>

<h2 id="높이-올라가야-멀리-보인다-optimuzz-이야기">높이 올라가야 멀리 보인다: Optimuzz 이야기</h2>
<p>한 가지 문제를 훌륭하게 풀다보면, 여러 좋은 문제들이 눈에 들어온다는 이야기이다.
당면한 문제를 풀 때는 제대로.
잘 되는 것만 쫓지 말고, 안되는 것은 왜 안되는지 확실히 알고 넘어가야 훗날 좋은 문제로 다시 찾아온다.
남들 뒤꽁무니를 따르는 것이 아니라 나만의 길을 제대로 걷고 있다면, 거기서 만나는 풍경도 세상에서 나만 아는 비밀.
거기에 숨겨진 문제는 이 길을 와보지 않은 남들은 발견 못할 신선한 것일 수 밖에.</p>

<p>2023년 한창 <a href="http://prosys.kaist.ac.kr/turbotv/">TurboTV</a>를 만들던 때였다.
졸업한 승완이, 재성이, AWS의 이준영 박사와 함께 작업한 TurboFan의 <a href="https://github.com/prosyslab/pl-wiki/wiki/번역-검산(Translation-Validation)">번역 검산기(translation validation)</a>이다.
번역 검산기란 컴파일러의 최적화가 옳은지 논리적으로 검사하는 기술이다.
컴파일러 최적화는 사용자가 작성한 코드를 좀 더 빠르게 돌아가도록 여기 저기 바꾼다.
하지만 컴파일러에 오류가 있으면 이렇게 바꾸는 과정에서 원래 사람의 의도와 다른 프로그램이 만들어진다.
번역 검산기는 이렇게 바뀌기 전과 후 프로그램이 같은 동작을 하는지를 검사한다.
보통 컴파일러는 매우 크고 복잡한 소프트웨어이기 때문에 현장에서 번역검산기의 도움은 꼭 필요하고, 전세계에서 가장 널리
쓰이는 컴파일러인 LLVM의 개발과정에는 이미 통합되어 있다. (자세한 내용은 <a href="https://github.com/prosyslab/pl-wiki/wiki/TurboTV">여기</a>에)</p>

<p>어느 정도 TurboTV가 완성이 되었다고 생각한 연구 막바지 일이었다.
성능을 평가하고 실제 TurboFan의 오류를 찾기 위해서 마구실행기(fuzzer)와 결합해보기로 했다.
번역검산기의 특성상 오류를 유발하는 입력 프로그램 (즉, 최적화 대상 프로그램) 있어야 해당 오류를 잡아낼 수 있기 때문이다.
TurboFan은 JavaScript 프로그램을 입력으로 받는 컴파일러이다.
JavaScript 프로그램을 자동으로 생성하여 오류를 찾는 기술은 학계에서 제법 오래 발전해 왔기 때문에 최신 기술을 가져다 사용하면 어렵지 않게 우리의 성과를 뽑낼 수 있을거라 생각했다.
마침 구글에서 만들어서 널리 쓰이고 있는 마구실행기가 공개되어 있었다. 아주 제격이라고 생각했다.</p>

<p>하지만 역시 처음엔 쉬워보이는 일도 들여다보면 문제투성이다.
컴파일러의 오류 지점을 이미 알고 있는 실험 상황이었지만, 마구실행기는 그 지점으로 향하는 프로그램을 만들어내지 못했다.
하루를 돌리고, 이틀을 돌려도 오류 근처도 가지 못했다.
컴파일러가 너무나 복잡하고 큰 프로그램인데다가 JavaScript 언어도 복잡해서 탐색 공간이 너무 넓은 것이 문제였다.
마구실행기는 순전히 무작위로 프로그램을 생성하니까 사막에서 바늘 찾는 것과 다를 바가 없었다.
이 연구의 초점은 마구실행기의 성능이 아니었기 때문에 일단은 이 문제를 묻어두기로 했다.
마구실행기를 우리 상황에 맞게 수동으로 튜닝하고 TurboTV의 성능을 평가하는 것으로 실험을 마무리 했다.</p>

<p>2023년 8월에 TurboTV 논문을 ICSE에 제출하고 나서 마구실행기와 번역검산기를 결합하는 문제를 골똘히 생각해 보았다.
제한된 실험 환경에서도 그 정도 탐색 능력이라면, 실제 현장에서 숨은 오류를 잘 찾아내지 못할게 분명했다.
살펴보니 번역 검산기가 현장에서 쓰이고 있기는 하지만 입력은 늘 사람이 만들어 주는 듯 했다.
개발자들이 직접 컴파일러를 수정하고, 변경한 지점을 거치는 입력을 손수 한 두개 만들어 주는게 현실이었다.
그러다보니 숨은 오류를 놓치는 경우도 많았다. 이걸 자동으로 해야하지 않을까?
효율적인 번역검산을 위해서 특정 최적화를 일으키는 프로그램을 마구 생산하는 기술이 필요하지 않을까?
이런 문제는 아무도 제대로 집중하고 있지 않은 듯 했다.
우리가 TurboTV를 만드는 길을 갔기에, 그 와중에 마구실행기와 번역검산기를 결합하는 선택을 했기에 가능했던 흔치 않은 시선이라고 본다.
또한 마침 프로그램의 특정 지점에 집중하는 입력을 만드는 비슷한 연구가 연구실에서 활발히 진행되고 있었다.
<a href="http://prosys.kaist.ac.kr/dafl-story">지향성 퍼징</a>,
<a href="http://prosys.kaist.ac.kr/sky-and-star">지향성 단위 테스트 생성기</a>에 이어
최적화 지향성 컴파일러 입력 생성기까지.
“지향성” 3부작이 완성되는 순간이었다.</p>

<p>우리만의 뚜렷한 시선을 갖추니 새로운 기회도 보였다.
우연히 페이스북에서 본 Amazon 연구상 공고였다.
Amazon 연구상은 정기적으로 몇 개 분야를 정해서 연구제안서를 공모하고 그 중 우수한 연구에 연구비를 지원하는 프로그램이다.
과거 몇 년간 우리 분야의 공모는 없어서 신경을 안쓰고 지냈던 차였다.
그런데 마침 그 해 뜬 자동 검증(automated reasoning) 분야의 공모가 내 눈길을 사로잡았다.
마침 기존 연구비도 다 떨어져가던 차라 새로운 제안서를 써야하기도 했고, 우리의 시선이 얼마나 제대로인지 외부에 확인해보고 싶기도 했다.
기쁜 마음으로 제안서를 써내려갔다.
“최적화 지향성 컴파일러 입력 생성기”를 중심으로 컴파일러 안전성을 효율적으로 검사하는 방법에 관해 밑그림을 그렸다.
TurboTV를 만들었던 학생들과 이준영 박사의 도움 덕분에 일필휘지였다.
그 해 겨울, ICSE에 제출했던 논문도 채택이 되었고, 다음 봄이 되자 예상대로 Amazon에서도 수상작으로 선정해주었다.
문제의 중요성을 모두 인정해 준 것이다.</p>

<p>그 때부터는 거침없는 항해였다.
TurboTV를 함께 만든 <a href="https://doitman.kr">재성</a>이와 당시 학부 연구생으로 들어와 지금은 대학원생이된 <a href="https://bongjunj.github.io">봉준</a>이가 앞장섰다.
번역검산과 컴파일러 전문가인 이준영 박사도 여전히 함께하여 큰 도움을 주었다.
재성이와 봉준이는 거리낌없이 치고나가면서 앞에 놓인 장애물을 매주 차근차근 부수기 시작했다.
그렇게 <a href="https://prosys.kaist.ac.kr/optimuzz/">Optimuzz</a> 프로젝트가 시작되었다.
어느정도 시스템이 성숙하자 야생으로 나가보기로 했다.
세상에서 가장 널리 쓰이는 컴파일러인 LLVM에 우리 기술을 적용해 봤더니 오류가 무더기로 쏟아져 나왔다.
TurboFan에서도 기존보다 월등히 나은 성능을 보였다.
성공적인 기술임을 확신했다. 약 1년 정도 연구를 거쳐 2024년 11월, 결과를 PLDI에 제출했다.
역시나 다들 우리의 시선에 공감했다. 평가는 매우 긍정적이었고 무난하게 채택되었다. 특히, 아래와 같은 심사평이 뿌듯했다:</p>
<blockquote>
  <p>It opens a new direction of compiler fuzzing, i.e., guided compiler fuzzing. (Reviewer A)</p>

  <p>To my knowledge, one of the first (if not the first) work to apply guided fuzzing to test complex software like compiler optimizations. (Reviewer B)</p>
</blockquote>

<p>봉준호 감독은 <기생충>으로 아카데미상을 받았을 때, 우상인 마틴 스코세이지 감독 앞에서 그의 말을 빌려 수상 소감을 전했다.</기생충></p>
<blockquote>
  <p>가장 개인적인 것이 가장 창의적인 것이다</p>
</blockquote>

<p>유명한 사람이 하는 것, 요새 유행하는 것을 쫓는다면 쉽게 2류까지는 될 수 있을 것이다.
하지만 분야를 막론하고 창의적인 생각은 (가령, 영화 감독에게는 영화 주제) 남의 뒤통수에 있지 않은 것이 분명하다.
현재 맡은 일에 충실하면서 내 안의 자그마한 소리에 귀를 기울여야 누구도 발견하지 못한 색을 갖게 된다.</p>

<p>나만의 길을 개척해가는 수레바퀴는 멈추지 않고 돌아갈 것이다. 파고들면 들수록 세상에 나만 아는 비밀로 가득할 것이다.
가슴 벅차지 않은가? 세상에 나만 아는 비밀이 있다는 것. 그리고 곧 그 비밀을 모두에게 자랑스럽게 이야기해 줄 수 있는 기회가 있다는 것.
이번 연구를 통해 우리는 또 다른 비밀 하나를 발견하고 파헤치느라 설레는 중이다. 과학자는 이러한 비밀이 밑천이다.
과연 과학자만 그럴까? 시인 이상도 소설 <실화>에서 이렇게 말했다:</실화></p>
<blockquote>
  <p>사람이 비밀이 없다는 것은 재산 없는 것처럼 가난하고 허전한 일이다.</p>
</blockquote>]]></content><author><name>허기홍</name></author><category term="연구" /><category term="문제찾기" /><category term="Optimuzz" /><summary type="html"><![CDATA[(이전 이야기에서 이어진다.)]]></summary></entry><entry><title type="html">문제가 문제다(1): 하늘을 보아야 별을 딴다</title><link href="http://prosys.kaist.ac.kr/sky-and-star/" rel="alternate" type="text/html" title="문제가 문제다(1): 하늘을 보아야 별을 딴다" /><published>2025-07-03T00:00:00+00:00</published><updated>2025-07-03T00:00:00+00:00</updated><id>http://prosys.kaist.ac.kr/sky-and-star</id><content type="html" xml:base="http://prosys.kaist.ac.kr/sky-and-star/"><![CDATA[<h2 id="들어가며">들어가며</h2>
<p>초보 대학원생을 위한 여러 길잡이 책과 강연에 빼놓지 않고 등장하는 것은 연구 문제를 찾는 방법과 과정이다.
초,중,고, 그리고 대학 학부 과정까지는 주로 주어진 문제를 잘 푸는 능력을 기른다. 반면, 대학원 과정에서는
스스로 좋은 문제를 찾고 정의하는 능력을 기르는 것이 훨씬 중요하다. 인류 지성이 아직 도달하지 못한 저 경계
너머 컴컴한 어둠 속을 탐험하는 것이 석박사들의 역할이기 때문이다. 백미터를 제 아무리 빨리 달리는 사람도
거기서는 소용이 없다. 학창시절 빨리 달리기를 배운 까닭은 그 경계까지 무사히 도달하기 위함일 뿐. 경계를 넘어선
이후부터는 딛고 선 곳이 직선 코스인지, 곡선 코스인지, 물인지, 낭떠러지인지 그 누구도 모르기 때문이다.
대학원에서 좋은 문제를 찾는 것이란, 이러한 어둠 속에서 작은 놀이터를 하나 세워서 인류가 여태껏 도달한 지식의 경계를
확장하는 것이라 할 수 있겠다. 많은 사람이 오랫동안 마음껏 뛰놀 수 있도록 튼튼하고도 놀거리가 가득하면 더욱 좋다.</p>

<p>예상하다시피 좋은 문제를 찾는 것은 쉬운 일이 아니다. 그러다보니 대학원에서 좋은 문제를 찾는 것과 관련된 수많은 지혜가
이미 서점과 인터넷에 널려있다. 그런데도 하루가 멀다하고 또 다른 조언이 나타나고 사람들은 이에 귀를 기울인다.
더 이상 새로운 게 있을까 싶은 데도 어김없이 나오는 다이어트 비법서같다. 사실 다이어트건 연구 문제 찾기이건 핵심 비법은
매우 간단하다.</p>
<blockquote>
  <p>“살을 빼고 싶은 자여, 음식을 적게 섭취하고 운동을 많이 하세요.”<br />
“훌륭한 연구를 하고 싶은 자여, 호기심으로 세상을 보고 과감히 도전하세요.”</p>
</blockquote>

<p>당연히 뼈에 새기고 마음에 새겨야할 만고불변 진리이다. 다만, 현실에서는 그 진리가 다양한 길을 통해 다양한 양상으로 발현이 된다. 공통된 진리를 향해 가더라도 모두 가는 길이 다르고 만나는 풍경이 살짝 다르다. 그래서 비법서에 적힌대로 해도 안되는 경우도 있고, 비법서 없이 덤볐는데 잘 되는 경우도 있다.</p>

<p>이 글에서는 최근 우리 연구진이 더듬어 찾은 길과 그 여정을 이야기하고자 한다.
진리가 담긴 경전도 좋지만, 평범한 사람들의 생생한 실제 이야기가 더 가까이 와닿는 법.
비슷한 길을 가는 사람들에게 소박한 참고서가 되었으면 한다.
아래 두 가지 비슷하고도 다른 연구 이야기이다:</p>
<ul>
  <li><a href="https://prosys.kaist.ac.kr/unitcon/">UnitCon: 목표 지향성 단위 테스트 생성기</a></li>
  <li><a href="https://prosys.kaist.ac.kr/optimuzz">Optimuzz: 최적화 지향성 컴파일러 테스트 코드 생성기</a></li>
</ul>

<h2 id="하늘을-보아야-별을-딴다-unitcon-이야기">하늘을 보아야 별을 딴다: UnitCon 이야기</h2>

<p>가만 있지말고 뭐라도 하자는 이야기이다. 대신 남이 정해준 관점이 아니라 자기만의 시선으로. 새로운 연구 주제를 찾는답시고
논문만 줄기차게 읽고 있는 사람들이 있다. 나는 반대다. 물론 가만히 앉아있는것 보다는 훨씬 낫지만, 그건 남이 만든 렌즈로
세상을 보는 격이다. 이미 정교하게 관점이 튜닝된, 수많은 길 중 그들이 성공했던 길만을 보여주는 지도다.
그래서 우리 연구실에 들어오는 학생들에게 남의 논문 읽으면서 연구 시작하기를 권하지 않는다.
남들이 지나간 길에서 남은 고기가 뭐 없나 뒤지는 하이에나가 되길 원치 않으므로. 대신 넓은 초원, 야생 한복판에서 부지런히
뛰어다니며 근육을 기르길 권한다.
우리 연구 분야로 따지만 유명 소프트웨어 GitHub 저장소의 버그 리포트 뒤져보기, 최신 보안 오류 살펴보기, 혹은 소프트웨어
개발 회사에서 일하는 지인의 고충 들어보기, 다른 분야 사람들의 속사정 들여다 보기. 분명 그들을 빡치게 하는 문제가
있을 것이다 (<a href="https://kihongheo.kaist.ac.kr/recruitment.html">아니 제길 시리즈</a> 참고).
최근 발표된 제 아무리 우수한 논문도 해결하지 못하는, 당장 오늘 개발자 속을 썩이는 문제.
그것이 우리의 사냥감이다. 처음엔 허구헌날 사냥에 실패하여 굶는 날이 많겠지만, 곧 나만의 길을 개척하여 크고 싱싱한 고기를 자주 맛보게 될테니.</p>

<p>이 이야기는 꽤 오래전 2022년 2월로 거슬러 올라간다. 당시 (지금도 마찬가지) 연구실의 관심사는 소프트웨어를 개발해 가는
환경에서 지속적으로 변모하는 (이른 바, CI/CD 환경) 프로그램이 안전한지 늘 검사하는 것이었다. 현장의 프로그램은 하루에도
몇번씩 바뀐다. 다양한 기능 개선, 오류 수정, 코드 정리가 일어난다. 더구나 수많은 개발자들이 협업하며 소프트웨어를 개발하기
때문에, 나도 모르는 새에 동료가 프로그램을 바꿔놓기도 한다. 따라서 그 거대한 프로그램의 시시각각 변화 과정을 사람이 모두
파악하기는 사실상 불가능하다. 자동 도구가 반드시 필요하다.</p>

<p>당시에 이런 문제를 해결하는 기반 기술 중 하나로 <a href="http://prosys.kaist.ac.kr/dafl-story/">지향성 마구실행 기법(directed fuzzing)</a> 연구를 한창 진행중이었다.
오류 의심 지점이 주어지면 그 오류를 발현하는 입력을 자동으로 생성하는 기법이다.
하지만 그 오류 의심 지점을 자동으로 찾는 것은 미뤄둔 상태였다.
당시 갓 석사로 입학한 <a href="https://sujin0529.github.io">수진</a>이가 이를 살펴보기로 했다.
소프트웨어 개발 중 코드가 변했을 때 그 변화 때문에 유발되는 오류 의심 지점을 정확하게 집어낼 수 있는가?
실제 오류는 소수이지만 터무니 없는 후보 지점을 너무 많이 고른다면 (가령 수천개) 실제에서 큰 의미가 없을 것이다.
하지만 정적 분석기를 이용하면 어느 정도 의심도가 높은 지점을 정확하게 골라낼 수 있을 거라고 보았다.
그리고 우리는 향후 1-2년간 그런 분석 기술을 만들고 있을 것 같았다. 그때까진 그렇게 생각했다.</p>

<p>메타에서 개발하여 널리 쓰이고 있는 정적 분석기 Infer를 갖고 현 최고 수준이 어느정도 되는지를 가늠해보기로 했다.
여러 유명 프로그램에 있는 이미 알려진 오류를 Infer가 잘 잡아내는가? 메타에서 발표한 논문에 따르면 성능이 매우 좋다고 한다.
하지만 논문 밖 진짜 세상 이야기가 궁금했다. 처음 다루어 보는 도구가 익숙하지 않았겠지만 수진이가 끈기있게 하나하나 조사해갔다.
꼬박 한학기가 걸렸던 것으로 생각한다. 우리의 관찰에 따르면, 많은 경우 오류를 잡아내지 못하였다. 논문만 들여다 보아서는 알 수 없었을 결과이다. 하지만 이것은 논문의 주장이 잘못되었다는 것이 결코 아니다. 모든 경우에 다 잘 통하는 기술이라면 진작에 연구거리도 아니었을 것. 그들은 그들의 길에서 그들의 문제를 잘 푼 것이고, 우리는 우리의 길에서 또 다른 문제를 만나고 있을 뿐이다. 그리고 이런 것들이 모두 모여 기술이 발전한다.</p>

<p>한 학기동안 세상의 온갖 오류를 한껏 만나보고 나니 우리는 미처 생각치 못했던 것을 보게 되었다.
우리가 살펴본 대부분 프로그램은 라이브러리 프로그램이었다.
이런 프로그램의 오류를 발현 시키기 위해서는 오류가 있는 라이브러리 함수를 사용하는 또 다른 “프로그램”을 만들어내야 했다.
반면, 기존에 우리가 연구하던 지향성 마구실행 기술은 입력으로 “값(예: 문자열, 숫자)”을 만들어 내기 때문에 우리가 본 오류에 직접 적용할 수가 없었다.
이런 문제 때문에 특정 의심지점의 오류를 발현 시킬수 있는 작은 “프로그램”, 즉 <a href="https://github.com/prosyslab/pl-wiki/wiki/단위-테스트">단위 테스트(unit test)</a>를
자동으로 생성하는 일을 해야겠다는 생각이 들었다. 이른 바, “지향성 단위 테스트 생성기”이다. 수많은 오류의 이유와 이를 발현시키는 단위 테스트를 하나하나 뜯어본 수진이의 제안이었다. 큰 프로그램의 한 구석에 있는 오류를 이해하는 것은 결코 쉽지 않은 일이다. 깊은 빡침에서 우러 나왔음이 확실하다.</p>

<p>그 때부터 오류 의심 위치 선정은 잠시 미루어두고 발현 프로그램을 합성하는 것에 몰두했다.
그렇게 시작한 <a href="https://prosys.kaist.ac.kr/unitcon">UnitCon</a> 프로젝트의 첫 커밋을 보니 2022년 8월 4일.
문제를 정의하는데 6개월이 걸렸다. 뜨거운 여름 한 가운데로 기억한다.
사실 단위 테스트 자동 생성 기술은 오랜 역사를 지니고 있다.
하지만 지금까지는 대상 프로그램 전체에 숨어있는 오류를 대상으로 마구 테스트를 생성하는 식이었다.
우리처럼 특정한 의심 지점 (가령, 정적 분석 알람, 최신 변경 지점)을 세밀하게 조준하는 기술은 없었다.
우리가 갖고 있는 정적 분석, 프로그램 합성 기술로 가능하리라고 보았다.
가을학기에 <a href="https://yeonhee-ryou.github.io">연희</a>가 합류한 것도 없어선 안될 행운이었다.
정적 분석기를 만들어 보고, 회사에서 실전 코드를 많이 다루어 본 경험이 기술 개발에 큰 도움이 되었다.
수진이가 한땀한땀 살펴본 문제점과 아이디어 조각을 연희가 짜맞추고 확장된 방식으로 정리하면,
내가 반례를 찾고 다시 문제점을 지적하는 작업이 반복됐다.</p>

<p>늘 그렇듯 목표에 도달하기까지는 쉽지 않은 여정이 기다리고 있었다. 1년간 온 힘을 다해서 시스템을 만들었다. 지향성 기술은 기존에 없었지만 최소 무지향성 기술보다는 우리 기술이 월등해야 수월성을 주장할 수 있었다. 하지만 10년간 학계 최고 수준이었던 무지향성 <a href="https://www.evosuite.org">도구</a>를 밑바닥에서부터 출발해 따라잡기란 쉽지 않았다. 2023년 여름을 불태우고 9월 FSE에 제출할 계획이었지만, 제출 당일까지 성능이 좋지 않아 결국 내지 못했다. 같이 아쉬움을 달래던 연구실 앞 잔디밭 가을 바람이 제법 선선했다.</p>

<p>그 이후로도 꼬박 1년이 더 걸렸다. 시스템을 갈고 닦아서 다음 해인 2024년 3월 ICSE에 드디어 제출했지만 결과는 처참했다.
우리의 문제 의식에 공감하지 못했고, 확장성에 의문을 제기했다. 안타까웠지만 어느 정도 납득이 되는 비판도 있었기에,
지적받은 약점을 보완하기로 했다. 학부 연구생이었던 희원이도 참여하여 실험을 돕기 시작했다.
또 다시 치열한 절차탁마가 9월까지 계속 됐다.
학교 앞 중국집 원탁에 앉아 논문의 설명을 가다듬던 날이 선명하다.
이제는 자신있다고 생각하고 FSE에 다시 제출했는데 중간 결과가 또 별로 신통치 않았다.
학생들이 실망하면 어쩌나 싶은 생각이 잠시 들었으나, “그래도 저번보다는 점수가 낫잖아요”라며 팔을 걷어붙이는 모습을 보고는
금방 떨쳐버렸다. 역시 맷집은 두둑한 편이 좋다.
우리는 기술에 자신이 있었기에 중간 결과에 대한 저자의 응답을 쓸 때도 거침이 없었다.
평소보다 더 강하게 우리의 주장을 펼치고 오해를 바로 잡았다. 어느 정도 주장이 먹혀들었는지, 몇 달 후 주요 부분을 개선 후 재제출 (major revision)하라는 결과를 받았다. 건설적인 비판이 많았기에 결과를 기쁘게 받아들이곤 개선 작업에 돌입했다.</p>

<p>2025년 4월, 최종 채택 연락을 받았다. 3년이 훌쩍 지나있었다.
우리가 갈아넣은 시간과 노력이 고스란히 UnitCon 시스템에 녹아들어 세상에 공개되는 순간이다.
덤으로 한 달 뒤에는 우리의 연구가 최우수 논문으로 선정되었다는 기쁜 소식도 날아왔다.
우리가 개선한 내용을 심사위원들 모두가 높이 평가한 것으로 보인다.
재제출본이 심사중이던 2월 아침, 출근해서 일을 처리하던 차에 문득 떠올라 학생들에게 슬랙 메세지를 보낸 적이 있다. 중간 평가에서 이 정도 박한 평가를 받을 연구가 아닌데 이상하다고, 후속 연구에서는 최우수 논문을 받을 수 있을거라는 예언이었다. 생각보다 빨리 실현 되었다.</p>

<p>이제 이 장의 제목을 거짓으로 지은 것에 대해 사과를 해야겠다.
사실 “하늘을 보아야 별을 딴다”는 것은 지나치게 낭만적인 이야기일 수 있다.
더 현실적인 버전은 “하수구에 기어들어가 봐야 벌레를 잡는다” 일 것이다.
많은 공학 분야가 그렇고, 특히 우리처럼 소프트웨어 오류(bug, 벌레)가 연구 대상인 경우 더욱 그렇다. 도서관에 앉아 밤낮으로 백과사전에 있는 벌레 그림만 들여다보아서는 벌레 잡는 기계를 만들 수 없다.</p>

<p>그러니 우리 그만 책을 덮고 하수구 뚜껑을 열자. 더럽고 냄새나는 오물에 눈을 찌푸리자. 튀어나오는 바퀴벌레에 소스라치게 놀라자. 정말 드러워서 못봐주겠다고, 꼴도 보기 싫다고 크게 소리치자. 그렇게 차곡차곡 분노와 불만이 쌓였다면 크게 기뻐하자. 드디어 내가 진심을 다해 풀어야할 문제를 찾은 것이니.
그리고 곧 뚜껑을 깨고 높이 승천할 날이 멀지 않았으니.</p>

<p><em>(두 번째 이야기는 <a href="http://prosys.kaist.ac.kr/high-and-far">여기</a>에서 이어진다.)</em></p>]]></content><author><name>허기홍</name></author><category term="연구" /><category term="문제찾기" /><category term="UnitCon" /><summary type="html"><![CDATA[들어가며 초보 대학원생을 위한 여러 길잡이 책과 강연에 빼놓지 않고 등장하는 것은 연구 문제를 찾는 방법과 과정이다. 초,중,고, 그리고 대학 학부 과정까지는 주로 주어진 문제를 잘 푸는 능력을 기른다. 반면, 대학원 과정에서는 스스로 좋은 문제를 찾고 정의하는 능력을 기르는 것이 훨씬 중요하다. 인류 지성이 아직 도달하지 못한 저 경계 너머 컴컴한 어둠 속을 탐험하는 것이 석박사들의 역할이기 때문이다. 백미터를 제 아무리 빨리 달리는 사람도 거기서는 소용이 없다. 학창시절 빨리 달리기를 배운 까닭은 그 경계까지 무사히 도달하기 위함일 뿐. 경계를 넘어선 이후부터는 딛고 선 곳이 직선 코스인지, 곡선 코스인지, 물인지, 낭떠러지인지 그 누구도 모르기 때문이다. 대학원에서 좋은 문제를 찾는 것이란, 이러한 어둠 속에서 작은 놀이터를 하나 세워서 인류가 여태껏 도달한 지식의 경계를 확장하는 것이라 할 수 있겠다. 많은 사람이 오랫동안 마음껏 뛰놀 수 있도록 튼튼하고도 놀거리가 가득하면 더욱 좋다.]]></summary></entry></feed>