HASKELL SPACEFLIGHT WORKSHOP
18 |The current workshop notes and introductory slides:
19 | 24 |Source code is available in 25 | the GitHub repository.
27 |├── cabal.project ├── Setup.hs ├── ChangeLog.md ├── run-ghcid.sh ├── .gitignore ├── notes ├── fig │ ├── logo-text.pdf │ └── logo-text-dark.pdf ├── beamer-trek │ ├── Antonio-Bold.ttf │ ├── beamerthemetrek.sty │ ├── beamerfontthemetrek.sty │ ├── beamercolorthemetrek.sty │ ├── trek-shapes.sty │ ├── beamerinnerthemetrek.sty │ └── beamerouterthemetrek.sty ├── Makefile ├── intro-slides.tex └── references.bib ├── .ghci ├── stack.yaml ├── test └── Test.hs ├── gh-pages ├── index.html └── css │ └── style.css ├── LICENSE ├── src ├── Staging │ └── Types.hs ├── Orphans.hs ├── Todo.hs ├── Hohmann │ └── Types.hs ├── Units.hs ├── Solutions │ ├── Hohmann.hs │ ├── Staging.hs │ └── ODE.hs ├── Staging.hs ├── Hohmann.hs ├── LunarAscent │ ├── AGC.hs │ └── Types.hs ├── ODE.hs ├── Examples │ └── ODEExamples.hs ├── Plot.hs └── LunarAscent.hs ├── app └── tex-plots │ └── Main.hs ├── .travis.yml ├── space-workshop.cabal ├── README.md └── logo.svg /cabal.project: -------------------------------------------------------------------------------- 1 | with-compiler: ghc-8.6.4 2 | -------------------------------------------------------------------------------- /Setup.hs: -------------------------------------------------------------------------------- 1 | import Distribution.Simple 2 | main = defaultMain 3 | -------------------------------------------------------------------------------- /ChangeLog.md: -------------------------------------------------------------------------------- 1 | # Changelog for space-workshop 2 | 3 | ## Unreleased changes 4 | -------------------------------------------------------------------------------- /run-ghcid.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | stack exec ghcid -- -c 'stack ghci' 3 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .stack-work/ 2 | *~ 3 | .DS_Store 4 | *.ps 5 | dist-newstyle/ 6 | .ghc.environment.* 7 | -------------------------------------------------------------------------------- /notes/fig/logo-text.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lancelet/space-workshop/HEAD/notes/fig/logo-text.pdf -------------------------------------------------------------------------------- /notes/fig/logo-text-dark.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lancelet/space-workshop/HEAD/notes/fig/logo-text-dark.pdf -------------------------------------------------------------------------------- /notes/beamer-trek/Antonio-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lancelet/space-workshop/HEAD/notes/beamer-trek/Antonio-Bold.ttf -------------------------------------------------------------------------------- /notes/beamer-trek/beamerthemetrek.sty: -------------------------------------------------------------------------------- 1 | \useoutertheme{trek} 2 | \useinnertheme{trek} 3 | \usefonttheme{trek} 4 | \usecolortheme{trek} -------------------------------------------------------------------------------- /.ghci: -------------------------------------------------------------------------------- 1 | :set prompt "ghci> " 2 | :seti -Wno-missing-import-lists 3 | :seti -XDataKinds 4 | :seti -XFlexibleContexts 5 | :seti -XScopedTypeVariables 6 | :seti -XTypeFamilies 7 | :seti -XTypeOperators 8 | -------------------------------------------------------------------------------- /stack.yaml: -------------------------------------------------------------------------------- 1 | resolver: lts-16.2 2 | packages: 3 | - . 4 | extra-deps: 5 | - iterm-show-0.1.0.1 6 | - diagrams-pgf-1.4.1.1 7 | - posix-pty-0.2.1.1 8 | - texrunner-0.0.1.2 9 | - units-2.4.1.3 10 | - units-defs-2.2 11 | - units-parser-0.1.1.3 12 | - wshterm-0.1.0.1 13 | 14 | nix: 15 | pure: false 16 | -------------------------------------------------------------------------------- /test/Test.hs: -------------------------------------------------------------------------------- 1 | module Main where 2 | 3 | import qualified Test.DocTest as DocTest 4 | import qualified Test.Tasty as Tasty 5 | 6 | 7 | main :: IO () 8 | main = doctests 9 | >> Tasty.defaultMain tests 10 | 11 | 12 | tests :: Tasty.TestTree 13 | tests = Tasty.testGroup "Tests" 14 | [ 15 | ] 16 | 17 | 18 | doctests :: IO () 19 | doctests = do 20 | putStrLn "\nRunning doctests ..." 21 | DocTest.doctest [ "-isrc", "src/ODE.hs" ] 22 | putStrLn "... done running doctests.\n" 23 | -------------------------------------------------------------------------------- /notes/Makefile: -------------------------------------------------------------------------------- 1 | .PHONY: all 2 | all: notes.pdf intro-slides.pdf 3 | 4 | notes.pdf: notes.tex references.bib 5 | latexmk -lualatex -latexoption=-shell-escape $(PREVIEW_CONTINUOUSLY) notes.tex 6 | 7 | intro-slides.pdf: intro-slides.tex 8 | TEXINPUTS=$(TEXINPUTS):./beamer-trek latexmk -lualatex $(PREVIEW_CONTINUOUSLY) intro-slides.tex 9 | 10 | .PHONY: watch 11 | watch: PREVIEW_CONTINUOUSLY='-pvc' 12 | watch: notes.pdf 13 | 14 | .PHONY: watch-slides 15 | watch-slides: PREVIEW_CONTINUOUSLY='-pvc' 16 | watch-slides: intro-slides.pdf 17 | 18 | .PHONY: clean 19 | clean: 20 | rm -rf *.aux *.bbl *.blg *.fdb_latexmk *.fls *.log *.out *.toc _minted-notes *.nav *.snm 21 | 22 | .PHONY: mrclean 23 | mrclean: clean 24 | rm -f notes.pdf intro-slides.pdf 25 | -------------------------------------------------------------------------------- /notes/beamer-trek/beamerfontthemetrek.sty: -------------------------------------------------------------------------------- 1 | \RequirePackage{fontspec} 2 | 3 | 4 | \def\familydefault{\sfdefault} 5 | \def\trek@font{\fontspec[Path=./beamer-trek/,Extension=.ttf]{Antonio-Bold}} 6 | 7 | \setbeamerfont{frametitle}{ 8 | family=\trek@font, 9 | size=\fontsize{14}{14} 10 | } 11 | \setbeamerfont{title in head/foot}{ 12 | family=\trek@font, 13 | size=\fontsize{8}{8} 14 | } 15 | \setbeamerfont{title}{ 16 | family=\trek@font, 17 | size=\fontsize{18}{18} 18 | } 19 | \setbeamerfont{subtitle}{ 20 | family=\trek@font, 21 | size=\fontsize{14}{14} 22 | } 23 | \setbeamerfont{author}{ 24 | family=\trek@font, 25 | size=\fontsize{10}{10} 26 | } 27 | \setbeamerfont{institute}{ 28 | family=\trek@font, 29 | size=\fontsize{14}{14} 30 | } 31 | \setbeamerfont{date}{ 32 | family=\trek@font, 33 | size=\fontsize{10}{10} 34 | } 35 | \setbeamerfont{enumerate item}{ 36 | family=\trek@font, 37 | size=\fontsize{6}{6} 38 | } 39 | \setbeamerfont{enumerate subitem}{ 40 | parent=enumerate item 41 | } 42 | \setbeamerfont{enumerate subsubitem}{ 43 | parent=enumerate item 44 | } 45 | \setbeamerfont{itemize/enumerate body}{ 46 | family=\sffamily, 47 | size=\normalsize 48 | } 49 | -------------------------------------------------------------------------------- /gh-pages/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 |The current workshop notes and introductory slides:
19 | 24 |Source code is available in 25 | the GitHub repository.
27 |