summaryrefslogtreecommitdiff
path: root/doc/context/presentations/context/2012/context-2012-lexing-sources.tex
diff options
context:
space:
mode:
Diffstat (limited to 'doc/context/presentations/context/2012/context-2012-lexing-sources.tex')
-rw-r--r--doc/context/presentations/context/2012/context-2012-lexing-sources.tex81
1 files changed, 81 insertions, 0 deletions
diff --git a/doc/context/presentations/context/2012/context-2012-lexing-sources.tex b/doc/context/presentations/context/2012/context-2012-lexing-sources.tex
new file mode 100644
index 000000000..1135148e1
--- /dev/null
+++ b/doc/context/presentations/context/2012/context-2012-lexing-sources.tex
@@ -0,0 +1,81 @@
+\usemodule[present-stepwise,present-bars,abr-01]
+
+\definecolor[verydark][s=.2]
+
+\startdocument
+ [title=Lexing sources,
+ color=verydark]
+
+\StartSteps
+
+\startsubject[title=What is lexing]
+
+ \startitemize[packed]
+ \startitem Computer languages have mandate structure. \stopitem \FlushStep
+ \startitem You can avoid errors by checking the input. \stopitem \FlushStep
+ \startitem Editors can help by coloring reserved words, concept etc. \stopitem \FlushStep
+ \startitem Consistency in coloring different languages makes sense. \stopitem \FlushStep
+ \stopitemize
+
+\stopsubject
+
+\startsubject[title=When did we start]
+
+ \startitemize[packed]
+ \startitem We wrote our first editor begin 90's. \stopitem \FlushStep
+ \startitem An extension quickly followed when we moved to \TEX: \TEXEDIT. \stopitem \FlushStep
+ \startitem When \MODULA\ was no longer fashion we moved on to \PERL: \TEXWORK\ (quick demo) \stopitem \FlushStep
+ \startitem When we ran into \SCITE\ we start using that. \stopitem \FlushStep
+ \startitem I provided syntax highlighting for \TEX\ and \METAPOST\ (support for multiple formats etc.). \stopitem \FlushStep
+ \stopitemize
+
+\stopsubject
+
+\StopSteps
+
+\page
+
+\StartSteps
+
+\startsubject[title=Side effect of \MKIV]
+
+ \startitemize[packed]
+ \startitem \SCITE\ got \LPEG\ based lexing (external lexing). \stopitem \FlushStep
+ \startitem I already had already written some lexers for the pretty printers. \stopitem \FlushStep
+ \startitem So I gave it a go and made some more advanced lexers. \stopitem \FlushStep
+ \startitem These ship with \CONTEXT: \TEX, \XML, \PDF, \LUA, \CLD, \METAPOST, text. \stopitem \FlushStep
+ \stopitemize
+
+\stopsubject
+
+\startsubject[title=Characteristics]
+
+ \startitemize[packed]
+ \startitem The \TEX\ lexer supports nested lexing of \LUA\ and \METAPOST. \stopitem \FlushStep
+ \startitem Integrated spell checking is provided. \stopitem \FlushStep
+ \startitem Unfortunately there is no lexing for \SCITE\ on \MACOSX\ (not that I care too much nowadays). \stopitem \FlushStep
+ \startitem It is a pitty that we have no access to \SCITE\ internal as with the regular \LUA\ interface. \stopitem \FlushStep
+ \startitem On my good old machine huge files lex somewhat slow (at the end). \stopitem \FlushStep
+ \stopitemize
+
+\stopsubject
+
+\StopSteps
+
+\page
+
+\StartSteps
+
+\startsubject[title=The future]
+
+ \startitemize[packed]
+ \startitem I will improve the current lexers. \stopitem \FlushStep
+ \startitem An \SQL\ lexer will be added at some point \stopitem \FlushStep
+ \startitem I might make an \HTML/\CSS\ variant that supports nexted \LMX. \stopitem \FlushStep
+ \stopitemize
+
+\stopsubject
+
+\StopSteps
+
+\stopdocument