'C++0x'에 해당되는 글 19

  1. 2010/07/03 My Recent Tweets 20100623 (1)
  2. 2010/06/10 My Recent Tweets 20100604
  3. 2009/11/24 My Recent Tweets 20091120
  4. 2009/10/20 차세대 게임개발 언어로 D에 주목하는 이유 - 2 (6)
  5. 2009/10/01 My Recent Tweets 20090928
  6. 2009/09/19 차세대 게임개발 언어로 D에 주목하는 이유 - 1 (10)
  7. 2009/08/26 My Recent Tweets 20090826
  8. 2009/08/07 잘 알려지지 않은 C++0x의 유용한 기능들 - 마지막 (2)
  9. 2009/07/29 잘 알려지지 않은 C++0x의 유용한 기능들 - 두번째 (2)
  10. 2009/07/27 My Recent Tweets 20090727

My Recent Tweets 20100623

프로그래밍programming



방법론methodology



그래픽스graphics

  • RT nvidiadeveloper: Texture Tools 2.08 now available for download http://bit.ly/bY39kW #graphics #
    • 엔비디아 텍스처 도구가 더욱 강력하게 업데이트 되었군요.
  • RT aqnuep: OpenGL 3.2 Nature Demo updated: http://is.gd/cWzPJ #graphics #
    • Instance Cloud Reduction이라고 저자가 자칭하는 GPU 기반 인스턴스 컬링 기법
  • RT morgan3d: Detailed Microsoft presentation on current Shadow Mapping best practices http://bit.ly/arY2H3 #graphics #
    • Gamefest 2010에서 발표된 슬라이드로 최신 그림자 맵팅 기법들을 잘 정리해서 설명해줍니다.
  • RT repi: RT tuan_kuranes: Graphics Trick: Distributing stuff http://bit.ly/bauPah #graphics #
    • 이미지의 효과적인 샘플링에 필수적인 표본 분포 기법을 잘 정리해놓은 블로그글
  • RT repi: RT SemiAccurate: part 2 Andrew Richards and Tim Sweeney http://bit.ly/9STCj0 #graphics #
    • 그래픽스 하드웨어의 미래에 대한 두 전문가의 대담. 구린 음질로 알아듣기가 상당히 힘들군요...
  • RT CDemerjian: Part 1: http://www.semiaccurate.com/2010/06/14/tim-sweeney-and-andrew-richards-debate-future-graphics-hardware/ #graphics #
    • 위 대담의 첫번째 동영상. 방금 확인해보니 다섯번째까지 나왔더군요.
  • RT jgkim999: Geeks3D.com - DirectX 11: Microsoft GameFest 2010 Presentations Download Links http://bit.ly/cYlQNh #graphics #
    • 기타 GameFest 2010 강연자료를 받을 수 있는 곳
  • RT morgan3d: New algorithm for dashed & other stylized 3D lines that doesn't cause swimming under animation: http://bit.ly/aITRph #graphics #
    • 비실사적 렌더링 관련 논문
  • RT repi: Texture Compression of Light Maps using Smooth Profile Functions paper http://goo.gl/xtTc uses test content from Mirr... #graphics #
    • 조명맵의 압축에 관한 최신 논문
  • Fast and Accurate Single-Pass A-Buffer using OpenGL 4.0: http://bit.ly/bpu04x #graphics #
    • OIP(Order Independent Transparency)를 위한 OpenGL 4.0 기반의 '단일 패스' A-Buffer 기법
  • RT ChristinaCoffin: RT ivanassen: MLAA on the GPU: http://bit.ly/bdVeil #rendering #graphics #
    • 최근 각광을 받고 있는 안티알리아싱 기법인 MLAA의 GPU 구현에 관한 논문
  • RT repi: Nvidia Parallel Nsight June 2010 Beta out: supports DX11, shader debugging, frame profiling/debu... http://bit.ly/90pL0J #graphics #
    • 유용해보이는 엔비디아의 또다른 디버깅 및 프로파일링 도구
  • RT meshula: Updated my old page on SSAO shading with more recent information and links. (fixed link :) #fb http://bit.ly/d74K2u #graphics #
    • SSAO 기법에 다양한 변종들에 관한 깔끔한 정리
  • RT meshula: RT @_osa_: Two Methods for Fast Ray-Cast Ambient Occlusion: http://www.tml.tkk.fi/~samuli/ (via syoyo mattpharr) :) #graphics #
    • 유로그래픽스 2010에 실린 Ambient Occlusion에 관한 논문


병렬성parallelism



게임개발gamedev

  • RT SnappyTouch: RT mysterycoconut New blog post "Levels" http://bit.ly/cNO2Bf, in which I manage to not explain a thing about H.. #gamedev #
    • 한 인디게임개발자의 게임개발에 관한 실용적 조언
  • RT morgan3d: Board/Video gaming blog from new developer, 10x10 Room, with inside details of their design ... http://10x10room.com/ #gamedev #
    • 신생 비디오/보드 게임개발사 블로그
  • RT repi: RT NVIDIAGeForce: Download the Final Fantasy XIV Online Benchmark here:http://bit.ly/aIOl8I #gamedev #
    • 얼마 전 E3에서 공개된 파이널판타지 XIV 온라인 벤치마크 다운로드 링크
  • RT jacking75: DirectX SDK (June 2010) 공개. VS2005 지원안함, VS2010은 수동으로 등록 필요. SDK의 DirectSetup WinXP SP2 지원안함 http://bit.ly/a34LGH #gamedev #
  • RT young_writing "Oh my God! What do we do? Better do nothing." Gamasutra - StarCraft II: Building On The Beta http://goo.gl/X7DR #gamedev #
    • 블리자드의 스타크래프트 2 베타 테스트에 대한 유용한 인터뷰
  • RT SnappyTouch: Interested in contributing to Game Engine Gems 2? Submit your proposal here: http://bit.ly/bitUrS #gamedev #
    • 책 Game Engine Gems 2 글 기고 신청을 받고있군요.


