Program analysis | Metaprogramming | Program transformation tools
In computer science, a compiler-compiler or compiler generator is a programming tool that creates a parser, interpreter, or compiler from some form of formal description of a programming language and machine. The most common type of compiler-compiler is more precisely called a parser generator. It only handles syntactic analysis. The input of a parser generator is a grammar file, typically written in Backus–Naur form (BNF) or extended Backus–Naur form (EBNF) that defines the syntax of a target programming language. The output is the source code of a parser for the programming language. The output of the (compiled) parser source code is a parser. It may be either standalone or embedded. This parser takes as an input the source code of the target programming language source and performs some action or outputs an abstract syntax tree (AST). Parser generators do not handle the semantics of the AST, or the generation of machine code for the target machine. A metacompiler is a software development tool used mainly in the construction of compilers, translators, and interpreters for other programming languages. The input to a metacompiler is a computer program written in a specialized programming metalanguage designed mainly for the purpose of constructing compilers. The language of the compiler produced is called the object language. The minimal input producing a compiler is a metaprogram specifying the object language grammar and semantic transformations into an object program. (Wikipedia).
Compiler Design Lecture 19 -- S attributed and L attributed definitions
Description
From playlist Compiler Design
Overview of compiling a program
Compiling a program takes place over several stages. This video is an overview of the compilation process: scanner/lexer, parser, semantic analyzer, code generator, and optimizer. An introduction to token streams and abstract syntax trees.
From playlist Discrete Structures
Compiler Design Lecture 15 -- conflicts and examples of CLR(1) and LALR(1)
Description
From playlist Compiler Design
Compiler Design lecture 1-- Introduction and various phases of compiler
Click for free access to Educator's best classes: : https://www.unacademy.com/a/Best-Classes-of-all-time-by-Vishvadeep-Gothi-CS.html For regular updates follow : https://unacademy.com/community/Q3ZGJY/ To purchase please click : https://unacademy.onelink.me/081J/zv9co3u1
From playlist Compiler Design
The Wolfram Compiler is a long-term project for the compilation of Wolfram Language programs. It converts Wolfram Language into native machine code and provides a faster execution path as well as many opportunities for innovative programming features. It is used for an increasing amount of
From playlist Wolfram Technology Conference 2021
Defining Target Machines — How to Create a Compiler part 5b/5 — Data oriented programming
In this tool-assisted education video series I create a compiler in C++ for a B-like programming language. In this episode we write code that defines the target platforms that the compiler is going to target. This is part of a multi-episode series. Become a member: https://youtube.com/Bi
From playlist Creating a Compiler
Compilation – Why learn about compilers?
As you will see when you watch this series, compilation involves a diverse range of themes in the field of computer science including high and low level programming paradigms, the definition of context free grammars, the application of dynamic data structures such as stacks, linked lists,
From playlist Compilation
Software Engineering and Computer Science with the Wolfram Compiler
The Wolfram Compiler is one of the largest applications built from the Wolfram Language. This talk will review the software engineering practices used to build the Wolfram Compiler, ensure it runs correctly and improve its efficiency. It will also discuss its internal organization, showing
From playlist Wolfram Technology Conference 2022
RubyConf 2021 - A History of Compiling Ruby by Chris Seaton
Did you know that there have been at least sixteen attempts to build a compiler from Ruby to machine code? Why have there been so many? What were the ideas and context of each of these compilers? How are they similar and how are they different? What can we learn about compilers and Ruby fr
From playlist RubyConf 2021
RustConf 2022 - Bootstrapping: The once and future compiler by Joshua Nelson
"Bootstrapping" is the process of building a compiler written in its target language. Bootstrapping has been used since the development of ALGOL and LISP in the 1960s. In this talk, you'll learn the history of the bootstrapping the Rust compiler, how bootstrap works today, and some big ide
From playlist RustConf 2022
The Wolfram Compiler converts Wolfram Language code into native machine instructions that run directly on the machine hardware. It offers a powerful way to speed up programs and provides many opportunities for innovative programming features such as building connections to external librari
From playlist Wolfram Technology Conference 2022
Effective Use of the Mathematica Compiler and Code Generation
Even if you have never used the Mathematica function Compile directly, it has probably been used under the hood for a variety of things you have done. This talk from the Wolfram Technology Conference 2011 shows you how to effectively use the Mathematica compiler and code generation. For
From playlist Wolfram Technology Conference 2011
Compilation - Part One: Overview of the Stages of Compilation
This is part one of a series of videos about compilation. As you will see when you watch this series, compilation involves a diverse range of themes in the field of computer science including high and low level programming paradigms, the definition of context free grammars, the application
From playlist Compilation
From playlist CS50 Lectures 2012
For the latest information, please visit: http://www.wolfram.com Speakers: Tom Wickham-Jones, Abdul Dakkak & Steve Wilson Wolfram developers and colleagues discussed the latest in innovative technologies for cloud computing, interactive deployment, mobile devices, and more.
From playlist Wolfram Technology Conference 2015
MIT 6.001 Structure and Interpretation of Computer Programs, Spring 2005 Instructor: Harold Abelson, Gerald Jay Sussman, Julie Sussman View the complete course: https://ocw.mit.edu/6-001S05 YouTube Playlist: https://www.youtube.com/playlist?list=PLE18841CABEA24090 Compilation License: Cr
From playlist MIT 6.001 Structure and Interpretation, 1986
This talk features Tom Wickham Jones describing the Wolfram Compiler, its benefits and goals of the project. He discusses advantages of developing a compiler in the Wolfram Language, as well as challenges and their resolution. Examples are given of working with the DataStructure library, c
From playlist Wolfram Technology Conference 2020