We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Perl 6 as a new tool for language compilers

00:00

Formal Metadata

Title
Perl 6 as a new tool for language compilers
Subtitle
Using Perl 6 grammars to design and implement a programming language
Title of Series
Number of Parts
561
Author
License
CC Attribution 2.0 Belgium:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
Perl 6 grammars are a great way to describe the grammar and implement an interpreter or a compiler of DSL or a programming language. In this talk, I will demonstrate how you can do it. During the talk, we will create an interpreter for a tiny programming language. The engine behind the implementation will be the so-called Grammars that are available in today's Perl 6. We will create the full language specification and describe all the actions it needs to do to execute the program. The great part is that you no longer need to split your language implementation in traditional phases: lexer, parser, etc.. Neither you need a compiler of compilers to process the formal grammar rules and emit the lexer/parse code that you will later use in your compiler. All you need is just to write some Perl 6 code. You even don't need to be a specialist in compilers or learn numerous tools like bison etc. to create your own language in a few hours.
CompilerProgramming languageComputer programmingProgramming languageLatent heatMereologyWordInterpreter (computing)CompilerParsingComputer animationLecture/Conference
CompilerPoint (geometry)CompilerLatent heatMoment (mathematics)Programming languageDifferent (Kate Ryan album)Revision controlTable (information)Lecture/Conference
CompilerInterface (computing)MultiplicationObject-oriented programmingSet (mathematics)Process (computing)Bootstrap aggregatingSubsetProgramming languageSource codeNoise (electronics)Medical imagingRepository (publishing)CodeLevel (video gaming)RandomizationCompilerComputer animationXML
Computer filePower (physics)Computer programmingMereologySlide ruleBinary codeRegular graphRevision controlRegulärer Ausdruck <Textverarbeitung>Programming languageCartesian coordinate systemCompilerFormal grammarLecture/Conference
WindowView (database)Computer fileOnline helpSpring (hydrology)Formal grammarStatement (computer science)Execution unitBlock (periodic table)Function (mathematics)Variable (mathematics)Token ringGastropod shellStatisticsEmpennageHash functionDeclarative programmingRule of inferenceLine (geometry)System callVariable (mathematics)Software testing2 (number)Functional programmingLetterpress printingToken ringSocial classFunction (mathematics)IdentifiabilityNumberSpacetimeMultiplication signWordExpressionMereologyVarianceStatement (computer science)Type theoryData storage deviceHash functionBlock (periodic table)Formal grammarGroup actionParsingFlow separationData structureFree variables and bound variablesComputer programmingVideo game consoleCodeProgramming languageString (computer science)QuantificationEquals signMaxima and minimaMessage passingCASE <Informatik>Regulärer Ausdruck <Textverarbeitung>Electronic mailing listCompilerImplementationDot productOperator (mathematics)Extension (kinesiology)Machine codeSingle-precision floating-point formatMoment (mathematics)DigitizingVertex (graph theory)Computer animation
Statement (computer science)Variable (mathematics)Function (mathematics)System callGroup actionData storage deviceContent (media)Line (geometry)Functional programmingImpulse responseComputer animation
Token ringVariable (mathematics)WindowStatement (computer science)Function (mathematics)Hash functionFormal grammarView (database)Spring (hydrology)Gastropod shellLine (geometry)Function (mathematics)Computer programmingData structureCASE <Informatik>Letterpress printingComputer animation
Statement (computer science)NumberOnline helpWindowView (database)Token ringVariable (mathematics)Spring (hydrology)Formal grammarFunction (mathematics)VarianceFormal grammarFunctional programmingPrototypeDeclarative programmingType theoryGroup actionRule of inferenceSocial classAttribute grammarMereologyMultiplication signTouchscreenSystem callFlow separationInformationVariable (mathematics)CodeRegulärer Ausdruck <Textverarbeitung>Programming languageComputer animation
Hash functionStatement (computer science)Function (mathematics)Variable (mathematics)Token ringWindowView (database)InformationFormal grammarType theorySocial classFlow separationPerspective (visual)Software developerProgramming languageComputer animation
Declarative programmingHash functionMoment (mathematics)Element (mathematics)Key (cryptography)Variable (mathematics)Functional programmingSyntaxbaumType theorySystem callLecture/Conference
Computer iconWindowToken ringSimulated annealingView (database)NumberSocial classString (computer science)Formal grammarObject-oriented programmingMatching (graph theory)Source codeComputer animation
Function (mathematics)WindowToken ringVariable (mathematics)CompilerBookmark (World Wide Web)Computer fileMoment of inertiaConvex hullType theoryHash functionProgramming languageComputer animation
WindowInternetworkingView (database)Hash functionStatement (computer science)Function (mathematics)Variable (mathematics)InternetworkingSoftware testingFormal grammarGodComputer fileDirectory serviceLecture/ConferenceXML
Gastropod shellCompilation albumHome pageHash functionDisk read-and-write headSimulationFormal grammarStatement (computer science)Social classSoftware testingProgramming languageComputer animation
Functional programmingSyntaxbaumLecture/Conference
Floating-point unitHome pageGastropod shellSimulationEmpennageMachine codeWindowView (database)Linear partial informationNumberIntegration by partsLink (knot theory)Statement (computer science)Formal grammarState of matterRule of inferenceType theoryComputer animation
Computer fileWindowBookmark (World Wide Web)NumberStatement (computer science)Rule of inferenceLoop (music)Formal grammarStatement (computer science)Type theoryDifferent (Kate Ryan album)TouchscreenXMLLecture/Conference
WindowBookmark (World Wide Web)NumberProgramming languageStatement (computer science)Rule of inferenceVariable (mathematics)Computer fileToken ringFunction (mathematics)Exterior algebraFormal grammarSingle-precision floating-point formatRule of inferenceStatement (computer science)Computer animation
Programming languageFormal grammarType theoryLecture/Conference
Software developerType theoryFormal grammarLecture/Conference
SpacetimeRule of inferenceDefault (computer science)Lecture/Conference
Lecture/ConferenceComputer animation
Transcript: English(auto-generated)