기타etc





* 이 포스트는 blogkorea [블코채널 : 웹, 컴퓨터, it에 관련된 유용한 정보 및 소식] 에 링크 되어있습니다.


크리에이티브 커먼즈 라이선스
Creative Commons License

'Tweets' 카테고리의 다른 글

My Recent Tweets 20100623  (1) 2010/07/03
My Recent Tweets 20100604  (0) 2010/06/10
My Recent Tweets 20100226  (0) 2010/03/02
My Recent Tweets 20100208  (0) 2010/02/10
My Recent Tweets 20100118  (0) 2010/01/19
My Recent Tweets 20100104  (0) 2010/01/05
Trackback 0 Comment 1

My Recent Tweets 20100604

프로그래밍programming

방법론methodology

그래픽스graphics
  • RT morgan3d: I released the details of the colored transparent shadow work I did a t NVIDIA: http://bit.ly/cgJ973 #graphics #
    • 유색 그림자 기법에 관한 최신 글
  • RT msinilo: Humus on EDRAM: http://www.humus.name/index.php?ID=309 (good rant) #graphics #
    • Xbox360에 쓰여 유명한 EDRAM에 관한 의견
  • RT meshula: Screen space in-scattering demo. #fb http://bit.ly/ajPBP9 #graphics #
    • 화면 공간 in-scattering 기법 GL 데모
  • RT aras_p: Bump Mapping Unparametrized Surfaces on the GPU: http://bit.ly/9N3XiE #graphics #
    • 게임개발사 너티독의 개발자가 쓴 범프맵핑 기법에 관한 논문
  • Why Intel Larrabee Really Stumbled: Developer Analysis: http://goo.gl/YLY2 #graphics #
    • 최근 취소된 인텔 라라비에 대한 분석
  • RT meshula: Good looking DOF and HDR effect using DX11 features. #fb http://bit.ly/cHtMlq #graphics #
    • DX11 기능을 이용한 피사계 심도 및 HDR 효과 데모
  • RT tatsuma_mu: SIGGRAPH 2010 : Technical Papers Trailer http://bit.ly/ad8EiN #graphics #
    • 시그래프 2010 기술논문 트레일러
  • RT meshula: Ray-Box Intersection algo v/ tuan kuranes http://bit.ly/avgUGU #graphics #
    • 광선추적렌더링에 필수적인 광선-상자 교차 검출 알고리즘에 관한 논문
  • RT aras_p: New blog post: Compiling HLSL into GLSL in 2010 http://bit.ly/amFH2c #graphics #
    • HLSLGLSL로 컴파일하기

병렬성parallelism
  • RT a_williams: RT mfeathers: The resurgence of parallelism (interesting discussion of determinacy): http://bit.ly/civUkr #parallelism #
    • 새롭게 각광 받는 병렬성에 관한 CACM
  • RT IntelDevTools: Dr_Dobbs: A Design Pattern Language for Engineering (Parallel) Software http://bit.ly/c8fymF #parallelism #
    • 병렬 소프트웨어 개발을 위한 패턴 언어
  • RT IntelDevTools: Announcing Intel Concurrent Collections for Haskell 0.1 http://bit.ly/aqXw2C #parallelism #
    • 인텔에서 개발한 해스켈용 병렬 컬렉션 라이브러리
  • RT a_williams: My latest article on enforcing associations between mutexes and data is now up at http://bit.ly/d6IcnP #parallelism #
    • 뮤텍스와 그가 보호하는 데이터 간의 연동을 강제하는 기법에 관한 글
  • RT IntelDevTools: “Structured Parallel Programming with Deterministic Patterns” http://bit.ly/cxGrHk #parallelism #
    • 역시 패턴 기반의 병렬 프로그래밍에 관한 인텔 글

게임개발gamedev
  • RT bjoernknafla: RT niklasfrykholm: New blog post: "Avoiding Content Locks and Conflicts" -- http://bitsquid.blogspot.com/ #gamedev #
    • 게임에서 XML이나 JSON 기반의 컨텐츠의 충돌 처리 및 병합에 관한 글
  • RT rigmania: NDC 후기입니다. 아직 몇 개 남았지만 여기까지 정리해서 올립니다. 이제 제 블로그도 원래 취지에 맞게 걸그룹 소식을 올리도록 하... http://parkpd.egloos.com/tag/NDC #NDC_10 #gamedev #
  • RT repi: "How data rules the world: Telemetry in Battlefield Heroes" from STHLM Gamedev Forum is now up on... http://bit.ly/b4AaVg #gamedev #
    • 스톡홀름 게임개발자 포럼에서 전도유망한 스웨덴 개발사 DICE의 멤버가 발표한 슬라이드
  • RT themadpeacock: Check this video out -- Will Wright Keynote at GameTech 2010 http://bit.ly/9MVQ4y #gamedev #
    • 저도 아직 못본...;
  • RT repi: Posted the updated slides for my "Parallel Futures of a Game Engine (v2.0)" talk I did @ STHLM #gamedev Forum http://bit.ly/cwTc5z #
    • 역시 스톡홀름 포럼에서 발표된 게임엔진의 병렬화에 관한 발표자료
  • RT niklasfrykholm: "Practical Examples in Data Oriented Design" -- slides from my talk at Sthlm #gamedev Forum: http://bit.ly/cLdPLA #
    • 요즘 게임 개발에서의 핫트렌드 중 하나인 데이터 지향 설계에 관해 쉽게 설명해줍니다.
  • RT imqwerty2: 데브캣 스튜디오 Publications Blog가 오픈하였습니다. http://bit.ly/csYEvg #gamedev #
    • 멋집니다, 데브캣!
  • RT ChristinaCoffin: The Aesthetics of Unique Video Game Characters: http://bit.ly/aIuP35 by Shaylyn Hamm http://bit.ly/b9eMGG #Art #gamedev #
    • 비디오 게임 캐릭터의 미학
  • RT eiaserinnys: NDC2010 "완벽한 MMO 클라이언트 설계에의 도전 : M2 아키텍처 리뷰" 강연 자료를 공개합니다. http://bit.ly/bHlPjc 고의성 낚시 제목에 고통받으신 많은 분들께 죄송할 뿐이고;;; #gamedev #
  • RT tatsuma_mu: RT CrEEp3r Cryengine 2 Fantasymodification - http://bit.ly/d66fH1 #leveldesign #gamedev #gamedesign #
    • 아름다운 판타지풍의 CryENGINE 2 모드
  • RT tatsuma_mu: http://bit.ly/9IA6rV google pacman source. #gamedev #
    • 얼머전 구글 로고에 데뷔한 인터액티브 팩맨 소스코드
  • RT Wolfire: Reviewing Sculptris http://bit.ly/9NQD09 #gamedev #
    • 지브러쉬 등에 견줄만한 공짜 모델링 툴
  • RT Wolfire: Automatic navigation meshes http://bit.ly/dqZqxF #gamedev #
    • 괜춘한 네비게이션 메쉬 라이브러리에 대한 소개

