«programming-languages» 태그된 질문

프로그래밍 언어의 설계, 구현 및 분석과 관련된 질문 이 사이트에서 주제가 아닌 프로그래밍 방법에 대한 질문은 아닙니다.

4
다형성 타입`forall t : Type, t-> t`를 가진 함수가 왜 항등 함수 여야합니까?
저는 프로그래밍 언어 이론을 처음 사용합니다. 나는 강사가 다형성 유형의 함수가 forall t: Type, t->t정체성 이라고 주장하는 온라인 강의를보고 있었지만 그 이유를 설명하지 못했습니다. 누군가 왜 나에게 설명 할 수 있습니까? 아마도 첫 번째 원칙의 주장에 대한 증거 일 수 있습니다.

3
예외 계층 구조 이론이 있습니까?
나는 어떤 방식 으로든 예외가있는 십여 개의 프로그래밍 언어에 익숙하지만, 두 가지 "병리학 적"경향을 목격하게되었습니다. 일반적인 패턴이나 예외 계층 구조는없는 것 같습니다. 모든 언어는 기본적으로 자체 버전을 롤링하고 예외가 표준으로 만들어지면 표준에서 찾은 예외 종류는 다소 임의적입니다 (대개 소스 코드를 읽는 것과 같은 언어 도구를 만드는 동안 구현 된 예외) …

3
작동하지 않는 설정에서 클로저 구현 문제
프로그래밍 언어에서 클로저는 널리 사용되는 기능입니다. Wikipedia의 말 : (강조 광산) : 컴퓨터 과학에서 클로저 (...)는 해당 함수 의 비 로컬 변수에 대한 참조 환경과 함께 제공되는 함수입니다. 클로저를 사용하면 함수가 즉각적인 어휘 범위 밖의 변수에 액세스 할 수 있습니다. 따라서 클로저는 본질적으로 자신의 범위를 벗어난 변수를 사용할 수있는 (익명?) …

8
OOP는 실제로 어떤 절차 적 프로그래밍 문제를 해결합니까?
"C ++ Demystified" 책을 공부했습니다 . 이제 Robert Lafore의 "Turbo C ++ 초판 (1 판)의 객체 지향 프로그래밍" 을 읽기 시작했습니다 . 이 책을 넘어서는 프로그래밍에 대한 지식이 없습니다. 이 책은 20 살이 기 때문에 구식 일 수 있습니다. 나는 최신판을 가지고 있는데, 나는 그것을 좋아하기 때문에 오래된 것을 사용하고 …

2
스캇 연속 함수 : 대체 정의
나는이 속성으로 정말로 고투하고있다 : 하자 될 간섭 공간 및 일 단조 함수. 인 경우에만 는 지시 된 집합이 되도록 모든 에 대해 연속적입니다.X,YX,YX,Yf f ( ⋃ x ∈ D x ) = ⋃ x ∈ D f ( x ) D ⊆ C l ( X ) Df:Cl(X)→Cl(Y)f:Cl(X)→Cl(Y)f: Cl(X) …

3
언어를 호모 닉으로 만드는 방법
이 기사 에 따르면 다음 라인의 Lisp 코드는 "Hello world"를 표준 출력으로 인쇄합니다. (format t "hello, world") 호모 닉 언어 인 Lisp는 다음 과 같이 코드를 데이터로 처리 할 수 ​​있습니다. 이제 다음 매크로를 작성했다고 상상해보십시오. (defmacro backwards (expr) (reverse expr)) 뒤로는 매크로의 이름으로, 표현식 (목록으로 표시)을 가져 와서 반대로합니다. …

5
특정 작업에 대해 언어를“최적화”시키는 이유는 무엇입니까?
이 게시물을 개선하고 싶습니까? 인용과 답변이 올바른 이유에 대한 설명을 포함하여이 질문에 대한 자세한 답변을 제공하십시오. 세부 사항이없는 답변은 편집하거나 삭제할 수 있습니다. 특정 작업에 특화된 프로그래밍 언어가 종종 있습니다. 일부 프로그래밍 언어는 배열 산술 (예 : 행렬 및 다차원 배열 사용)이 뛰어나지 만 다른 언어로는 재현하기 어려운 상위 수준 …

