A+ (프로그래밍 언어)
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
A+는 1985년 아서 휘트니가 APL 언어를 대체하기 위해 개발한 프로그래밍 언어이다. 모건 스탠리의 개발자들에 의해 GUI 및 기타 기능이 추가되어 1988년에 초기 A+가 출시되었다. 확장된 함수 및 연산자 세트, GUI, 비동기 실행, 동적 로딩 등을 지원하며, 리눅스를 포함한 유닉스 변형에서 실행된다. A+는 GNU 일반 공중 사용 허가서에 따라 배포되는 자유-오픈 소스 소프트웨어이며, 금융 분야의 수치 연산 애플리케이션에 주로 사용된다.
더 읽어볼만한 페이지
- APL 프로그래밍 언어 계열 - J (프로그래밍 언어)
J는 배열 처리에 특화된 간결하고 강력한 프로그래밍 언어로, 묵시적 프로그래밍 스타일과 함수 합성을 통해 코드 간결성을 높이고 다양한 숫자형 데이터 타입과 풍부한 연산자를 제공하며 확장 정밀도 기능을 지원한다. - APL 프로그래밍 언어 계열 - APL (프로그래밍 언어)
APL은 케네스 아이버슨이 개발한 배열 지향 프로그래밍 언어로, 간결한 표기법과 특수 문자 집합을 사용하며, 아이버슨의 수학적 표기법에 기반하여 객체 지향 프로그래밍과 .NET 지원 등의 확장 기능을 제공한다. - 데이터 중심 프로그래밍 언어 - 마이크로소프트 액세스
마이크로소프트 액세스는 1992년 출시된 데이터베이스 관리 시스템으로, 테이블, 쿼리, 폼 등을 생성하고 VBA를 통해 솔루션을 개발하며, 윈도우에서 사용 가능하고 다양한 데이터 형식과 통합된다. - 데이터 중심 프로그래밍 언어 - SQL
SQL은 관계형 데이터베이스 관리 시스템에서 데이터를 관리하고 조작하기 위해 설계된 표준 프로그래밍 언어로서, 데이터 정의어, 데이터 조작어, 데이터 제어어를 포함하는 다양한 명령어 문법을 제공하며 ANSI와 ISO에 의해 표준으로 채택되었다. - 배열 프로그래밍 언어 - GNU 옥타브
GNU 옥타브는 MATLAB과 높은 호환성을 가지며 수치 해석 계산을 위해 사용되는 자유-오픈 소스 소프트웨어이다. - 배열 프로그래밍 언어 - NumPy
NumPy는 파이썬에서 다차원 배열을 효과적으로 다루기 위한 라이브러리로, C API를 제공하여 외부 라이브러리와 연동을 지원하며, 다양한 연산 기능과 멀티스레딩을 통한 성능 향상을 제공한다.
A+ (프로그래밍 언어) - [IT 관련 정보]에 관한 문서 | |
---|---|
기본 정보 | |
![]() | |
패러다임 | 배열 프로그래밍 |
설계자 | 아서 휘트니 |
개발자 | 모건 스탠리 |
발표 | A - A+ - |
최신 안정화 버전 | 4.22-1 |
타이핑 | 동적, 강한 |
파일 확장자 | , , , |
구현체 | A+ |
영향을 준 언어 | APL |
영향을 받은 언어 | K |
라이선스 | GNU GPL |
2. 역사
1985년, 아서 휘트니는 APL을 대체할 목적으로 A 프로그래밍 언어를 개발했다.[5][6] 이후 모건 스탠리의 다른 개발자들이 이 언어에 그래픽 사용자 인터페이스(GUI)와 여러 기능들을 추가하여 A+로 확장했으며, GUI를 갖춘 A+는 1988년에 출시되었다.[5][6] A+는 주로 금융 분야와 같은 수치 연산 애플리케이션용으로 설계되었으며, 유닉스와 리눅스 환경에서 인터프리터 방식으로 동작하고 대화형 환경도 제공한다.
2. 1. 개발 배경
1985년, 아서 휘트니는 기존의 APL 언어를 대체하기 위해 A 프로그래밍 언어를 개발했다.[5][6] 이후 모건 스탠리의 다른 개발자들이 A 언어에 그래픽 사용자 인터페이스(GUI)와 여러 언어 기능들을 추가하여 A+로 확장시켰다.[5][6] A+는 특히 금융 분야와 같은 수치 연산 애플리케이션을 위해 설계되었다. 그래픽 사용자 인터페이스를 갖춘 초기 A+는 1988년에 출시되었다.개발 초기에는 XEmacs 에디터를 확장하여 사용했는데, 이는 A+가 APL에서 사용된 고유 기호들을 유사하게 사용하기 때문에 이러한 기호들의 입력과 표시가 가능한 환경이 필요했기 때문이다. XEmacs는 그래픽 환경에서 다중 문자를 지원하는 시스템을 갖추고 있었다. 관련 폰트인 "kapl"은 웹사이트에서 제공된다.
2. 2. K 언어와의 관계
A 프로그래밍 언어를 개발한[2][3] 아서 휘트니(컴퓨터 과학자)는 이후 K라는 독점 배열 언어를 만들었다. J와 마찬가지로, K는 APL 문자 집합을 사용하지 않는다. 또한, K는 문장(文)의 존재 및 두 가지 다른 구문 모드와 같이 A+의 복잡성으로 여겨지는 일부 기능을 가지고 있지 않다.3. 특징
A+는 APL을 기반으로 확장된 배열 프로그래밍 언어로, 1988년 모건 스탠리에서 아서 휘트니(Arthur Whitney)를 중심으로 금융 분야의 수치 연산 애플리케이션 개발을 위해 만들어졌다. 이 언어는 APL의 개념을 확장하여 개선된 함수 및 연산자, 그래픽 사용자 인터페이스(GUI) 지원, 비동기 실행, 동적 로딩과 같은 현대적인 기능들을 포함하는 것이 특징이다. APL과의 구체적인 차이점과 상세 기능은 하위 섹션에서 다루어진다.
A+는 리눅스를 포함한 다양한 유닉스 계열 운영체제에서 구동되며, GNU 일반 공중 사용 허가서에 따라 배포되는 자유-오픈 소스 소프트웨어이다. 인터프리터 방식으로 작동하며 대화형 개발 환경을 제공한다. 개발에는 주로 XEmacs 편집기가 확장 기능과 함께 사용되며, APL과 유사한 특수 기호를 표시하기 위해 'kapl'이라는 전용 폰트가 필요하다.
3. 1. APL과의 차이점
A+ 언어는 APL 언어에 다음과 같은 변경 사항을 구현한다.- A+ 함수는 최대 9개의 매개변수를 가질 수 있다.
- A+ 코드 문장은 세미콜론(;)으로 구분되며, 이를 통해 하나의 문장을 여러 줄에 나누어 작성하는 것이 가능하다.
- 함수 또는 연산자의 명시적 결과는 마지막으로 실행된 문장의 결과가 된다.
- A+는 종속성(dependency) 객체를 구현한다. 이는 전역 변수(종속 변수)와 인수가 없는 함수와 같은 관련 정의를 포함한다. 값은 전역 변수처럼 명시적으로 설정하고 참조할 수 있을 뿐만 아니라, 관련 정의를 통해서도 설정될 수 있다.