mirror of
https://github.com/sdiehl/wiwinwlh.git
synced 2024-10-05 16:08:22 +03:00
Write more
This commit is contained in:
parent
a79f8f85aa
commit
77ccb60744
11
Makefile
11
Makefile
@ -2,9 +2,9 @@ PANDOC = pandoc
|
||||
IFORMAT = markdown+raw_tex+raw_attribute
|
||||
GHC = ghc
|
||||
|
||||
HTEMPLATE = resources/page.tmpl
|
||||
LTEMPLATE = resources/page.latex
|
||||
ETEMPLATE = resources/page.epubt
|
||||
HTEMPLATE = resources/template.html
|
||||
LTEMPLATE = resources/template.tex
|
||||
ETEMPLATE = resources/template.epub
|
||||
|
||||
UNICODE_MAP = resources/unicodemapping.tex
|
||||
|
||||
@ -17,6 +17,9 @@ HTML = tutorial.html
|
||||
EPUB = tutorial.epub
|
||||
PDF = tutorial.pdf
|
||||
|
||||
COVER = resources/cover.tex
|
||||
BACK = resources/back.tex
|
||||
|
||||
all: $(HTML) $(EPUB) $(PDF)
|
||||
html: $(HTML)
|
||||
pdf: $(PDF)
|
||||
@ -34,7 +37,7 @@ includes: includes.hs
|
||||
(cat $(ETEMPLATE); ./includes < $<) \
|
||||
| $(PANDOC) -f $(IFORMAT) -t epub $(FLAGS) $(EFLAGS) -o $@
|
||||
|
||||
%.pdf: %.md includes
|
||||
%.pdf: %.md includes $(COVER) $(BACK)
|
||||
./includes < $< | $(PANDOC) -c -s -f $(IFORMAT) --template $(LTEMPLATE) --include-in-header $(UNICODE_MAP) --pdf-engine=xelatex $(FLAGS) $(LFLAGS) -o $@
|
||||
|
||||
clean:
|
||||
|
50
resources/back.tex
Normal file
50
resources/back.tex
Normal file
@ -0,0 +1,50 @@
|
||||
\pagestyle{empty}
|
||||
|
||||
\begin{figure}
|
||||
\centering
|
||||
\includegraphics[height=1in,width=1in]{img/cover.ps}
|
||||
\end{figure}
|
||||
|
||||
\Large
|
||||
Haskell is an advanced general purpose programming language. This tutorial
|
||||
covers all aspects of Haskell development from foundations to compiler
|
||||
development. Topics include:
|
||||
|
||||
\small
|
||||
\begin{enumerate}
|
||||
\item Basics
|
||||
\item Monads
|
||||
\item Monad Transformers
|
||||
\item Language Extensions
|
||||
\item Type Classes
|
||||
\item Laziness
|
||||
\item Prelude
|
||||
\item Strings
|
||||
\item Applicatives
|
||||
\item Error Handling
|
||||
\item Advanced Monads
|
||||
\item Quantification
|
||||
\item Generalized Algebraic Datatypes
|
||||
\item Interpreters
|
||||
\item Testing
|
||||
\item Type Families
|
||||
\item Promotion
|
||||
\item Generics
|
||||
\item Mathematics
|
||||
\item Data Structures
|
||||
\item Foreign Function Interface
|
||||
\item Concurrency \& Parallelism
|
||||
\item Graphics
|
||||
\item Parsers
|
||||
\item Stream Processing
|
||||
\item Cryptography
|
||||
\item Date \& Time
|
||||
\item Data Formats \& Serialisation
|
||||
\item Network \& Web Programming
|
||||
\item Databases
|
||||
\item GHC Compiler
|
||||
\item Profiling
|
||||
\item Compiler Development
|
||||
\item Template Haskell
|
||||
\item Category Theory
|
||||
\end{enumerate}
|
21
resources/cover.tex
Normal file
21
resources/cover.tex
Normal file
@ -0,0 +1,21 @@
|
||||
\begin{titlepage}
|
||||
\definecolor{titlepagecolor}{HTML}{FDF6E3}
|
||||
\definecolor{namecolor}{cmyk}{1,.50,0,.10}
|
||||
%\pagecolor{titlepagecolor}
|
||||
\pagecolor{white}
|
||||
|
||||
\vspace*{\stretch{1.0}}
|
||||
\begin{center}
|
||||
\Huge\textbf{What I Wish I Knew When Learning Haskell}\\
|
||||
\vspace*{\stretch{0.5}}
|
||||
\Large\textit{Stephen Diehl}
|
||||
\end{center}
|
||||
\vspace*{\stretch{2.0}}
|
||||
|
||||
\begin{figure}
|
||||
\centering
|
||||
\includegraphics[height=3in,width=3in]{img/cover.ps}
|
||||
\end{figure}
|
||||
|
||||
\end{titlepage}
|
||||
\pagecolor{white}
|
@ -165,32 +165,15 @@ $endfor$
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
||||
\begin{titlepage}
|
||||
\definecolor{titlepagecolor}{HTML}{FDF6E3}
|
||||
\definecolor{namecolor}{cmyk}{1,.50,0,.10}
|
||||
\pagecolor{titlepagecolor}
|
||||
\input{resources/cover.tex}
|
||||
|
||||
\vspace*{\stretch{1.0}}
|
||||
\begin{center}
|
||||
\Huge\textbf{What I Wish I Knew When Learning Haskell}\\
|
||||
\vspace*{\stretch{0.5}}
|
||||
\Large\textit{Stephen Diehl}
|
||||
\end{center}
|
||||
\vspace*{\stretch{2.0}}
|
||||
|
||||
\begin{figure}
|
||||
\centering
|
||||
\includegraphics[height=3in,width=3in]{img/cover.ps}
|
||||
\end{figure}
|
||||
|
||||
\end{titlepage}
|
||||
\pagecolor{white}
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
||||
\textbf{Date}: \today \\
|
||||
\textbf{Git Commit:} \texttt{\input{.git/ORIG_HEAD}}
|
||||
|
||||
\newpage
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
||||
$for(include-before)$
|
||||
@ -210,10 +193,21 @@ $endif$
|
||||
}
|
||||
$endif$
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
||||
$body$
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
||||
$for(include-after)$
|
||||
$include-after$
|
||||
$endfor$
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
||||
\newpage
|
||||
\input{resources/back.tex}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
||||
\end{document}
|
@ -1,4 +1,4 @@
|
||||
name: assign
|
||||
name: example
|
||||
version: 0.1.0.0
|
||||
build-type: Simple
|
||||
extra-source-files: README.md
|
||||
@ -6,14 +6,15 @@ cabal-version: >=1.10
|
||||
|
||||
executable assign
|
||||
build-depends:
|
||||
base >= 4.6 && <4.9
|
||||
, containers >= 0.5 && <0.6
|
||||
base >= 4.6 && <4.14
|
||||
, array >= 0.5 && <0.6
|
||||
, containers >= 0.5 && <0.7
|
||||
, mtl >= 2.2
|
||||
default-language: Haskell2010
|
||||
main-is: Main.hs
|
||||
|
||||
Build-depends: base, array
|
||||
build-tools: alex, happy
|
||||
other-modules:
|
||||
Parser,
|
||||
other-modules:
|
||||
Parser
|
||||
Lexer
|
||||
Syntax
|
||||
Eval
|
@ -1,4 +1,4 @@
|
||||
resolver: lts-3.16
|
||||
resolver: lts-14.20
|
||||
packages:
|
||||
- '.'
|
||||
extra-deps: []
|
||||
|
1339
tutorial.md
1339
tutorial.md
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user