좋은 프로그래밍 언어가 가져아할특징은 뭐가 있을까요?

ㅡ,.ㅡ;;의 이미지

좋은 프로그래밍 언어가 가져야할 특징은? 뭐가 있을까요?
첨에 투표형식을글이었는데 이상해서 지웠습니다.

1. 사람이 쉽게 알아볼수 있도록 고급언어로 만드는것이 중요하다
-1. 그렇지 않다. 중요한건 논리적이며 기호화 간편화가 되어야한다

2. 성능보다 누구나 쉽게 배울수 있고 하나를 배워 하나에 바로 써먹을수 있게 하는것이 중요하다
-2. 어렵게 배우더라도 하나를 배우면 응용하여 여러곳에 써먹을수있고 하기나름에따라 성능을 최상으로 할수도 있다

3. 누구나 어느정도 수준까지만 쉽게 배워 쉽게 할수 있고 누구나 쉽게 해석할수 있어야한다.
-3. 누구나 할필요가 없다. 전문으로 하는사람만 할수 있으정도면되고 깊이있게 할수 있어야한다. (전부다 의사가 될수 없게 하는이유나 마찬가지다.)

서지훈의 이미지

1, 2, 3 ...
더 이상의 것은 좀...-_-ㅋ
제발 지양을 해야죠...

<어떠한 역경에도 굴하지 않는 '하양 지훈'>

#include <com.h> <C2H5OH.h> <woman.h>
do { if (com) hacking(); if (money) drinking(); if (women) loving(); } while (1);

ㅡ,.ㅡ;;의 이미지

서지훈 wrote:
1, 2, 3 ...
더 이상의 것은 좀...-_-ㅋ
제발 지양을 해야죠...

<어떠한 역경에도 굴하지 않는 '하양 지훈'>

저와 정반대의 견해이시네요.. 전 -1, -2, -3
1의이유는 수학물리가 왜 기호화 하는지와 같은이유입니다.
우리가 하는말보다 기호화하여 표현하는것이 유리하기때문이죠..
2의 이유는 프로그래밍이란 새로운것을 개발하려하는것인데.. 배우지못한것을 구현할기 힘들다면 새로은것을 개발하기에는 적합하지 않겠죠..기존있는것을 비슷하게 따라만들기식의 언어를 프로그래밍 언어라 하기보다 어플리케이션 생성툴이라 부르고싶은..
3의 이유는 항공기 개발할때 누구나 쉽게 항공기를 몰수 있도록 버튼하나마다 모두 설명을 달아두거나 공장의 특수 장비에 누구나 사용할수있게 자세한 설명이나 기능이되어 있을필요는 없겠지요.. 그것보다 그장비를 알고있는사람이 조금이나마 더편하게 더효율적이게 사용할수있게 되있는게 났다고봅니다.


----------------------------------------------------------------------------

fender의 이미지

저도 1, 2, 3 입니다.

언뜻 생각하면 개발 생산성과 유지보수 측면에서 손해를 보더라도 개발자에게 최고의 유연성과 높은 런타임 성능을 보장하는 언어가 최고의 언어일 것 같지만 실제로는 반대의 경우가 많은 것 같습니다.

우선 기업이나 프로젝트 하나에 국한 해서 볼 때도 매우 특수한 요구조건을 충족해야 하는 경우가 아니라면 개발 생산성과 쉬운 유지보수가 무엇보다 우선합니다. 런타임 성능은 해당 프로젝트의 비즈니스적 요구사항에 맞추면 될 뿐 절대적인 기준이 없는 것이니까요.

반면 소프트웨어 업계 전반에 걸친 시각에서 볼 때 개발 생산성이 좋은 언어가 상대적으로 많은 개발자를 끌어 들이고 이런 개발자 베이스와 개발 생산성의 우위를 바탕으로 그렇지 못한 언어에 비해 훨씬 풍부한 성과를 이끌어 냅니다. 즉, 개발자가 많이 모이고 개발이 쉬운 언어일 수록 이들에 의해 훨씬 다양한 라이브러리가 개발되고 새로운 개념들이 만들어 집니다.