기타etc
  • “Doing nothing is better than being busy doing nothing.” ~Lao Tzu #quote #
  • RT DeliciousHot: Kaleidoscope — File comparison for Mac http://is.gd/cz8gn #
    • 깔삼해보이는 맥용 파일 비교 툴. 맥에서 개발하시는 분에게 강추
  • RT sioum: The Secret Powers of Time http://bit.ly/as8RJu #
  • RT dailyrt: Hello world! http://chirrps.com is a revolutionary Twitter search engine combined with the best Twitter directory on the planet #
  • RT nicolerichie "I'd rather regret the things I've done than regret the things I haven't done." - Lucille Ball (http://chirrps.com) #
  • 유럽 출시 둘째날, 드디어 iPad 겟! (미국으로 신혼여행 떠난 동료에게 부탁했었으나, SF 애플스토어에선 iPad가 일시 품절이란 소식에...) #
  • RT tferriss: "Letters from a Stoic" free (a large portion) on Google Books: http://ping.fm/kvMP1 (Thx, Craig!) #
  • RT PsychodudeCom: 50 Useful Blogs for Writers: http://bit.ly/bZklhC #
    • 영어 글쓰기에 유용한 블로그 50선
  • RT themindfulist: "Pain is inevitable. Suffering is optional." Any problems in your life this quote applies to? (Hint: ALL of them!) #quote #
  • RT Twitter_Tips: It's Official: Apple Is Now Worth More Than Microsoft: http://j.mp/9QiXGM #
  • lol RT rickasaurus: Top 10 Things That Annoy Programmers http://is.gd/cpUYA #
    • 프로그래머를 화나게 하는 10가지 ㅎㅎ
  • What now is always what I want. - JJ #quote #
  • RT esstory: Stretching Clock http://shar.es/mj6cf - 자다 일어 나서 스트레칭 먼저 하면 개운하겠네요 이런 베게 아주 좋아 ㅎ #
  • RT DeliciousHot: Top 40 Useful Sites To Learn New Skills http://is.gd/cocmX #
  • RT go2web20: Soluto: Anti-Frustration Software http://bit.ly/Soluto #Israel #Go2web20 #
    • PC 문제 해결을 위한 흥미로운 접근
  • RT iwisenet: As I have not worried to be born, I do not worry to die.-F.García Lorca #quote http://bit.ly/dw0Qnh #
  • RT princeofcode: Duck Duck Go, a search-engine for programmers: http://bit.ly/a2qARB (via hackernewsbot) #
    • 소스 코드 검색에 뛰어난 새로운 검색 엔진
  • RT PsychodudeCom: Running A Software Business On 5 Hours A Week: http://bit.ly/9ZGK39 #
    • 일주일에 5시간 투자로 소프트웨어 비즈니스 꾸려나가기에 관한 진솔하고 유용한 글
  • RT mushman1970: RT 기대가 큽니다. 글고 수고 많았습니다. BKLove: 트위터 매쉬업 서비스 트윗믹스가 오픈했습니다. 대한민국에서 가장 뜨거운 이슈를 확인해보세요 :) http://tweetmix.net/" #



 * 이 포스트는 blogkorea [블코채널 : 웹, 컴퓨터, it에 관련된 유용한 정보 및 소식] 에 링크 되어있습니다.  


크리에이티브 커먼즈 라이선스
Creative Commons License

'Tweets' 카테고리의 다른 글

My Recent Tweets 20100623  (1) 2010/07/03
My Recent Tweets 20100604  (0) 2010/06/10
My Recent Tweets 20100226  (0) 2010/03/02
My Recent Tweets 20100208  (0) 2010/02/10
My Recent Tweets 20100118  (0) 2010/01/19
My Recent Tweets 20100104  (0) 2010/01/05
Trackback 0 Comment 0

My Recent Tweets 20091120


프로그래밍
programming


개발방법론methodology

그래픽스graphics

