From cd0276c0503ce946763b4a8ee4315ec1503aa64e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8C=AB=E5=AE=AE=E3=81=B4=E3=81=82=E3=81=AE=20/=20Piano?= =?UTF-8?q?=20Nekomiya?= <61345869+NSK-1010@users.noreply.github.com> Date: Wed, 5 Oct 2022 17:53:56 +0900 Subject: [PATCH 1/3] =?UTF-8?q?AUR=E5=82=99=E5=BF=98=E9=8C=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- nsk-1010/aur.md | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 nsk-1010/aur.md diff --git a/nsk-1010/aur.md b/nsk-1010/aur.md new file mode 100644 index 0000000..1b5c5bc --- /dev/null +++ b/nsk-1010/aur.md @@ -0,0 +1,20 @@ +# AUR投稿時の備忘録 + +## 新環境での準備 + +1. ssh鍵を作る(他の用途のものと別々にしといたほうがいいかも) +2. 公開鍵をMy Accountに提出 ※署名は入れない +4. 完了 + +## 投稿時 + +1. とりあえずパッケージのリポジトリをクローンする ※パッケージ作成をするときもからのリポジトリをクローンする +2. 書き換える +3. .SRCINFOを作る ※作れ +4. namcapで確認 +5. 一回確認のためにパッケージを作っとく ※URLとかハッシュ値の書き間違いがないか確認するため +6. 作ったパッケージもnamcapで確認 +7. 作ったパッケージを消す +8. コミット && 投稿 ※ブランチは`master` + +注: ***† This is 備忘録 †*** From bd7e28299fa867445a5478d974168eaa44dc1457 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8C=AB=E5=AE=AE=E3=81=B4=E3=81=82=E3=81=AE=20/=20Piano?= =?UTF-8?q?=20Nekomiya?= <61345869+NSK-1010@users.noreply.github.com> Date: Fri, 18 Nov 2022 18:26:56 +0900 Subject: [PATCH 2/3] Create brainfuck-intro.md --- nsk-1010/brainfuck-intro.md | 228 ++++++++++++++++++++++++++++++++++++ 1 file changed, 228 insertions(+) create mode 100644 nsk-1010/brainfuck-intro.md diff --git a/nsk-1010/brainfuck-intro.md b/nsk-1010/brainfuck-intro.md new file mode 100644 index 0000000..89a1d2f --- /dev/null +++ b/nsk-1010/brainfuck-intro.md @@ -0,0 +1,228 @@ +# Brainf\*\*k入門 +Brainf\*\*kはそのまま脳がフ〇〇クな言語です。 + +めちゃめちゃ可読性は低いですがネタ言語としては最高です。 + +これをベースに`Ook!`とか`Nyaruko`などが作られました。 + +つまりネタ言語入門って訳です。 + +## 使う記号 +Brainf\*\*kは使う記号が非常に少ないです。 + +本当に少ないので某W\*\*ipediaでもめっちゃ正確な書き方を得ることができます。 + +が、それだとこのナレッジベースの意味が全然ないので今から書いていきます。 + +| 記号 | 意味 | 例: C | +|---|---|---| +| `>` | ポインタのインクリメント | `*ptr++;` | +| `<` | ポインタのデクリメント | `*ptr--;` | +| `+` | ポインタの指す値のインクリメント | `(*ptr)++;` | +| `-` | ポインタの指す値のデクリメント | `(*ptr)--;` | +| `.` | ポインタの指す値を出力 | `putchar(*ptr);` | +| `.` | ポインタに入力から1バイト代入 | `*ptr=getchar();` | +| `[` | ポインタの指す値が0なら後の`]`へ(つまりループ) | `while(*ptr) {` | +| `]` | ポインタの指す値が0なら以外なら前の`[`へ(つまりループ終了) | `}` | + +って感じなんですがこれだけだと実感わかないと思うので実践編に行きますか、 + +## 実践編 +### まずは`+` `.` `>`だけで書いてみよう +実はこの3つの記号だけで書けます。 +では書いてみましょう。 + +#### ABC +その文字のASCIIコード数だけ+を入力します。 +```brainfuck ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ A +. +> +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ B +. +> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ C +. +> +++++++++++ 改行 +. +``` +これでも十分行けるんですがあまりにも長過ぎます。 + +折角Aから1つずつ`+`が増えているのにこれだと勿体ないですね。 + +というわけでポインタのインクリメントをやめられるところはやめてみましょう。 +```brainfuck ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +. ++ +. ++ +. +> +++++++++++ +. +``` +かなり短くなりました。 + +が、Aのところが長いです。 + +なので`[]`でループ処理をしてみましょう。 +```brainfuck +65 = 2^6 + 1なので +> +++ +[ + > + ++ + [ + > + ++ + [ + > + ++ + [ + > + ++ + [ + <<<<< + ++ + >>>>> + - + ] + < + - + ] + < + - + ] + < + - + ] + < + - +] +< ++ +. ++ +. ++ +. +> +++++++++++ +. +``` +ちなみに読みやすくするためにこうしただけであって本来は改行とインデントはなくていいです。 + +なんなら書かないことが多いです。 + +### Hello world! +ここまで来ればHello worldも余裕ですよね!? + +ではやってみましょう。 +```brainfuck +> +++ +[ + > + ++ + [ + > + ++ + [ + > + +++ + [ + <<<< + +++ + >>>> + - + ] + < + - + ] + < + - + ] + < + - +] +< +. +> +++ +[ + > + ++ + [ + << + +++++++ + >> + - + ] + < + - +] +< ++ +. ++++++++ +. +. ++++ +. +>>> +++ +[ + > + ++ + [ + > + ++ + [ + > + ++ + [ + <<<< + ++ + >>>> + - + ] + < + - + ] + < + - + ] + < + - +] +< +. +<< +++++++++ +. +-------- +. ++++ +. +------ +. +-------- +. +>> ++ +. +< +++++++++++ +. +``` +行数がかなり多くなってきて長いと感じるかもしれませんが、本来は1行なので... +```brainfuck +>++[>++[>++[>+++[<<<<+++>>>>-]<-]<-]<-]<.>++[>++[<<+++++++>>-]<-]<+.+++++++..+++.>>>++[>++[>++[>++[<<<<++>>>>-]<-]<-]<-]<.<<++++++++.--------.+++.------.--------.>>+.<++++++++++. +``` +まだこんなに短いです。 + +## 最後に +こんなネタとして最高の言語、みなさんも書いてみませんか...? From 2c9bc7bb868793a6721b86cb9d232c1d5de9cf40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8C=AB=E5=AE=AE=E3=81=B4=E3=81=82=E3=81=AE=20/=20Piano?= =?UTF-8?q?=20Nekomiya?= <61345869+NSK-1010@users.noreply.github.com> Date: Fri, 18 Nov 2022 18:28:20 +0900 Subject: [PATCH 3/3] Update brainfuck-intro.md --- nsk-1010/brainfuck-intro.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nsk-1010/brainfuck-intro.md b/nsk-1010/brainfuck-intro.md index 89a1d2f..ccf41fa 100644 --- a/nsk-1010/brainfuck-intro.md +++ b/nsk-1010/brainfuck-intro.md @@ -218,7 +218,7 @@ Brainf\*\*kは使う記号が非常に少ないです。 ++++++++++ . ``` -行数がかなり多くなってきて長いと感じるかもしれませんが、本来は1行なので... +行数がかなり多くなってきて長いと感じるかもしれませんが、1行で書くと... ```brainfuck >++[>++[>++[>+++[<<<<+++>>>>-]<-]<-]<-]<.>++[>++[<<+++++++>>-]<-]<+.+++++++..+++.>>>++[>++[>++[>++[<<<<++>>>>-]<-]<-]<-]<.<<++++++++.--------.+++.------.--------.>>+.<++++++++++. ```