이렇게 만들어진 새로운 라이브러리, 개발도구, 프레임워크, 패러다임들이 다시 개발에 투입되서 보다 더 높은 개발생산성을 달성할 수 있도록 하고 이런 주기가 반복될 수록 그렇지 못한 언어와의 차이가 커지는 것입니다.

----------------------------
[서명] 그놈 한국 사용자 모임 - 그놈에 대한 모든 것! - 게시판, IRC, 위키, 갤러리 등등...

서지훈의 이미지

앞으로 각광을 받게 될 프로그램 언어는 누구나 할수있고 쉽게 할수 있고, 쉽게 유지 보수가 가능한 언어여야 살아 남을 것입니다.
세상은 가면갈 수록 배울것, 할것이 무진장 많아질 사회입니다.
그런데 개발언어가 갈 수록 기호화 되고, 특수화 되고 하면은 사회는 더욱 퇴보할 수밖에 없습니다.
이거의 적절한 예가 '바벨탑'이 아닐런지?

언어도 한가지만 있으면 될 것을 여러개가 생겨 더욱 불편해지고 세상 살기 힘들어 지듯...
랭귀지도 더욱 폐쇠적이고 분화 할 수록 사회는 분산되어 합치는게 더욱 힘들어 질 것입니다.
뭐... 그렇더라도 이런거를 대부분 마스터하고 여기에 희열을 느낄 사람들도 있겠지만...
이건 어디까지나 취미이지 직업이 이렇다면 정말 세상 살기 힘들겠죠...

일단 세상 편하고 단순히 살자는게 저의 지론이기도 허구.

사족_그리고 요즘에 나오는 새로운 언어들의 추세만 봐도 직관적이고 아주 쉬운듯... 재탕같은 분위기의 언어도 있고. 물론 예전에 비해...

<어떠한 역경에도 굴하지 않는 '하양 지훈'>

#include <com.h> <C2H5OH.h> <woman.h>
do { if (com) hacking(); if (money) drinking(); if (women) loving(); } while (1);

fender의 이미지

궁극적으로는 플랫폼과 어쩌면 언어에도 독립적인 MDA(Model Driven Architecture)로 갈 것입니다. 프로그래밍 언어는 점점 더 추상화 되어 구현시점의 기술적인 세부사항 보다는 설계 시점의 비즈니스적 요구사항에 중심을 두는 방향으로 발전하는 과정에 있습니다.

http://www.jaxmagazine.com/itr/online_artikel/psecom,id,548,nodeid,147.html

MDA의 효용에 대해서는 논란이 있지만 지금도 일부 분야에서 부터 활용도가 늘어나고 있는 듯 합니다 :

http://www.andromda.org

----------------------------
[서명] 그놈 한국 사용자 모임 - 그놈에 대한 모든 것! - 게시판, IRC, 위키, 갤러리 등등...

lifthrasiir의 이미지

저도 1, 2, 3입니다...만 -1도 함께 충족되면 좋죠 :) (그래서 파이썬을 좋아하고... :)

- 토끼군

feanor의 이미지

1, 2, 3.

--feanor

랜덤여신의 이미지

저는 -1. 그렇지 않다. 중요한건 논리적이며 기호화 간편화가 되어야한다 가 끌리네요.
나머지 항목들은... 잘 모르겠구요... ~_~
일단 기호화 간편화가 되면, 타수가 줄어들지 않습니까? :twisted:

fender의 이미지

가독성을 해치지 않는 범위라면 -1도 좋은 것 같습니다. 코볼 같은 언어가 생산성이 높은 건 아니니까요 :)

----------------------------
[서명] 그놈 한국 사용자 모임 - 그놈에 대한 모든 것! - 게시판, IRC, 위키, 갤러리 등등...