diff options
| author | Emil | 2023-08-04 09:13:47 -0600 |
|---|---|---|
| committer | Emil | 2023-08-04 09:13:47 -0600 |
| commit | 935243d8b4ea992c50315f0c8fcb300365a5762d (patch) | |
| tree | c22d800773997b7b267d5d6cba5931f22ee2be64 /docs | |
| download | emil-probotic-master.tar.xz emil-probotic-master.tar.zst | |
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/api.md | 14 | ||||
| -rw-r--r-- | docs/cli.txt | 9 | ||||
| -rw-r--r-- | docs/example_cli_usage.txt | 1 | ||||
| -rw-r--r-- | docs/extern_project_idea_list.txt | 79 | ||||
| -rw-r--r-- | docs/formatting.txt | 2 | ||||
| -rw-r--r-- | docs/project-goals.txt | 51 | ||||
| -rw-r--r-- | docs/rizon_default.cfg | 3 | ||||
| -rw-r--r-- | docs/save_format_idea.txt | 9 |
8 files changed, 168 insertions, 0 deletions
diff --git a/docs/api.md b/docs/api.md new file mode 100644 index 0000000..a1d7da3 --- /dev/null +++ b/docs/api.md @@ -0,0 +1,14 @@ +# Syntax + <bot_name>: <command> + +# Commands + + remind : dump current assignment +## Admin + + reroll : terminate current assignment early and get a new + + set_repo <link> : set project repository link (to be dumped on remind) + + raw <sql> : execute raw sql, so add/delete is covered without retarded interfaces +## PM +So random users cant shit up the channel / add support for personal assignments. + + dump : list all possible projects + + request : request personal project + + remind : dump the users current personal assignment diff --git a/docs/cli.txt b/docs/cli.txt new file mode 100644 index 0000000..68f8086 --- /dev/null +++ b/docs/cli.txt @@ -0,0 +1,9 @@ +-server SERVER - The desired server. +-port PORT - Places port number. +-username USERNAME - Specifies the username. +-password PASSW0RD - Sets a password. +-auth FILE - Uses an authorization file. +-help - A message likewise. +-version - Currently nothing. + +options before are overwritten, and after take precedence. diff --git a/docs/example_cli_usage.txt b/docs/example_cli_usage.txt new file mode 100644 index 0000000..ab93849 --- /dev/null +++ b/docs/example_cli_usage.txt @@ -0,0 +1 @@ +./probotic irc.rizon.net 6667 '#/g/chad' probotic diff --git a/docs/extern_project_idea_list.txt b/docs/extern_project_idea_list.txt new file mode 100644 index 0000000..18c2609 --- /dev/null +++ b/docs/extern_project_idea_list.txt @@ -0,0 +1,79 @@ +[easy] [medi] [hard] [fuck you] -- I'm not entirely sure about: [netlet] [mathlet] +[-day] [-week] [-month] [-year] [-never] To completion + +Starting off: +Hello world +Fizz Buzz +Data Structures (Stacks, Heaps, Binary Trees, etc) + +AI: +[medi-week] Neural Network +[hard-months] Tensorflow Clone + +Algorithms: +[medi-day] Custom Allocator +[medi-day] Custom Compression Library +[easy-day] ROT 13, ROT 47, ROT with any series +[hard-week] Vectorized SIMD Matrix Multiplier +[medi-week] Printf Suite Implementation +[easy-day] String Manipulation Library +[medi-day] Pathfinding: Dijkstra's Algorithm +[medi-day] Pathfinding: A* Search Algorithm + +Applied Math and Problems: +[mathlet] General Lambert's-Problem Solver +[hard-week] Solution to the 8 Queens Problem + +Calculators: +[hard-month] Graphing Calculator +[easy-week] Normal Calculator +[easy-week] Reverse Polish Notation Calculator (Look into dc(1)) +[medi-week] Spreadsheet (CSV Read/write) (With Excel features) + +Compiler (Or Interpreter) Theory: +[hard-month] C Compiler +[hard-3weeks] Holy C Compiler +[hard-week] Scheme/Lisp Compiler +[fuck you-year] Language Virtual Machine +[easy-week] Custom LLVM Language +[medi-month] YACC Implementation + +Networking: +[netlet] E2EE PSK Messenger (either GUI or CLI, preferably detached from servers) +[netlet] HTTP Web Server +[medi-months] IRC Client +[medi-months] Matrix Client +[medi-months] BitTorrent Client + +OS: +wiki.osdev.org + +Games: +/g/gedg/ +learnopengl.com +libsdl.org +raylib.com +sfml-dev.org (C++ with a C binding) +godotengine.org (C++ game engine, terrible scripting) + +Rendering: +[fuck you-forever] 3D CAD Software +[hard-months] 3D Vertex Editor +[hard-weeks] Bitmap Raytracer +[hard-months] Media Player (Think MPV & VLC) +[medi-weeks] Music Player Daemon Implementation +[medi-week] Image to ASCII (BONUS: Use Unicode or Color) + +Simulation: +[mathlet] Hydrodynamics +[mathlet] Aerodynamics +[medi-week] Rigid Body Physics +[easy-week] Voronoi Diagram (HARDMODE: hardware rendering) + +Tools (Usable and Applied Algorithms): +[hard-week / doctoral-serveral year long] Terminal Emulator +[hard-week] Text Editor +[medi-day] Syntax Highlighter (preferably for your own editor) +[medi-month] General Compression Library (Think zlib) +[medi-weeks] Multi-Threaded GREP Implementation (BONUS: Highlighting and line numbers)(Hint: use pThread and AIO) +[medi-weeks] Vector/Bitmap Image Manipulation Program diff --git a/docs/formatting.txt b/docs/formatting.txt new file mode 100644 index 0000000..20c392c --- /dev/null +++ b/docs/formatting.txt @@ -0,0 +1,2 @@ +/*--------------------------------------------------------------------------------*/ +/* Lines shouldn't be longer than 80 characters, which is this long ^ */ diff --git a/docs/project-goals.txt b/docs/project-goals.txt new file mode 100644 index 0000000..4713c57 --- /dev/null +++ b/docs/project-goals.txt @@ -0,0 +1,51 @@ +--- Probotic + +A IRC Bot that is able to recieve several commands and on a weekly +(or daily, biweekly, monthly) basis will (privately?) declare an +assignment for users to do. + +--- Speculations + +Internally this suggests that it must handle entries of these projects +that could be preconceived or composed exactly for a given date (what + we're doing.) + +This may be done via a simplistic append-only database or a SQL-based +database. + +--- Requirements + +The bot should support printing at a regular interval or at a given date. +The bot should respect some commands, such as POST, for if someone wishes +to post a project challenge. +The bot should respect an administrator, such that he could POST, and +REMOVE entered items. +Command SEARCH, SINCE and LIST, for regexp searching, entries since a +date (presumably a <from> <to> relationship), and a list all. + +The tooling behind the bot should be accessible to do the same sort of +interfacing to recieve a given task at the running of a command (to avoid +having to deal with unix mail, this could be done through a daily check +in a crontab file.) + +--- Autism + +Formatting is BSD spc2, always bracketed (unless the block is upon another + keyword), overwrap functions and combinators. + +--- Example + +int /* what I meant by overwrap functions */ +main(int argc, + argv * argv) +{ + int * somevar = 0 + 1; + if (1 || /* what I meant by overwrap combinators */ + *somevar) + { return 0; } + else /* switch, if, do/while/for, would not be nested within */ + { + puts("fruakk"); + return 1; + } +} diff --git a/docs/rizon_default.cfg b/docs/rizon_default.cfg new file mode 100644 index 0000000..3880a4e --- /dev/null +++ b/docs/rizon_default.cfg @@ -0,0 +1,3 @@ +server=irc.rizon.net +username=probotic +port=6667 diff --git a/docs/save_format_idea.txt b/docs/save_format_idea.txt new file mode 100644 index 0000000..d1be400 --- /dev/null +++ b/docs/save_format_idea.txt @@ -0,0 +1,9 @@ +2023-08-02 - Week 1 - The Challenge Bot + +Contribute to the bot! + +END + +2023-08-09 - Week 2 - dunno... + +\END or EOF |