병렬성parallelism
  • RT SoftTalkBlog: Universal cloud for programmers - full details on Intel's new Parallel Universe - http://bit.ly/2JGynD #intel #parallelism #
    • 인텔이 제시하는 병렬 테스팅 플랫폼
  • RT programmingjoy: QuickThread: A New C++ Multicore Library #programming http://bit.ly/gKAQJ #parallelism #
    • 새로운 C++ 멀티코어 라이브러리
  • RT bjoernknafla: Via ACM: #SC09 papers online (public): http://bit.ly/3alCA4 (choose "Papers" for "Selected Activities") #parallelism #
    • 역시 얼마 전 있었던 SuperComputing09 발표 논문들
  • RT SoftTalkBlog: Parallel programming tips from tibor19 at TechEd - http://bit.ly/4vACYF #tee09 #parallelism #
    • 병렬 프로그래밍 팁
  • RT bjoernknafla: RT rickmolloy: new blog post describing the Concurrency Runtime samples for Beta2 http://bit.ly/27wW0k #parallelism #
    • VS2010 베타2와 함께 나온 새로운 Concurrency Runtime 예제들
  • RT SoftTalkBlog: TechEd: How the Concurrency Coordination Runtime helps with a new parallel programmin... http://bit.ly/2OCLny #parallelism #
  • RT repi: Slides for my "Parallel Futures of a Game Engine" keynote is now up! Get it while it's hot: http://repi.se #parallelism #gamedev #
    • 게임 엔진 병렬화의 미래에 대한 매우 심도 있는 전망

게임개발gamedev
  • RT inCrysis: CryEngine 3 now available for FREE for educational institutions http://bit.ly/uqZeh #gamedev #
  • RT bjoernknafla: RT mlesniak: Video of the tools for the Love MMORPG: Totally impressive. Just Wow. http://bit.ly/14YkqU #gamedev #
    • Love라는 이름의 MMORPG의 매우 인상적인 툴 시연
  • RT tatsuma_mu: External Lightmapping Tool for Unity released. http://bit.ly/1mGDy9 #gamedev #
  • RT meshula: Wide ranging tome! RT tatsuma_mu: Core Techniques and Algorithms in Game Programming http://bit.ly/ivTye #gamedev #programming #
    • 게임 프로그래밍에서의 핵심 기법과 알고리즘에 대한 광범위한 자료
  • RT repi: RT msinilo: *Great* GDC 2k9 presentation on state-based scripting in Uncharted2 - http://bit.ly/1au88G #programming #gamedev #
    • Uncharted2에 쓰인 상태 기반 스크립팅에 대한 슬라이드 자료

기타etc
ashlin, february 2008
ashlin, february 2008 by ∆ matt caplin ∆ 저작자 표시비영리변경 금지


p.s. 최근 블로깅에 약간 슬럼프 상태입니다... ㅠㅠ 그래서 업데이트가 많이 뜸했죠. 얼마 전 100,000 카운트도 돌파하고 했는데... 좀 더 분발해 보겠습니다. :)

* 이 포스트는 blogkorea [블코채널 : 웹, 컴퓨터, it에 관련된 유용한 정보 및 소식] 에 링크 되어있습니다.


크리에이티브 커먼즈 라이선스
Creative Commons License

'Tweets' 카테고리의 다른 글

My Recent Tweets 20100104  (0) 2010/01/05
My Recent Tweets 20091207  (2) 2009/12/10
My Recent Tweets 20091120  (0) 2009/11/24
My Recent Tweets 20091104  (0) 2009/11/06
My Recent Tweets 20091021  (0) 2009/10/22
My Recent Tweets 20090928  (0) 2009/10/01
Trackback 0 Comment 0

차세대 게임개발 언어로 D에 주목하는 이유 - 2

이전글: 차세대 게임개발 언어로 D에 주목하는 이유 - 1



람다

함수형 언어의 대두와 함께 최근 각종 언어에서 람다의 지원이 유행인데요. C++0x에서도 지원 예정입니다. D는 역시 아주 깔끔하고 간소한 문법으로 익명 함수를 지원하고 있습니다.

위에서 다음 줄에 주목해주세요.

기본적으로 다음과 같은 문법으로 정렬 시의 정렬 함수를 지정해 줄 수 있습니다.

!(...) 안의 다음 부분이 실제 람다식입니다.

이와 같이 인자형이나 리턴 타입을 따로 명시해줄 필요도 없습니다. 또한, 전역 변수가 아닌 freqs 변수를 람다 함수 내에서 접근하고 있는데요. 이러한 기능으로 매우 강력한 람다식이 가능해집니다. 보통은 이런 기능을 위해 성능이 희생되는 경우가 많은데, D언어는 "지역 인스턴스화(local instantiation)"이라는 고유의 기능으로 간접 호출 없이 이러한 기능을 제공하고 있습니다.

참고자료
How Nested Functions Work - part1 by Walter Bright
How Nested Functions Work - part2 by Walter Bright


템플릿

C++에서 템플릿은 고급 기법에 속합니다. 대부분의 프로그래머들은 형 매개변수화 정도로만 템플릿을 사용하고, 코드생성엔진으로 템플릿 메타프로그래밍을 활용하는 것은 선택받은(?) 일부를 위한 흑마법의 영역으로 남겨져 있습니다. D는 이러한 템플릿의 강력함을 쉽게 활용할 수 있도록 설계되었습니다.
어떤 언어가 제너릭 프로그래밍을 제대로 지원하는지 평가하는데 일명 STL의 창시자인 Alexander Stepanov가 제시한 "스테파노프의 리트머스 테스트"가 유용합니다. 해당 언어 내에서 다음 세 함수를 구현할 수 있느냐가 바로 그 테스트입니다.
1. n>=2 의 원소들 중에서 최대값을 알려주는 제너릭 함수. 이 함수는 모든 정렬 가능 타입에 적용할 수 있어야 한다.
2. 두 값을 효율적으로(예를 들면, 상수 메모리 소모) 뒤바꾸는(swap) 제너릭 함수
3. 임의의 컬렉션에서 한 아이템을 선형 검색하는 제너릭 함수. 컬렉션은 빌트인 타입일 수도 혹은 언어가 정의한 일련의 프로토콜을 만족하는 사용자정의 타입일 수도 있다.
D로 이러한 것들이 어떻게 가능한지 간단히 결과만 보여드리겠습니다.