2
PROLOG Turing이 완성되는 이유는 무엇입니까?
다음과 같이 튜링 머신을 시뮬레이트하는 프로그램을 구성하여 PROLOG가 튜링 완료된 것으로 입증 될 수 있음을 알고 있습니다. turing(Tape0, Tape) :- perform(q0, [], Ls, Tape0, Rs), reverse(Ls, Ls1), append(Ls1, Rs, Tape). perform(qf, Ls, Ls, Rs, Rs) :- !. perform(Q0, Ls0, Ls, Rs0, Rs) :- symbol(Rs0, Sym, RsRest), once(rule(Q0, Sym, Q1, NewSym, …

1
제품 유형에 따른 유형 유추
연결 언어에 대한 컴파일러를 개발 중이며 형식 유추 지원을 추가하고 싶습니다. Hindley–Milner를 이해하고 있지만 유형 이론을 배우고 있으므로이를 적용하는 방법을 잘 모르겠습니다. 다음과 같은 시스템은 소리가 나지 않으며 추론 할 수 없습니까? 용어는 리터럴, 용어 구성, 용어 인용 또는 기본형입니다. e::=x∣∣ee∣∣[e]∣∣…e::=x|ee|[e]|… e ::= x \:\big|\: e\:e \:\big|\: [e] \:\big|\: \dots …

4
프로그램이 언어 의미를 확장 할 수있을 정도로 프로그램 언어를 변경할 수 있습니까?
프로그래머가 클래스를 정의한 후 언제라도 클래스를 확장 / 재정의 할 수있게하는 루비 (및 자바 스크립트)와 같은 언어의 기능과 관련하여 (문자열과 같은 클래스 포함) 나중에 이론적으로 프로그램을 확장 할 수있는 언어를 설계하는 것이 가능합니까? 그것의 의미론. 예 : Ruby는 다중 상속을 허용하지 않지만 다중 상속 구현을 허용하기 위해 기본 언어 동작을 …

3
어떤 연구 언어가 Haskell보다 강력한 유형 체계를 가지고 있으며 그 이유는 무엇입니까?
여기에 나는 읽기 : Haskell은 확실히 가장 진보 된 유형 시스템을 가지고 있지 않지만 (연구 언어를 세어도 가까이 있지는 않지만) 실제로 프로덕션에 사용되는 모든 언어 중에서 Haskell이 최상위에있을 것입니다. 그래서 두 가지를 묻습니다. 어떤 연구 언어가 Haskell보다 더 강력한 유형 시스템을 가지고 있는지; 그들은 무엇을 개선합니까? 나는 단지 프로그래머이기 때문에 …


7
음의 배열 인덱스가 의미가있는 이유는 무엇입니까?
C 프로그래밍에서 이상한 경험을했습니다. 이 코드를 고려하십시오. int main(){ int array1[6] = {0, 1, 2, 3, 4, 5}; int array2[6] = {6, 7, 8, 9, 10, 11}; printf("%d\n", array1[-1]); return 0; } 컴파일하고 실행할 때 오류나 경고가 표시되지 않습니다. 강사가 말했듯이 배열 인덱스 -1는 다른 변수에 액세스합니다. 여전히 혼란 스럽습니다. …

3
미적분과 프로그래밍 언어의 차이점은 무엇입니까?
나는 미적분학과 프로그래밍 언어라는 것에 대해 혼란스러워합니다. 나는 미적분학이 프로그램의 동등성에 대한 추론을위한 공식적인 시스템이라고 생각하는 경향이있다. 프로그램에는 기계에 의해 지정된 작동 의미론이 있으며 결정적이어야합니다. 이런 식으로 언어 대한 (정확한) 미적분 은 프로그램 동등성을위한 확실한 방법입니다.엘엘L 이것은 나에게 합리적인 분열처럼 ​​보이지만 이것이 일반적으로 받아 들여지는 의미입니까? 아니면 잘못 됐나요? 관련, …

2
참조 요청 : 유형 시스템에 적용되는 카테고리 이론
프로그래밍 언어 이론을 진정으로 이해하기 위해 범주 이론을 배워야하는 방법에 대해 계속 듣고 있습니다. 지금까지 나는 범주 영역으로 들어 가지 않고 많은 PL을 배웠습니다. 그러나, 내가 잃어버린 것을보기 위해 도약 할 시간이라고 생각했습니다. 불행히도, 내가 찾을 수있는 소스 중 어느 것도 유형 시스템이나 프로그래밍에 연결되지 않는 것 같습니다. 그들은 말 …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.