ep2: Add a figure of musical notation

This commit is contained in:
Sameer Rahmani 2022-11-30 22:59:33 +00:00
parent ff850139ad
commit ad33bf5b0d
4 changed files with 82 additions and 91 deletions

View File

@ -2,6 +2,13 @@
latexmk -f -xelatex -interaction=nonstopmode -output-directory=$(PWD)/build/ ep$@.tex latexmk -f -xelatex -interaction=nonstopmode -output-directory=$(PWD)/build/ ep$@.tex
pdftoppm -png -f 1 -l 1 -singlefile -r 1200 -scale-to-x 1920 -scale-to-y 1080 $(PWD)/build/ep$@.pdf $(PWD)/build/ep$@ pdftoppm -png -f 1 -l 1 -singlefile -r 1200 -scale-to-x 1920 -scale-to-y 1080 $(PWD)/build/ep$@.pdf $(PWD)/build/ep$@
deps:
@echo "Source San Pro font family must be installed"
tlmgr update --list
tlmgr install fontspec
tlmgr install sourcesanspro
tlmgr install fontawesome5
.PHONY: clean .PHONY: clean
clean: clean:
rm -rf build rm -rf build

149
ep2.tex
View File

@ -26,107 +26,90 @@
\begin{document} \begin{document}
\maketitle \maketitle
\begin{frame}{Why do we have to start frome here?}{We already know what math is}
\begin{itemize}
\item there's no conses on the definition of mathematics but I'll give you mine \begin{frame}{Why did I choose to make this?}{}
\item interconnected web of mathematics, how an idea in one field drives you to others \begin{itemize}
\item asking the right question \item Originally I just wanted to start from logic
\item We learned about the basics of LLVM and MLIR \item I read a tweet which made me think not everyone knows what math really is
\item We created a basic platform to develop a programming language, that includes: \item I started to ask around online and even on the street
\begin{itemize} \begin{itemize}
\item A parser \item To my surprise majority of people got it wrong too
\item A JIT engine \item Even other engineers and scientists
\item A code generation pipeline
\item and few other bits and pieces
\end{itemize}
\item BUT we didn't come up with a specification for \href{https://serene-lang.org}{Serene}
\item We didn't design the language yet
\item That's what we're going to do in this series
\end{itemize}
\end{frame}
\begin{frame}{Specification}{}
\begin{itemize}
\item Not all the programming langs have specification
\item A spec or standard brings clarity for users and developers
\item We could've just implement an already exist spec like \href{http://www.r6rs.org/}{R6RS} (Scheme)
\item Or just create a language based on our intuition (many languages have done this)
\item Or design a standard from scratch \\
We can use about 100 years of Mathematics and Computer Science to our benefit
\end{itemize}
\end{frame}
\begin{frame}{Where to look?}
\begin{itemize}
\item Based on the past experience we have some initial idea on where to look
\item Later on we will find out whether or not our initial ideas were good
\item For example
\begin{itemize}
\item I prefer functional programming
\item Dynamic type systems
\item \ldots
\end{itemize}
\item We can start from there and study what we think is true and also any alternative to them
\end{itemize}
\end{frame}
\begin{frame}{Where we want to look}
\begin{itemize}
\item There are few major theories we can start from:
\begin{itemize}
\item Type theory
\item Category theory
\item Proof theory
\end{itemize}
\item They all describe the same world from different perspectives
\item Also, there are few papers that we need to look at, like the lisp paper
\end{itemize}
\end{frame}
\begin{frame}{Required tools}
\begin{itemize}
\item We need build up few mathematical skills
\item E.g We need to learn:
\begin{itemize}
\item Logic
\item Set theory
\item and discrete mathematics in general
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\end{frame} \end{frame}
\begin{frame}{The Plan}{} \begin{frame}{What was the tweet all about?}{}
\end{frame}
\begin{frame}{Why do we have to start frome here?}{}
\begin{itemize} \begin{itemize}
\item I like this series to be self contained as much as possible \item Understanding Mathematics helps us to think better
\item We're going to start from basics \item To asking the right question
\item We will cover \item There's no consensus on the definition of mathematics but I'll give you mine
\begin{itemize} \item My goal is to get you think
\item What is mathematics? and why do we need it? \end{itemize}
\item Mathematical thinking
\item Discrete mathematics \end{frame}
\item $\lambda$-calculus
\item Type theory \begin{frame}{So, What is mathematics?}{}
\item and the rest \begin{itemize}
\end{itemize} \item ``Mathematics is the language in which God has written the universe''
\item We will study the history of computer science an mathematics as well \item To put it simply Mathematics is a language with specific set of properties
\item History is a great guide \item Usually a language enables us to express something
\item For example musical notation is language to express music
\end{itemize} \end{itemize}
\end{frame} \end{frame}
\begin{frame}{Disclaimer}{} \begin{frame}{Musical notation}{}
\centering
Any one who speaks the language of musical notations understands this sheet
\begin{figure}
\centering
\pic{ep2/music_score.png}
\end{figure}
\end{frame}
\begin{frame}{Not just a language}{}
\begin{itemize} \begin{itemize}
\item I'm not a professional mathematician \item But it's not just a language, it's a language + reasoning, it's a tool for reasoning
\item I'm just sharing the result of my research and things that I learn. Take it with a grain of salt \item It's big collection of some people careful thoughts
\item ``Nullius in verba'' \item In form of provable statements
\end{itemize} \end{itemize}
\end{frame} \end{frame}
\begin{frame}{So, What is mathematics?}{}
\begin{itemize}
\item By Mathematics it is possible to connect one statement to others.
\item Mathematics is a way of going from one set of statements to another via reason.
\item It's an interconnected web, how an idea in one field drives you to others
\end{itemize}
\end{frame}
\begin{frame}{What are those statement all about?}{}
\begin{itemize}
\item Humans are pattern recognizing machines (We will talk about it more in the episode)
\item Mathematics is all about generalizing those patterns via abstractions
\item Usually there are more than one way to describe the same thing
\item different between doing math and usign math
\begin{itemize}
\item Mathematicians want to make their reasoning as general as possible
\item But math users usually want special cases
\end{itemize}
\end{itemize}
\end{frame}
\begin{frame}{Contact}{} \begin{frame}{Contact}{}
Please shared your thoughts and ideas or researches and papers that you want me to have a look at via: Please shared your thoughts and ideas or researches and papers that you want me to have a look at via:
\begin{itemize} \begin{itemize}
\item Comment section on \href{https://youtube.com/c/lxsameer}{youtube} \item Comment section on \href{https://youtube.com/c/lxsameer}{youtube}
\item \href{https://lxsameer.com}{https://lxsameer.com} \item \href{https://lxsameer.com}{https://lxsameer.com}
\end{itemize} \end{itemize}
\end{frame} \end{frame}
\end{document} \end{document}

BIN
ep2/music_score.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

View File

@ -44,7 +44,7 @@
\setbeamercolor{palette secondary} {fg=spurple,bg=white} \setbeamercolor{palette secondary} {fg=spurple,bg=white}
\setbeamercolor{structure}{fg=white,bg=spurple} \setbeamercolor{structure}{fg=white,bg=spurple}
\setbeamercolor{title in head/foot}{fg=white,bg=spurple} \setbeamercolor{title in head/foot}{fg=white,bg=spurple}
\setbeamercolor{date in head/foot}{fg=lightgray,bg=spurple} \setbeamercolor{date in head/foot}{fg=lightgray}
\setbeamercolor{background canvas}{bg=spurple} \setbeamercolor{background canvas}{bg=spurple}
\setbeamercolor{title}{fg=blue,bg=spurple} \setbeamercolor{title}{fg=blue,bg=spurple}
\setbeamercolor{normal text}{fg=white} \setbeamercolor{normal text}{fg=white}
@ -63,13 +63,10 @@
% definition of the footline template % definition of the footline template
\defbeamertemplate*{footline}{mytheme}{% \defbeamertemplate*{footline}{mytheme}{%
\leavevmode% \leavevmode%
\hbox{\begin{beamercolorbox}[wd=.3\paperwidth,ht=2.5ex,dp=1.125ex,leftskip=.3cm,rightskip=.3cm]{title in head/foot}% \hspace{0.5em}
\makebox[2em][l]{{\usebeamerfont{title in head/foot}\textcolor{white}{\@ep}}}% \hbox{
{\usebeamercolor{title in head/foot}{\@eptitle}} {\usebeamercolor{title in head/foot}{\@ep \- \@eptitle}}}
\end{beamercolorbox}% \vspace{0.5em}
\begin{beamercolorbox}[wd=.3\paperwidth,ht=2.5ex,dp=1.125ex,leftskip=.3cm,rightskip=.3cm,right]{title in head/foot}%
\end{beamercolorbox}}%
\vskip0pt%
} }
% definition of the title page template % definition of the title page template
@ -113,3 +110,7 @@
\defbeamertemplate*{itemize item}{mysymbol}{\small\raise0.5pt\hbox{\mysymbol}} \defbeamertemplate*{itemize item}{mysymbol}{\small\raise0.5pt\hbox{\mysymbol}}
\defbeamertemplate*{itemize subitem}{mysymbol}{\footnotesize\raise0.5pt\hbox{\mysymbol}} \defbeamertemplate*{itemize subitem}{mysymbol}{\footnotesize\raise0.5pt\hbox{\mysymbol}}
\defbeamertemplate*{itemize subsubitem}{mysymbol}{\footnotesize\raise0.5pt\hbox{\mysymbol}} \defbeamertemplate*{itemize subsubitem}{mysymbol}{\footnotesize\raise0.5pt\hbox{\mysymbol}}
\newcommand{\pic}[1]{
\includegraphics[width=0.7\textwidth]{#1}}