1. max 제너릭 함수

함수 정의 중간에 나오는 if가 신기하실 겁니다. 사용자가 크기 비교가 불가능한 타입들을 max 함수의 두 인자로 주었을 때, 깔끔한 에러 메시지를 출력하기 위해 제한을 거는 역할을 합니다. C++0x에 도입될뻔했던 concept의 기능을 어느정도 수행한다 보시면 되겠습니다.
아래와 같이 인자를 세 개 이상 받는 경우도 간단히 처리가능합니다.


2. swap 제너릭 함수


의외로 각 경우에 모두 최적으로 돌아가도록 구현하기 매우 힘든 경우 중 하나입니다. D에서는 위와 같이 구현하면 되는데요, pointsTo 함수를 어떻게 구현하는지는 설명하지 않겠습니다. (궁금하신 분은 책을 구입해주세요. ^^)

3. linearSearch 제너릭 함수


선형검색 제너릭 함수는 위처럼 D가 기본지원하는 range 개념을 이용해 매우 간단하게 구현됩니다.

참고자료
An Interview with A. Stepanov

이번 회는 여기까지입니다. 사실 짧은 내용과 부족한 글솜씨로 D의 강력함과 깔끔함을 충실히 전달하기가 힘들군요; 책을 사보고 싶은 욕구가 생기실 정도로만 동기부여가 되었으면 좋겠습니다. ^^


기타 참고자료
D (programming language) - Wikipedia


* 이 포스트는 blogkorea [블코채널 : 웹, 컴퓨터, it에 관련된 유용한 정보 및 소식] 에 링크 되어있습니다.


크리에이티브 커먼즈 라이선스
Creative Commons License
Trackback 0 Comment 6

My Recent Tweets 20090928

프로그래밍programming


개발방법론methodology


게임개발gamedev


병행성concurrency
  • Ownership Systems against Data Races: http://su.pr/2VJx33 #C++ #programming #
    • C++에서의 데이터 레이스 방지를 위한 방편 소개
  • Intel Concurrent Collections for C++ 0.4 for Windows and Linux: http://su.pr/32O3pT #programming #concurrency #
    • 인텔에서 발표한 또다른 병행 프로그래밍 도구. TBB 보다 고수준에서 동작하는 도구임.
  • RT SoftTalkBlog: Ct & Cilk++ to be available for developers in 2010, according to Inte... at http://bit.ly/3dZ06q #programming #concurrency #
  • RT programmingjoy: Ottoman: A lightweight,reliable key-value store with multi-version concurrency control #programming http://bit.ly/1YqkL8 #
  • RT programmingjoy: Faking Fibers with Grand Central #programming http://bit.ly/15fAnV #concurrency #
  • 역시 애플의 새 운영체제 스노우레오파드와 함께 유명해진 Grand Central Dispatch에 대한 글
  • RT DeliciousHot: Scala vs Clojure – Round 2: Concurrency! « Best In Class – The Blog http://is.gd/3oMTy #programming #
    • JVM 기반 두 함수형 언어 ScalaClojure의 병행성 관련 비교글


그래픽스graphics


트위터twitter


기타etc
  • RT programmingjoy: Apple and Intel team up on Light Peak - A 10Gb/s optical port intended to replace USB, Firewire etc. http://bit.ly/6rAGz #
  • RT ohyecloudy: Secrets of Simplicity - 후~ slideshare에 슬라이드 고수들이 역시 많군요. 단순하게 만드는 4가지 방법을 소개하고 있습니다. http://digg.com/u3DDl0 #
  • RT channyun: 오픈뱅크 2009 http://ff.im/-8yBD5 #
  • RT gamearchitect: 41 Image and Icon Search Engines: http://bit.ly/1fWqyI #
  • RT chanjin: 창조학교의 칙센미하이 멘토와 함께 긍정심리학 분야의 대가인 마틴 셀리그먼의 '긍정심리학을 말하다.'입 니다. http://j.mp/p2MHf 역시 TED의 동영상입니다. ^_^ #
  • RT gamearchitect: 10 Revealing Infographics about the Web: http://bit.ly/S4xFu #
  • RT isotype: RT pythagoras0: 구글 닥스도 이제 수식지원을 하는군요. 웹상의 수식표현 경연대회 http://bit.ly/eAWpu 어떤 녀석이 예쁜가요. (할일이 느는 느낌이다.) #
  • RT seungwoonlee: Yammer for Outlook : http://bit.ly/zbpd4 : 오 야머를 아웃룩에서 ... 이제 야머도 좀 더 활용을? ^^; #
  • RT programmingjoy: Sublime Text editor for Windows (check out its "minimaps") #programming http://bit.ly/2OfAAG #
    • 앞으로의 발전이 기대되는 깔끔한 텍스트편집기
  • RT RyanWiancko: http://bit.ly/iHL40 - Utah's little experiment with 4 day work weeks is proving a success. Less energy used, happier wor... #
    • 이젠 주4일 근무인가요? lol
  • RT Dapy: paperinz™ 팔로워 분의 사진들을 내트위터 배경 이미지로 사용하기 - Twilk http://paperinz.com/1308 #
  • RT sioum: UCLA의 Terrence Tao 교수가 올해 국제수학올림피아드 50주년 기념 행사에서 고등학생 상대로 소수에 대하여 강연한내용을 논문으로 정리하였네요. http://bit.ly/3FnCEi http://bit.ly/qjfzP #
    • 심오하고 흥미로운 소수의 세계


* 이 포스트는 blogkorea [블코채널 : 웹, 컴퓨터, it에 관련된 유용한 정보 및 소식] 에 링크 되어있습니다.


크리에이티브 커먼즈 라이선스
Creative Commons License

'Tweets' 카테고리의 다른 글

