D Language.

요즘 D Language에 빠져 있다. 엇그제 새벽에 처음 접하고 어제 오늘 퇴근후에 Language Spec을 열심히 보구, 코딩 몇줄 해보고 하면서 뭔가 임펙트를 받고 있다.

코드 자체가 C, C++언어와 유사하고, 어찌보면 Java와도 유사하게 보이기도 한다.(자바가 C, C++과 유사하긴 하지만)  무엇보다 가장 좋은건, 내가 좋아하는 C 스타일의 코딩이 가능하고, 게다가  C에서 불편하게만 생각했던 부분에 대한 개선이 많이 이루어 졌다는 것이다.

가비지 컬렉션 기능을 유지하면서, 포인터 연산이 가능하고 임의적으로 malloc free도 가능했다. (C언어의 강력함을 그대로 유지하면서…)
또한 모든 type들이 기본 Propery를 가지고 있어서 편리하게 필요 메서드들을 사용할 수 있었다.

또한 아래와 같은 표현이 가능한데, 배열의 길이를 늘여줌으로서 realloc을 하는 과정을 간단하고 또한 직관적으로 가능하게끔 해놓았다.
하지만 strTitle을 레퍼런스 하는 변수들이 있다면, 복잡해 지겠지만, 일단 직관적이여서 좋다. 정답을 이야기 하자면, 길이를 조정함으로서 이전보다 길이가 더 길어지면 레퍼런스 하는 변수들을 malloc해서 문자열을 카피한 다음에 원래 strTitle의 새로운 길이로 realloc을 하게된다고 한다. 이 순간부터는 레퍼런스가 아닌게 되버린다.

char[] strTitle = "제목";
array.length = 10; // 길이가 10으로 늘어났다.

뭐 이런저런 랭귀지 스팩을 이야기 하자면 한도 끝도 없다.
하지만 C, C++에 익숙한 분들은 D언어는 몇시간 spec잡는데만 시간을 보낸다면 그리 어렵지 않게 개발을 할수 있을것이라 본다. 내가 그랬으니까…

나처럼 포인터를 좋아하고 알골 계열의 언어를 좋아하는 사람에게는 분명히 끌리는 부분이 많을거라는 생각을 해본다.
그리고 솔직히 이 언어 뜰거같다. ^^
일본에서는 D언어에 대한 책이 나올 정도기도 하고.
두루두루 인기는 좋은거 같기도 하다.
2007년들어서 1.0이 발표됨으로 사용량이 급격히 증가된걸 볼 수 있다.

D Language Homepage
D Language Wiki
D Language for GCC
Dsource.org

위의 사이트를 보는것도 좋지만, 이 문서하나면 이놈이 어떻게 돌아가는지 충분히 알 수 있다.

CC BY-NC 4.0 D Language. by from __future__ import dream is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.

이 글은 개발 카테고리에 분류되었고 태그가 있으며 고감자님에 의해 작성되었습니다. 고유주소 북마크.