100 likes | 242 Views
Programming Language Technology Trends. technology. time. Disruptive Technology in PL PL에서의 게릴라 기술. 사실1: PL기술은, 더욱 간단하고/작고/쓰기편한 기술로 수렴한다. 사실2: 그 과정에서 수많은 부침을 겪게 된다 사실3: 지금 우리가 어디쯤 와 있는 지는 알 수 없다. 최선은, 열린 자세와 말랑한 머리를 유지하는 것이다 원리와 근본에 대한 이해를 몸에 익히고 정통기술의 양상을 이해하고: 엘리트주의 eliticism
E N D
Programming Language Technology Trends technology time
Disruptive Technology in PLPL에서의 게릴라 기술 • 사실1: PL기술은, 더욱 간단하고/작고/쓰기편한 기술로 수렴한다. • 사실2: 그 과정에서 수많은 부침을 겪게 된다 • 사실3: 지금 우리가 어디쯤 와 있는 지는 알 수 없다. • 최선은, 열린 자세와 말랑한 머리를 유지하는 것이다 • 원리와 근본에 대한 이해를 몸에 익히고 • 정통기술의 양상을 이해하고: 엘리트주의 eliticism • 정통기술의 세례를 덜 받은, 하지만 즐겁게 쓰이는 기술들에 깊은 관심을: 실용주의 pragmatism
SNU4190.310 Topics Review
syntax/semantics/inductive definitions/proofs by induction imperative languages variable/binding/scope/environment parameter passing/recursion memory management: manual/automatic interpreters, virtual machines, translation role of types sound/unsound type system: manual/automatic language model: lambda calculus evaluation order, language core/sugar sound simple type system sound let-polymorphic type system(parametric polymorphism) type inference algorithms sound subtype system support for abstractions: module/ADT essence of object-oriented programming lang inheritance (dynamic dispatch, subtype polymorphism) essence of multi-staged programming essence of implicit programmiung hws & challenges (learn by doing)
Goals in Syllabus -프로그래밍 언어란 무엇인가? -공통된 원리들은 무엇인가? -현재 얼마나 미개한가? -새로운 계산환경을 효과적으로 운용할 수 있는 언어의 조건은? • 언어 처리 파트를 잘 디자인할 수 있겠는가? • 프로그래밍(언어)의 미래를 느껴볼 수 있었는가?