My Recent Tweets 20091104  (0) 2009/11/06
My Recent Tweets 20091021  (0) 2009/10/22
My Recent Tweets 20090928  (0) 2009/10/01
My Recent Tweets 20090909  (0) 2009/09/10
My Recent Tweets 20090826  (0) 2009/08/26
My Recent Tweets 20090812  (0) 2009/08/13
Trackback 0 Comment 0

차세대 게임개발 언어로 D에 주목하는 이유 - 1


예전 모회사에서 새 게임 프로젝트를 준비할 때, C++ 대신 D 언어를 심각하게 고려한 적이 있습니다. 3년도 더 된 이야기입니다만... 결국 정식 디버거도 없는 열악한 개발 환경 등을 고려할 때 무리다 판단했었습니다.

그 사이 D도 더디지만 발전하여 D 2.0 스펙이 나왔더군요. 그리고 도 출간 예정입니다. 그것도 C++ 구루의 한명인 Andrei Alexandrescu에 의해서 말입니다. 아직 몇개월이 더 지나야 책이 최종 출간될 것 같습니다만... 저는 출간 전 작성 중인 책을 미리 구입해 볼 수 있는 서비스를 통해 미완성본을 읽어보았습니다.

역시 그였습니다. D 1.0에서도 C++의 가려운 점을 많이 긁어주고 있다 생각했었는데, 그의 합류로 탄생한 D 2.0은 한층 더 발전한 느낌입니다. C++도 차기표준 C++0x로 많은 개선이 예정되어 있으나 그에 견주어도 여전히 매력적입니다.

그래서 차세대 게임개발 언어로서의 D의 강점을 앞으로 몇회에 걸쳐 다뤄볼까합니다. 자, 바로 시작해보죠.
  1. C++, Objective-C와 마찬가지로 C와의 하위호환성을 유지합니다.
    • 이를 통해 게임개발에 필수적인 DirectX, OpenGL 등과 운영체제 API의 활용이 가능합니다.
    • 그 밖에도 많은 공개/상용 C 라이브러리들을 D 언어와 조합하여 쓸 수 있습니다.
    • 마지막 한 방울의 성능까지 짜내야할 부분에서 저수준으로 접근하는 것이 가능합니다.
  2. 언어 차원의 단위테스트/연관배열(일명, 사전)/배열쪼개기 지원

    • Type-generic한 이진검색 구현의 예입니다.
    • 8,9줄에서 파이썬에서와 유사한 배열쪼개기(array slicing) 기능을 확인하실 수 있습니다.
    • C++0x에서와 같은 auto를 통한 타입 유추도 확인하실 수 있죠.
    • unittest 키워드로 아주 간편하게 단위테스트를 작성할 수 있습니다. 이러한 단위테스트들은 컴파일 시 -unittest 인자를 주면 main 진입 전에 자동으로 수행됩니다.
벌써 관심이 가지 않으세요!? 맛보기인 이번 회는 이상으로 마무리하겠습니다. 다음 회에 더욱 매력적인 D의 특성들로 찾아뵙겠습니다. ^^

참고자료

* 이 포스트는 blogkorea [블코채널 : 웹, 컴퓨터, it에 관련된 유용한 정보 및 소식] 에 링크 되어있습니다.  


크리에이티브 커먼즈 라이선스
Creative Commons License
Trackback 0 Comment 10

My Recent Tweets 20090826

Escher a Firenze?
Escher a Firenze? by aldoaldoz 저작자 표시비영리동일조건 변경허락

그래픽스graphics
  • HPG 2009 Report: http://su.pr/3Yl4gr #graphics #
    • 리얼타임렌더링 블로그의 High Performance Graphics 2009 참관기
  • SIGGRAPH 2009: Beyond Programmable Shading: http://su.pr/20WYnh #graphics #
    • SIGGRAPH 2009: Beyond Programmable Shading 의 발표 자료들 얻을수 있는 곳

Geek... / Thanks to all Viewed 7,655 ++
Geek... / Thanks to all Viewed 7,655 ++ by Pipe  저작자 표시

프로그래밍programming
  • RT programmingjoy: Michael C. Feathers: Seven Blind Alleys in Software Design #programming http://bit.ly/7EKfl #
    • "Working Effectively with Legacy Code"의 저자 Michael Feathers가 노르웨이 개발자 컨퍼런스에 발표한 '소프트웨어 설계의 일곱 막다른 골목'
  • The World's Most Mind-Bending Language Has the Best Development Environment: http://su.pr/6jXTdg about "J" #programming language #
  • Lace is a cross-platform build system supporting modular multi-platform cross-compiling projects: http://su.pr/2yF9se #programming #
    • 게임개발을 염두에 두고 만들어진 다플랫폼 빌드 시스템
  • RT programmingjoy: The Programming Aphorisms of Strunk and White #programming http://bit.ly/198DuN #
    • 프로그래밍에 대한 통찰을 주는 글쓰기 책에 관한 소개
  • RT programmingjoy: Clojure vs Scala, Part 2 #programming http://bit.ly/t40r4 #
    • 자바 환경에서 돌아가는 두 함수형 언어에 대한 흥미로운 비교
  • RT programmingjoy: Making Sense of Revision Control Systems - ACM Queue #programming http://bit.ly/1jRrUW #
    • 최근 유행하는 분산버전관리시스템과 기존의 중앙관리식 시스템의 장단점을 명쾌하게 설명해줍니다.
  • RT mike_acton: RT bjoernknafla Great overview slides of low-lvl parallel programming by TonyAlbrecht : http://bit.ly/a2GkO #programming #
    • 저수준 병렬 프로그래밍에 대한 아주 괜찮은 슬라이드
  • RT programmingjoy: On Source Code Annotations #programming http://bit.ly/Bgg8i #
    • "TODO:" 등과 같은 소스 코드 주석에 관한 소고
  • RT a_williams: New blog entry: Multithreading in C++0x part 7: Locking multiple mutexes without deadlock http://bit.ly/1817Ji #programming #
    • C++0x에서의 멀티스레딩에 관한 시리즈글 7번째
  • Dirty Coding Tricks: http://su.pr/6JcbuE #programming #
    • 스케줄에 쫓기면 누가나 한번쯤 저지르게 되는 프로그래밍 미봉책들
  • RT jacking75: Hard Code 라는 책을 오늘 다 봤는데 7장. 경력 개발이라는 모험, 8장. 인간 개조 프로젝트를 가장 재미있게 읽었습니다. 저자가 눈치 안보고 막까고 솔직하게 이야기해서 책이 재미있더군요 #
  • RT bjoernknafla SpreeTree: 'Be Explicit – Assignment Operators & Copy Constructors'. http://spreetree.net/blog/?p=269. #programming #
    • 대입연산자복사생성자의 올바른 사용에 관한 깔끔한 정리
  • What Every Programmer Should Know About Memory: http://su.pr/25vX8Y #
    • 제목 그대로 개발자가 메모리에 관하여 알아야할 모든 것을 정리한 pdf 문서
  • RT rickasaurus: "The Art of Picking Intel Registers" is a very well written article: http://is.gd/2fmnd #programming #
    • 인텔 CPU의 레지스터에 대한 명쾌한 소개. 어셈블리에 관심있는 분들이라면 필독
  • RT a_williams: New blog entry: Multithreading in C++0x part 6: Lazy initialization and double-checked locking wi.. http://bit.ly/8EgLC #
    • C++0x에서의 멀티스레딩에 관한 시리즈글 6번째

