1P by neo 5일전 | favorite | 댓글 1개

ChipWits의 40주년: 원본 FORTH 코드 오픈 소스화

  • ChipWits의 40주년 기념으로 원본 Mac과 Commodore 64 FORTH 소스 코드를 오픈 소스로 공개함. 이는 8비트 마이크로컴퓨터의 크로스 플랫폼 소프트웨어 개발에 대한 감사를 공유하고자 함.

ChipWits의 역사와 FORTH 선택

  • ChipWits는 1984년 Macintosh에서 처음 출시된 게임 중 하나로, 프로그래밍 로봇을 주제로 한 게임임.
  • 당시 Apple Lisa는 너무 비싸서 MacForthPlus 프로그래밍 언어를 사용하여 개발함.
  • FORTH는 다양한 8비트 마이크로컴퓨터에서 사용 가능하여 포팅에 유리한 언어였음.

다른 플랫폼으로의 포팅

  • Commodore 64로의 포팅은 Super Forth 64로 진행되었으며, 사용자 인터페이스 디자인을 유지하기 위해 조이스틱을 사용한 풀다운 메뉴 시스템을 개발함.
  • Apple II 버전도 FORTH의 변형으로 작성됨.

리뷰와 수상

  • ChipWits는 많은 리뷰와 상을 받았으며, MacUser Editor’s Choice 1986 Award를 포함한 여러 매체에서 호평을 받음.

원본 게임을 에뮬레이션으로 플레이

  • Emularity와 Apple2js 같은 오픈 소스 프로젝트 덕분에 브라우저에서 원본 ChipWits를 플레이할 수 있음.

소스 코드 복구

  • 원본 디스크를 복구하는 과정에서 많은 노력이 필요했으며, 대부분의 데이터가 손상 없이 복구됨.
  • Commodore 64와 Mac 디스크를 읽기 위해 다양한 하드웨어와 소프트웨어를 사용함.

소스 코드 탐색

  • GitHub에서 ChipWits의 FORTH 소스 코드를 확인할 수 있으며, FORTH 코드는 매우 간결하고 우아함.
  • Mac 버전의 소스 코드는 약 3,000줄로, 현대화된 포트는 이미 35,000줄의 C# 코드로 구성됨.

ChipWits 리부트에 대한 도움 요청

  • 원본 FORTH 버전의 오픈 소스 릴리스에 집중하고 있지만, 현대화된 버전도 개발 중임.
  • 새로운 버전은 프로그래머의 새로운 세대를 영감을 주기를 희망함.
  • GitHub 저장소에서 여러 이슈를 생성하였으며, 커뮤니티가 유지하는 FORTH 버전의 ChipWits를 목표로 함.

참여 요청

  • ChipWits Discord 서버에 참여하여 프로젝트에 도움을 줄 수 있음.
Hacker News 의견
  • FORTH를 사용하여 ChipWits를 코딩한 이유에 대한 글을 작성했음

    • FORTH는 오래된 컴퓨터에서 중간 속도의 언어로 자리 잡았음
    • ValForth는 Atari ST 생태계에서 초기 크로스 플랫폼 FORTH 구현 중 하나였음
    • 8비트 컴퓨터에서도 Elcomp의 FORTH가 있었고, 관련 서적도 존재했음
    • Leo Brodie의 "Starting FORTH"는 여전히 훌륭한 입문서임
    • BASIC을 배우면서 다른 프로그래밍 메타포를 접할 수 있었음
    • 80년대 아이들에게는 사고를 확장하는 경험이었음
  • TumbleForth라는 프로젝트도 흥미로워 보임

    • 이 프로젝트를 경험한 사람이 있는지 궁금함
  • 어릴 적 이 게임을 간절히 원했음

    • 나이가 들었다는 느낌이 듦
  • Human Resource Machine을 대부분 즐겼음

    • ChipWits와 유사한 개념에 기반한 게임임
    • 두 게임을 비교한 경험이 있는지 궁금함
  • Commodore 64에서 많이 플레이했음

    • 독특하고 호기심을 자극하며 재미있었음
  • FORTH는 perl과 같은 일회성 작성 언어로 보임

    • 작성과 빌드가 쉽지만, 시간이 지나면 코드 이해가 어려움
    • 매우 빠르고 효율적임
  • ChipWits의 현대 버전은 어떤 언어로 작성되었는지 궁금함