프로그래밍 언어 이론과 추상 대수


11

프로그래밍 대수 이론에 대한 추상 대수의 적용이 있습니까? 언어 디자인 및 컴파일러 구현에 유용한 것이 있습니까?



3
위에 링크 된 질문을 확인 했습니까? 또한 분류 이론 함수형 프로그래밍 학습을위한 유용한가요? 기능 프로그래밍 . 그들은 당신의 질문에 대답합니까?
Kaveh

답변:


11

단어의 고전적인 의미에서 대수는 대수 연산으로 계산 효과를 모델링하는 데 사용됩니다. 예를 들어 Gordon Plotkin의 슬라이드 를 참조 하거나 실제 논문박사 학위를 읽을 수 있습니다 . 논문 , 실제로 질문을 의미합니다.

그리고 내 자신의 경적을 날려, 한 번 봐가 EFF의를 하고 그것에 대해 읽기 , 계산 효과 대수 운영하고 그 핸들러는 대수의 homomorphisms 있다는 생각으로 디자인 언어.


1
Eff는 매우 멋지다. 디미 네이트 된 연속에 대해 내가 이해하는 것은 대부분 그것에서 비롯된다.
닐 크리슈나 스와미

나는 eff가 연속 작업의 구조화 된 방식이라고 주장하는 Oleg의 "callcc는 유해한 것으로 간주"에 대한 블로그 반응을 고려하고 있습니다.
Andrej Bauer

답변 해 주셔서 감사합니다. 그는 질문에 대한 답변으로 자신의 언어를 구현 한 이후 @AndrejBauer의 답변을 수락해야했습니다 :)
n00b101

당신은 거기에 잘못된 것들의 순서를 가지고 있습니다 :) Matija와 나는 당신의 질문에 맞는 언어를 구현했습니다.
Andrej Bauer

7

나는 단순한 "예"를 넘어선 대답이 많은 양을 채울 수 있고 채울 수 있기 때문에 주저했다. 프로그래밍 언어 시맨틱은 대수를 논리에 적용하는 범주 논리의 개발에 의해 심오하게 형성되어 왔습니다.

그러나이 질문에 대답하는 가장 좋은 방법은 Agda를 배우라고 말하는 것입니다. 종종 유형으로 프로그래밍하는 법을 배우는 경험은 대수학이 컴퓨터 프로그래밍에 포괄적으로 퍼지는 방식에 크게 영향을 미칩니다.


-1

실제로 이론적 추상 대수를위한 소프트웨어가 있습니다. 이 소프트는 액션 그룹, 동성애 등과 같은 것들을 계산할 수 있습니다 ... 그것은 마그마입니다 : http://magma.maths.usyd.edu.au/magma/

이것이 당신을 도울 수 있기를 바랍니다.


2
당신이 아마도 그 질문을 오해했을 까봐 두렵습니다.
이토 쓰요시

당신은 생각합니까? 글쎄, Magma와 함께 당신은 추상 대수학, 다른 분야에 적용하기에 유용한 환경, 예를 들어 프로그래밍 언어에 대한 특정 주제에 대한 라이브러리를 가지고 있습니다 ...
Camilo Soler

1
(1) Magma에 프로그래밍 언어 이론에 적용 할 수있는 추상 대수학에 대한 특정 주제의 라이브러리가있는 경우 해당 응용 프로그램에 대해 작성해야합니다. Magma에 대한 포인터 가이 질문의 맥락에서 도움이되지 않는다고 생각합니다. (2) 솔직히 말하면“프로그래밍 언어 이론”이 무엇을 의미하는지 이해하지 못할 것입니다.
이토 쓰요시

좋아, 나는 단지 다른 "프로그래밍 언어"를 만들거나 디자인하기위한 기초로 추상 대수 라이브러리를 가진 다른 플랫폼에서 내 아이디어를 표현하고 싶었다. 내 아이디어가 나쁘거나 틀리면 죄송합니다.
Camilo Soler
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.