최근 수정 시각 : 2018-04-26 14:00:22

HDHL


1. 개요2. 역사3. 명령어4. 예제

1. 개요

Hard Data Hard Language의 약자로 원래는 HD라고 이름을 지으려 했으나 HD라고만 하면 HD의 다른 뜻과 구분이 안가기 때문에 HDHL이 되었다.
난해한 프로그래밍 언어중 하나이며, 웹사이트에서 쓸 수 있다. 혹은 자기 컴퓨터

2. 역사

'Hackers'라는 그룹이 실제로 쓰일 수 있는 난해한 프로그래밍 언어를 만들기위해 프로젝트 설립.

3. 명령어

총 15개의 명령어가 있다.
  • <: 이전 포인터
  • >: 다음 포인터
  • (: 이전 주소
  • ): 다음 주소
  • =: 값 넣기
  • #: 프린트
  • @: 아스키 코드 값 넣기
  • &: 현재 값 + 문자열 or 숫자
  • +: 값 증가
  • -: 값 감소
  • { : 반복문(현재 포인터의 값이 0일 때 }으로 이동)
  • } : 반복문(현재 포인터의 값이 0이 아닐 때 {으로 이동)
  • %char%: 값 검색(검색해서 값이 나오면 0 반환)
  • ;: 프로그램 종료
  • .: 구문 분리

어떤 항목에서 본 기분이 든다. 좀 늘어나긴 했지만.
브레인퍽이랑 비슷비슷한데?

4. 예제

+++.=.).>.++++.=.(.#.).#.;
이 코드의 결과는 34가 나온다.
  • +++.: 현재 포인터의 값에 3을 더한다.
  • =.: 현재 주소에 값을 넣는다.
  • ).: 다음 주소로 이동.
  • >.: 포인터 이동.
  • ++++.: 현재 포인터의 값에 4를 더한다.
  • =.: 값을 넣는다.
  • (.: 이전 주소로 이동.
  • #.: 프린트.
  • ).: 다음 주소로 이동.
  • #.;: 프린트하고 마침.
이렇게 해석된다.