From 0c3f8c7cd6d0086d97a815623819b3064f4c5af3 Mon Sep 17 00:00:00 2001 From: Andrew Guschin Date: Sat, 6 Jul 2024 13:06:51 +0400 Subject: stupid --- dist/dsc.css | 4 +- images/Frame1.png | Bin 0 -> 20237 bytes images/Frame2.png | Bin 0 -> 111769 bytes images/Frame3.png | Bin 0 -> 49716 bytes images/Frame4.png | Bin 0 -> 79908 bytes images/Frame5.png | Bin 0 -> 100264 bytes images/Frame6.png | Bin 0 -> 111316 bytes images/Frame7.png | Bin 0 -> 124663 bytes images/Frame8.png | Bin 0 -> 139754 bytes images/gwern.gif | Bin 0 -> 4271 bytes images/php1.png | Bin 0 -> 150824 bytes images/php2.png | Bin 0 -> 100676 bytes images/rustup.png | Bin 0 -> 1248 bytes images/unnormal.png | Bin 0 -> 4887557 bytes images/web1.png | Bin 0 -> 62213 bytes images/web2.png | Bin 0 -> 33317 bytes presentations/unnormal.md | 62 +++++++++ presentations/unnormal2.md | 318 +++++++++++++++++++++++++++++++++++++++++++++ 18 files changed, 382 insertions(+), 2 deletions(-) create mode 100644 images/Frame1.png create mode 100644 images/Frame2.png create mode 100644 images/Frame3.png create mode 100644 images/Frame4.png create mode 100644 images/Frame5.png create mode 100644 images/Frame6.png create mode 100644 images/Frame7.png create mode 100644 images/Frame8.png create mode 100644 images/gwern.gif create mode 100644 images/php1.png create mode 100644 images/php2.png create mode 100644 images/rustup.png create mode 100644 images/unnormal.png create mode 100644 images/web1.png create mode 100644 images/web2.png create mode 100644 presentations/unnormal.md create mode 100644 presentations/unnormal2.md diff --git a/dist/dsc.css b/dist/dsc.css index f2f88ac..8ba4135 100644 --- a/dist/dsc.css +++ b/dist/dsc.css @@ -12,8 +12,8 @@ .reveal img, .reveal video, .reveal iframe { - max-width: 95%; - max-height: 95%; + max-width: 65%; + max-height: 65%; } .reveal a { diff --git a/images/Frame1.png b/images/Frame1.png new file mode 100644 index 0000000..4c05171 Binary files /dev/null and b/images/Frame1.png differ diff --git a/images/Frame2.png b/images/Frame2.png new file mode 100644 index 0000000..c652488 Binary files /dev/null and b/images/Frame2.png differ diff --git a/images/Frame3.png b/images/Frame3.png new file mode 100644 index 0000000..ecf15ef Binary files /dev/null and b/images/Frame3.png differ diff --git a/images/Frame4.png b/images/Frame4.png new file mode 100644 index 0000000..44c6ff3 Binary files /dev/null and b/images/Frame4.png differ diff --git a/images/Frame5.png b/images/Frame5.png new file mode 100644 index 0000000..1b393db Binary files /dev/null and b/images/Frame5.png differ diff --git a/images/Frame6.png b/images/Frame6.png new file mode 100644 index 0000000..b3a26b8 Binary files /dev/null and b/images/Frame6.png differ diff --git a/images/Frame7.png b/images/Frame7.png new file mode 100644 index 0000000..6fbd448 Binary files /dev/null and b/images/Frame7.png differ diff --git a/images/Frame8.png b/images/Frame8.png new file mode 100644 index 0000000..57e3b39 Binary files /dev/null and b/images/Frame8.png differ diff --git a/images/gwern.gif b/images/gwern.gif new file mode 100644 index 0000000..59a7aa2 Binary files /dev/null and b/images/gwern.gif differ diff --git a/images/php1.png b/images/php1.png new file mode 100644 index 0000000..160d497 Binary files /dev/null and b/images/php1.png differ diff --git a/images/php2.png b/images/php2.png new file mode 100644 index 0000000..ba4fed3 Binary files /dev/null and b/images/php2.png differ diff --git a/images/rustup.png b/images/rustup.png new file mode 100644 index 0000000..ebfb814 Binary files /dev/null and b/images/rustup.png differ diff --git a/images/unnormal.png b/images/unnormal.png new file mode 100644 index 0000000..042bdda Binary files /dev/null and b/images/unnormal.png differ diff --git a/images/web1.png b/images/web1.png new file mode 100644 index 0000000..975a608 Binary files /dev/null and b/images/web1.png differ diff --git a/images/web2.png b/images/web2.png new file mode 100644 index 0000000..8fde9e1 Binary files /dev/null and b/images/web2.png differ diff --git a/presentations/unnormal.md b/presentations/unnormal.md new file mode 100644 index 0000000..f112fa0 --- /dev/null +++ b/presentations/unnormal.md @@ -0,0 +1,62 @@ +# Ненормальное программирование + +--- + +# Машина Тьюринга + +- Лента, состоящая из ячеек +- Управляющее устройство +- Хранилище состояния +- Правила перехода + +--- + +# Эзотерические ЯП + +![](images/unnormal.png) + +--- + +# Полные по Тьюрингу языки + +- C++ +- Rust +- Haskell +- Lisp + +--- + + +> Любая достаточно сложная программа на Си или Фортране содержит заново +> написанную, неспецифицированную, глючную и медленную реализацию половины языка +> Common Lisp. + +- Филипп Гринспен + +--- + + +> Любая достаточно сложная программа на Си или Фортране содержит заново +> написанную, неспецифицированную, глючную и медленную реализацию половины языка +> Common Lisp. + +- Филипп Гринспен + +> ...в том числе и сам Common Lisp. + +- Роберт Моррис + +--- + +# Структура простого проекта на C++ + +- CMakeLists.txt -> Makefile +- main.cpp + +--- + +# Surprisingly turing-complete + +- https://gwern.net/turing-complete + +![](images/gwern.gif) diff --git a/presentations/unnormal2.md b/presentations/unnormal2.md new file mode 100644 index 0000000..95df8ec --- /dev/null +++ b/presentations/unnormal2.md @@ -0,0 +1,318 @@ +# Ненормальное программирование + +--- + +# Машина Тьюринга + +- Лента, состоящая из ячеек +- Управляющее устройство +- Хранилище состояния +- Правила перехода + +--- + +# Эзотерические ЯП + +![](images/unnormal.png) + +--- + +# Surprisingly turing-complete + +- https://gwern.net/turing-complete + +![](images/gwern.gif) + +--- + +# Ненормальное программирование + +--- + + +![](images/Frame1.png) + +--- + + +![](images/Frame2.png) + +--- + + +![](images/Frame3.png) + +--- + + +![](images/Frame4.png) + +--- + + +![](images/Frame5.png) + +--- + + +![](images/Frame6.png) + +--- + + +![](images/Frame7.png) + +--- + + +![](images/Frame8.png) + +--- + +# PHP + +![](images/php1.png) + +--- + +# PHP + +![](images/php2.png) + +--- + +# Bash + +--- + +```sh [] +check_curl_for_retry_support +_retry="$RETVAL" +get_ciphersuites_for_curl +_ciphersuites="$RETVAL" +if [ -n "$_ciphersuites" ]; then + _err=$(curl $_retry --proto '=https' --tlsv1.2 --ciphers "$_ciphersuites" --silent --show-error --fail --location "$1" --output "$2" 2>&1) + _status=$? +else + echo "Warning: Not enforcing strong cipher suites for TLS, this is potentially less secure" + if ! check_help_for "$3" curl --proto --tlsv1.2; then + echo "Warning: Not enforcing TLS v1.2, this is potentially less secure" + _err=$(curl $_retry --silent --show-error --fail --location "$1" --output "$2" 2>&1) + _status=$? + else + _err=$(curl $_retry --proto '=https' --tlsv1.2 --silent --show-error --fail --location "$1" --output "$2" 2>&1) + _status=$? + fi +fi +if [ -n "$_err" ]; then + echo "$_err" >&2 + if echo "$_err" | grep -q 404$; then + err "installer for platform '$3' not found, this may be unsupported" + fi +fi +return $_status +``` + +--- + +# JavaScript + +--- + + +```js [] +> [] + [] +``` + + +--- + + +```js [] +> [] + [] +"" +``` + + +--- + + +```js [] +> [] + [] +"" +> [] + {} +``` + +--- + + +```js [] +> [] + [] +"" +> [] + {} +"[object Object]" +``` + + +--- + + +```js [] +> [] + [] +"" +> [] + {} +"[object Object]" +> {} + [] +``` + +--- + + +```js [] +> [] + [] +"" +> [] + {} +"[object Object]" +> {} + [] +0 +``` + + +--- + + +```js [] +> [] + [] +"" +> [] + {} +"[object Object]" +> {} + [] +0 +> {} + {} +``` + + +--- + + +```js [] +> [] + [] +"" +> [] + {} +"[object Object]" +> {} + [] +0 +> {} + {} +NaN +``` + + +--- + +# Web + +--- + +![](images/web1.png) + +--- + +![](images/web2.png) + +--- + + +# YAML-программирование + +--- + + +# YAML-программирование + +- docker-compose +- GitHub Actions/GitLab Runners +- Terraform +- Kubernetes +- Ansible +- Jenkins + +--- + +# C++ + +--- + +# Структура простого проекта на C++ + +- CMakeLists.txt -> Makefile +- main.cpp + +--- + + + +```cpp [] +cout<< Eval< Call< Lib::Sum, Call< Lib::Filter, + Call< Lib::Range, Int<1>, Int<10> >, + Lambda< ParamList< Var<0> >, + IsEqual< Mod< Var<0>, Int<2> >, + Int<0> > > > > >::value::value; +``` + +--- + + +```cpp [] +int i(int(j)); +``` + + +--- + + +```cpp [] +int i(int(j)); +int i(int(j)) { + return j * j; +} +``` + + +--- + + +```cpp +int i(int(j)); +int i(int(j)) { + return j * j; +} +``` + +```cpp +%:include +%:define HELLO "HELLO" +%:define WORLD "WORLD" + +main(int argc, char *argv<::>) +<% + if (argc > 1) <% + std::cout<< else <% + std::cout << HELLO WORLD << std::endl; + %> +%> +``` + +--- + +> There are only two kinds of languages: the ones people complain about and the ones nobody uses. + +- Bjarne Stroustrup + +--- + +# Этот слайд захвачен ржавчиной + + + +![](images/rustup.png) -- cgit v1.2.3