본문으로 건너뛰기
피드

Hologram v0.7.0 — Erlang 포팅 96% 달성, 브라우저에서 Elixir 표준 라이브러리 돌리기

frontend 약 4분
vote
0
댓글
북마크

Hologram v0.7.0 릴리스로 Erlang 함수 150개를 추가 포팅하여 커버리지 34%→96% 달성. Elixir 표준 라이브러리 준비도 87%, 700+ 커밋, 49명 기여자 참여. 문자열, 컬렉션, 유니코드 등 주요 기능이 브라우저에서 동작 가능해짐.

  • 1

    Erlang 런타임 커버리지 34%→96%(238개 중 228개 완료), Elixir stdlib 준비도 74%→87%

  • 2

    문자열 처리, 컬렉션, MapSet, 바이너리 연산, 유니코드 정규화 등 브라우저 클라이언트에서 사용 가능

  • 3

    Agent.cast/2 비동기 컴파일로 속도 향상, NixOS 호환성, OPFS 하이브리드 스토리지로 quota 문제 해결

  • 4

    클라이언트 측 ERTS, ETS 기초 지원, 3단계 페이지 스냅샷 저장 인프라 구축

  • Hologram v0.7.0이 릴리스됨 — Erlang 함수 150개를 새로 포팅하여 Erlang 런타임 커버리지가 34%에서 96%(238개 중 228개 완료)로 급상승
  • Elixir 표준 라이브러리 준비도는 74%에서 87%로 성장, 700+ 커밋, 약 3개월 작업, 49명의 기여자 참여

브라우저에서 사용 가능해진 기능

  • 문자열 처리: String.split/3, String.replace/4, String.jaro_distance/2, titlecase 등
  • 컬렉션: :lists 기반 Enum/List 함수 — 정렬, 필터링, 폴딩, 키워드 리스트 연산
  • 집합: :sets 기반 MapSet — 생성, 필터, 교집합, 합집합, 멤버십 확인
  • 바이너리 연산: 패턴 매칭, 분할, 치환, 검색
  • 유니코드: NFC, NFD, NFKC, NFKD 정규화 및 grapheme 클러스터 분할
  • 수학/시간/파일 경로: Float.ceil, 로그, 지수 함수, 단조 시간, 시스템 시간, Path.join 등

주요 개선 사항

  • Agent.cast/2 기반 비동기 컴파일러 뮤테이션으로 컴파일 속도 향상
  • NixOS 호환성 추가 — 동적 링크된 Biome 바이너리 실행 불가 시 시스템 설치 버전으로 자동 폴백
  • 크로스 플랫폼 setup 태스크 (macOS, Linux, Windows)

버그 수정

  • 페이지 내비게이션 시 DOMException: quota exceeded 문제 — OPFS 하이브리드 스토리지 전략으로 해결
  • :maps.remove/2, :maps.put/3에서 원본 맵이 변경되던 불변성 위반 수정
  • 템플릿 보간(interpolation)이 String.Chars 프로토콜을 사용하도록 수정, 서버/클라이언트 동작 일치

인프라

  • 클라이언트 측 ERTS: 노드 테이블, 시퀀스 생성기, 바이너리 패턴 레지스트리, UTF-8 디코더 포함
  • ETS 기초 지원 — 앱에서 이탈 시에도 상태 보존
  • 3단계 페이지 스냅샷 저장: 인메모리 캐시 → 비동기 OPFS 영속화 → 세션 스토리지 폴백

브라우저에서 Elixir/Erlang 생태계를 거의 완전하게 재현하려는 야심찬 프로젝트가 실제로 96% 커버리지에 도달하면서, 풀스택 Elixir 웹 개발의 가능성이 현실화되고 있음.

댓글

댓글

댓글을 불러오는 중...

frontend

타입스크립트 7.0, Go 네이티브 포팅으로 빌드가 8~12배 빨라졌다

마이크로소프트가 타입스크립트 7.0을 출시하면서 기존 자바스크립트 기반 구현을 Go로 네이티브 포팅했다. 전체 빌드는 평균 8~12배 빨라졌고, VS코드 빌드는 125.7초에서 10.6초로 줄었으며, 슬랙은 CI 타입 검사 시간을 7.5분에서 1.25분으로 낮췄다.

frontend

타입스크립트 7 공개, 고 포팅으로 빌드가 최대 10배 이상 빨라짐

마이크로소프트가 고(Go)로 네이티브 포팅한 타입스크립트 7을 공개했다. 전체 빌드는 보통 8~12배 빨라지고, VS 코드 코드베이스에서는 125.7초가 10.6초로 줄었으며, 편집기 첫 오류 표시도 17.5초에서 1.3초 미만으로 내려갔다.

frontend

“98% 지원”이 생각보다 별로 안 넉넉한 이유

브라우저 기능 지원률 98%는 얼핏 높아 보이지만, 실제 서비스에서는 2%의 사용자를 깨진 화면 앞에 세우는 숫자일 수 있다는 글이다. 특히 일반 통계와 내 서비스 방문자 분포는 다를 수 있고, 실제 사례로 어떤 사이트는 최신 중첩 CSS 기능 지원 브라우저가 방문자의 약 70%뿐이었다.

frontend

메타, AI가 읽고 쓰는 디자인 시스템 ‘Astryx’ 오픈소스로 공개

메타가 내부 디자인 시스템 Astryx를 오픈소스로 공개했다. React와 StyleX 기반의 150개 이상 접근성 지원 컴포넌트, 디자인 토큰, 테마, 템플릿, CLI를 제공하며, 특히 AI 에이전트가 컴포넌트 구조를 이해하고 UI를 생성·수정할 수 있도록 MCP 서버까지 포함한 점이 핵심이다.

frontend

shadcn/ui, 기본 컴포넌트 라이브러리를 Radix에서 Base UI로 변경

shadcn/ui가 새 프로젝트의 기본 컴포넌트 라이브러리를 Radix가 아니라 Base UI로 바꿨어. Radix 지원은 계속되지만, Base UI가 안정화됐고 주간 다운로드 600만 이상, shadcn/create 신규 프로젝트 선택 비율 2대1이라는 이유로 기본값을 바꾼 거야. 동시에 채팅 UI용 MessageScroller와 관련 컴포넌트, headless 패키지인 @shadcn/react도 공개됐어.