Perfection
Perfection by ~jjjohn~ 저작자 표시비영리변경 금지

기타etc
  • Europe's Best Paid Cities: http://su.pr/1No9Sm (Frankfurt is no. 9) #
    • 프랑크푸르트가 유럽에서 아홉번째로 페이가 좋은 곳이라는군요...
  • RT SingleFunction: HTML-To-PDF-Converter is a very easy to use and free HTML to PDF Converter. http://tr.im/x1m5 #
    • 유용해보이는 HTML-To-PDF 변환 웹어플
  • RT SingleFunction: Heapr allows you to search Google, Wolfram Alpha, Twitter, and Flickr all at once... http://tr.im/x1ty #
    • 조합 검색엔진
  • Twinslator - translate before you tweet: http://su.pr/2ywmwP #
    • 트윗 번역기
  • RT spolsky: superuser now open to the public: it's the StackOverflow site for power users. http://superuser.com #
    • 파워유저를 위한 StackOverflow 형식의 소셜 질답 사이트 SuperUser
  • I recommend these guys. bjoernknafla unclebobmartin #followfriday #ff #programming #
    • 프로그래머분들이 팔로우하면 좋은 트위터들
  • RT KageKirin: YouTube - Rage QuakeCon 2009 Trailer http://tinyurl.com/n4hvdb #
    • 얼마전 QuakeCon에서 공개된 id Software의 신작 Rage 트레일러
  • Global Internet Speeds: http://su.pr/2BeEXL 역시 한국인가요. ++b 독일도 나쁘진 않군요... #
  • RT drchoi: 트위터(twitter)에서 원하는 글만 골라내어 매일매일 블로그나 일기장에 기록해 보자 http://drchoi.or.kr/1229 #
    • 저는 아직 파이썬 스크립트를 쓰고 있습니다만, 지금 이 글처럼 트윗글들을 별도 정리해놓는데 유용해보이는 서비스


* 이 포스트는 blogkorea [블코채널 : 웹, 컴퓨터, it에 관련된 유용한 정보 및 소식] 에 링크 되어있습니다.


크리에이티브 커먼즈 라이선스
Creative Commons License

'Tweets' 카테고리의 다른 글

My Recent Tweets 20090928  (0) 2009/10/01
My Recent Tweets 20090909  (0) 2009/09/10
My Recent Tweets 20090826  (0) 2009/08/26
My Recent Tweets 20090812  (0) 2009/08/13
My Recent Tweets 20090806  (0) 2009/08/06
My Recent Tweets 20090727  (0) 2009/07/27
Trackback 0 Comment 0

잘 알려지지 않은 C++0x의 유용한 기능들 - 마지막

잘 알려지지 않은 C++0x의 유용한 기능들 - 첫번째
잘 알려지지 않은 C++0x의 유용한 기능들 - 두번째



널포인터nullptr
정수 0 이 아닌 널 포인터 지칭 전용의 리터럴 nullptr가 생겼습니다.


날 문자열 리터럴raw string literals
문자열에서 특수문자를 나타내기 위해 백슬래쉬로 이스케잎 처리 해주는 것은, 정규표현식 등에서 매우 번거로운 작업이 됩니다. (정규표현식의 경우 캐릭터 클래스라는 것에서 별도 용도로 백슬래쉬를 쓰기 때문이죠.) 가령, 정규표현식에서 백슬래쉬로 분리되어 있는 두 단어를 나타내는 \w\\w를 문자열로 표현하려면 다음과 같이 해야 합니다.

날 문자열 리터럴을 사용하면 다음과 같이 표현 가능합니다.

이 때, 그럼 문자열 내에 ]" 표현이 있는 경우 어떻게 하는가 하는 의문이 들 수 있습니다. 이런 경우도 해결할 수 있도록, [ 앞과 ] 뒤에 쓰이는 구분자를 일치만 시켜주면 쌍따옴표와 대괄호 사이에 얼마든지 추가 구분자를 포함시킬 수 있도록 하였습니다. 다음과 같이 말이죠.


템플릿 별칭template alias
다음과 같이 일부 템플릿 인자만을 원하는 타입으로 지정하여 일반 템플릿처럼 작동하는 식별자를 만들 수 있습니다.

