24P by xguru 3달전 | favorite | 댓글 4개
  • 새로운 브라우저 엔진을 개발하는 프로젝트
    • 기존의 브라우저 엔진들은 C++로 개발되어 크고 느리며 유연하지 못한 문제가 있음
    • Lexbor는 C로 개발되어 이식성, 모듈화, 속도, 독립성, 표준 준수 등을 목표로 함
  • Lexbor의 주요 특징:
    • HTML, CSS, Encoding, URL, Punycode, Unicode 등 다양한 모듈로 구성됨
    • 각 모듈을 독립적인 라이브러리로 사용 가능
    • 외부 의존성이 없음
    • 다양한 플랫폼으로 이식이 용이함
    • C99를 지원하며 매우 빠른 속도를 자랑함
  • HTML 모듈의 특징:
    • HTML5 스펙을 완전히 준수함
    • 엘리먼트와 속성을 조작하는 기능 제공
    • 파편화된 HTML 파싱 지원 (innerHTML)
    • 청크 단위 파싱 지원
    • 2억 개 이상의 실제 HTML 페이지로 테스트됨
    • DocumentParser의 두 가지 파싱 방식 제공
    • 인코딩 자동 판별 기능
    • 태그 속성과 <style> 태그 내의 CSS 스타일 파싱 기능
  • CSS 모듈의 특징:
    • CSS Syntax 모듈을 완전히 준수함
    • 셀렉터와 스타일시트 트리(CSSOM) 지원
  • Lexbor는 CentOS, Debian, Fedora, RHEL, Ubuntu 등 다양한 OS의 바이너리 패키지를 제공함
  • macOS에서는 Homebrew와 MacPorts를 통해 설치 가능
  • 소스코드는 CMake를 이용해 빌드 가능
  • liblexbor는 모든 모듈이 포함된 단일 라이브러리이고, 각 모듈별로 liblexbor-{module} 라이브러리가 있음
  • Elixir, Crystal, Python, D, Ruby 등 다양한 언어의 바인딩과 래퍼가 존재함

메인화면에 "기존의 브라우저 엔진들은 C++로 개발되어 크고 느리며 유연하지 못한 문제가 있음 ..." 까지만 나오길래...

뭐야 또 러스트인가? 싶었는데.... C네요... ㄷㄷㄷ

제 주력 언어라 반갑네요...

C++ 이 느려서 c...
와...c++이 느리다는 생각을 해본적 없는데 저런 세상은 또 다른 모양이네요
굉장합니다

C++이 C보다는 느리긴 하군요..

아니 대체 뭘로 구현했길래 c++ 로 되어 느리다고 하는거야 했는데
C 군요 .....