«compilers» 태그된 질문

한 언어 (소스 언어)로 코드를 읽고 다른 언어 (대상 언어)로 동등한 프로그램으로 번역하는 프로그램에 대한 질문입니다.

1
구체화 유형 추론
직장에서 나는 동적 언어에 대한 몇 가지 유형 정보를 유추하는 임무를 맡았습니다. 다음 let과 같이 일련의 명령문을 중첩 된 표현식 으로 다시 작성합니다 . return x; Z => x var x; Z => let x = undefined in Z x = y; Z => let x = y in Z …
11 programming-languages  logic  type-theory  type-inference  machine-learning  data-mining  clustering  order-theory  reference-request  information-theory  entropy  algorithms  algorithm-analysis  space-complexity  lower-bounds  formal-languages  computability  formal-grammars  context-free  parsing  complexity-theory  time-complexity  terminology  turing-machines  nondeterminism  programming-languages  semantics  operational-semantics  complexity-theory  time-complexity  complexity-theory  reference-request  turing-machines  machine-models  simulation  graphs  probability-theory  data-structures  terminology  distributed-systems  hash-tables  history  terminology  programming-languages  meta-programming  terminology  formal-grammars  compilers  algorithms  search-algorithms  formal-languages  regular-languages  complexity-theory  satisfiability  sat-solvers  factoring  algorithms  randomized-algorithms  streaming-algorithm  in-place  algorithms  numerical-analysis  regular-languages  automata  finite-automata  regular-expressions  algorithms  data-structures  efficiency  coding-theory  algorithms  graph-theory  reference-request  education  books  formal-languages  context-free  proof-techniques  algorithms  graph-theory  greedy-algorithms  matroids  complexity-theory  graph-theory  np-complete  intuition  complexity-theory  np-complete  traveling-salesman  algorithms  graphs  probabilistic-algorithms  weighted-graphs  data-structures  time-complexity  priority-queues  computability  turing-machines  automata  pushdown-automata  algorithms  graphs  binary-trees  algorithms  algorithm-analysis  spanning-trees  terminology  asymptotics  landau-notation  algorithms  graph-theory  network-flow  terminology  computability  undecidability  rice-theorem  algorithms  data-structures  computational-geometry 

3
문법 대한 역 추적 기능이있는 순환 재귀 파서
누군가가 와 (순서대로) 를 시도하는 역 추적 기능이있는 재귀 적 하강 파서가 문법 의해 형성된 언어를 인식하지 못하는 이유를 누군가에게 ?S → a a S → a S a | 에스→ SㅏS→aSaS \rightarrow aSa에스→S→aaS \rightarrow aa에스→ S| S→aSa | aaS \rightarrow aSa\ |\ aa 언어의 단어 만 구문 분석하는 것으로 …

3
프로그램 분석 시작하기
프로그램 분석 을 시작하는 데 필요한 리소스를 찾고 있습니다. 제가이 주제에서 찾은 유일한 책은 Nielson & Nielson 책입니다. 그 외에는 "프로그램 분석"이 챕터 또는 그 행을 따르는 "컴파일러"책만있는 것 같습니다. 사람들이 다른 자원을 알고 있습니까?

2
현대 컴퓨터의 이론상 최소 레지스터 수는?
나는 학부 연구에서 컴파일러에 대해 강의했다. 거기서 우리는 장난감 자바와 같은 언어로 소스 프로그램을 장난감 조립 언어 (통역사가있는)로 컴파일하는 컴파일러를 작성했다. 이 프로젝트에서 우리는 다음을 포함하여 "실제"네이티브 실행 파일과 밀접하게 관련된 대상 시스템에 대한 몇 가지 가정을했습니다. 전용 스택 포인터 ( "SP") 레지스터에 의해 추적되는 런타임 스택 전용 힙 포인터 …


2
자체 프로그래밍 언어 컴파일
저는 컴퓨터 과학 학생입니다. 고유 한 프로그래밍 언어 (명령이 거의없는 기본 언어)를 만들고 싶습니다. 구문 분석기를 수행하는 방법을 알고 있습니다. 이미 Perl에서 수행했습니다. 기사에서 컴파일러에 대해 읽은 것은 컴파일러 자체입니다. 예를 들어 C 컴파일러는 C로 작성되었습니다. 어떻게 가능합니까? 나는 내 자신의 언어를 만들 수 있지만 어떻게 그것을 실행할 수 있는지 …

1
정적 유형 검사의 보수적이지 않은 예는 무엇입니까?
에서 프로그래밍 언어의 개념 , 존 미첼은 정적 타입 검사 때문에 중단 문제의 (지나치게 엄격한) 반드시 보수적이라고 씁니다. 그는 예를 들면 다음과 같습니다. if (complicated-expression-that-could-run-forever) then (expression-with-type-error) else (expression-with-type-error) 누군가 실제적으로 우려 할만한 미해결 된 답변을 제공 할 수 있습니까? Java는 다음과 같은 경우 동적으로 확인 된 캐스트를 허용합니다. if …

3
데이터 흐름 분석, 추상 해석 및 형식 유추의 동등성?
최근 질문에 대한 @Babou의 대답 은 한 번에 데이터 흐름 분석 의 동등성 (추론되거나 입증 될 수있는 사실과 추론 알고리즘을 실행하는 시간 복잡성)에 관한 논문을 읽은 것으로 생각 합니다. , 추상 해석 및 형식 유추 . 일부 하위 사례 (정방향 상황에 따른 절차 간 데이터 흐름 분석과 추상 해석 등)에서 …

3
크로스 컴파일러의 T 다이어그램
Red Dragon Book Compilers에서 부트 스트랩을 공부하고 있으며 크로스 컴파일러에 대한 T 다이어그램이 매우 혼란 스럽다는 것을 알았습니다. "compiler1 through compiler2"의 의미를 이해할 수 없습니다. 누구나 실제 컴파일러와 관련하여 더 나은 설명, 비유 또는 예를 제공 할 수 있습니까? 먼저 몇 가지 표기법. 으로 L S엔=엘에스엔=LSN= 출력 언어 / 기계 …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.