이 때 using 구문이 쓰이며, 이는 다음처럼 기존 typedef의 대용으로 쓰일 수도 있습니다.


초기화 구문 단일화uniform initialization syntax and semantics
C++은 타입과 초기화 문맥에 근거해 개체를 초기화할 수 있는 여러가지 방법을 제공해 왔습니다.

그리고 다음과 같은 혼란도 있었죠.

이러한 혼란을 없애고자 {}-초기화 목록을 일관되게 사용할 수 있도록 했습니다.



사용자정의 리터럴user-defined literals
C++은 여러 내장 타입들에 대한 리터럴을 제공합니다.

그러나 C++98에서는 사용자정의 타입에 대한 리터럴을 정의할 수 없었죠. 가령, 다음과 같은 것들 말입니다.

C++0x에서는 다음 문법으로 사용자정의 리터럴을 지원합니다.

컴파일시점 계산을 위해 constexpr을 사용함에 주목하세요. 이를 다음과 같이 활용할 수 있습니다.

이러한 사용자정의 리터럴을 위한 접미사는 보통 한두글자로 매우 짧을텐데요, 이럴 경우 쉽게 충돌이 발생할 수 있습니다. 그를 방지하려면 다음처럼 namespace를 사용하시면 됩니다.


이상으로 C++0x의 잘 알려지지 않은 기능들에 대한 연재를 마칩니다. 이상을 포함한 더 자세한 정보는 Bjarne Stroustrup 선생이 운영하는 다음 웹페이지에서 확인하실 수 있습니다.



* 이 포스트는 blogkorea [블코채널 : 웹, 컴퓨터, it에 관련된 유용한 정보 및 소식] 에 링크 되어있습니다.


크리에이티브 커먼즈 라이선스
Creative Commons License
Trackback 0 Comment 2

잘 알려지지 않은 C++0x의 유용한 기능들 - 두번째


명시적 변환 연산자
explicit conversion operators
C++98에서는 혼란을 유발하는 암묵적 변환을 방지하지 위해 다음과 같이 변환 생성자에 명시적이어야 함을 지정할 수 있었습니다.

하지만 가능한 변환을 정의하는 방법은 이것 말고 하나가 더 있죠. 해당 클래스를 수정할 수 없는 경우, 상대편 클래스에 변환 연산자를 정의해주는 것이 그것입니다.

이 경우 이전에는 명시성 지정이 불가능했는데 C++0x에서 다음과 같이 가능해졌습니다.


범위 for 구문range for statement
begin()과 end() 함수로 규정되는 범위에 대한 반복을 간편한 문법으로 제공하는 기능입니다.


반환형 접미 구문suffix return type syntax
다음과 같은 함수 템플릿이 있습니다.

이 경우 반환형이 무엇일까요? 물론, x*y의 타입입니다만, 그를 어떻게 나타내느냐는 것이죠. C++0x의 decltype을 사용할 수 있습니다.

하지만 그 시점에 x, y가 스코프에 없기 때문에 오류입니다. 다음과 같이 하면 됩니다.

하지만 역시 만족스럽지 않습니다. 그래서 나온 해법이 반환형을 인자 다음에 선언할 수 있게 하는 겁니다.

[]는 람다에서 도입된 것으로 "반환형이 유도될 수 있거나 나중에 지정될 것임"을 나타냅니다. 이와 같이 함수가 리턴문으로만 구성된 경우에는 다음과 같이 decltype도 생략할 수 있습니다.


클래스 내 멤버 초기화in-class member initializers
C++98에서는 정수형의 static const 멤버에 대해서만 클래스 내 초기화가 가능했습니다.

C++0x에서는 비정적 데이터 멤버를 선언 시에 초기화할 수 있습니다. 이는 생성자가 많은 다음과 같은 경우에 아주 유용합니다.

hash_algorithm과 s 변수가 하나의 초기값만을 가짐에도 각 생성자마다 작업을 되풀이해야 합니다. 유지보수에 쥐약이죠. 이를 다음과 같이 할 수 있습니다.

생성자 초기화 목록이 클래스 내 선언 시점 초기화보다 우선한다는 점을 이용하면, 다음처럼 더 간단히 할 수도 있습니다.


목록 초기화initializer lists
다음과 같은 것들이 가능합니다.

목록 초기화가 더 이상 배열에만 국한되지 않는 것이죠. {}-목록을 받아들이는 것은 std::initializer_list<T> 타입의 인자를 가지는 함수들(보통 생성자)입니다. 가령,

컨테이너는 다음과 같이 "목록 초기화 생성자"를 제공할 수 있습니다.

표준 라이브러리의 컨테이너들은 이제 목록 초기화 생성자를 지원하고, 범위 for 구문에 나온 것처럼 이러한 초기화 목록은 범위(range)로도 활용 가능합니다.

이번 회는 여기까지입니다. 다음 회면 대충 마무리될듯. ^^

* 이 포스트는 blogkorea [블코채널 : 웹, 컴퓨터, it에 관련된 유용한 정보 및 소식] 에 링크 되어있습니다.  
크리에이티브 커먼즈 라이선스
Creative Commons License
Trackback 0 Comment 2

My Recent Tweets 20090727


* 이 포스트는 blogkorea [블코채널 : 웹, 컴퓨터, it에 관련된 유용한 정보 및 소식] 에 링크 되어있습니다.


크리에이티브 커먼즈 라이선스
Creative Commons License

'Tweets' 카테고리의 다른 글

My Recent Tweets 20090812  (0) 2009/08/13
My Recent Tweets 20090806  (0) 2009/08/06
My Recent Tweets 20090727  (0) 2009/07/27
My Recent Tweets 20090715  (0) 2009/07/15
My Recent Tweets 20090705  (0) 2009/07/06
My Recent Tweets 20090624  (0) 2009/06/25
Trackback 0 Comment 0

top