Skip to content

Instantly share code, notes, and snippets.

@yosoyubik
Last active December 4, 2019 15:02
Show Gist options
  • Save yosoyubik/711bca9d25e8b97f59bc391ac2f84b67 to your computer and use it in GitHub Desktop.
Save yosoyubik/711bca9d25e8b97f59bc391ac2f84b67 to your computer and use it in GitHub Desktop.
Welcome to Hoon School 101! I'm your instructor ~rapfyr-diglyt. Each week we'll have a reading, a walkthrough, and an assignment. Please be sure to ask questions in ~bolbex-fogdys/hoon-school We're very happy to have you!
Turn your homework in with this [form](https://forms.gle/aCwiWL6dYtJq1dTf9)
Reading
Booting a fakezod: https://urbit.org/docs/using/creating-a-development-ship/
Intro to Dojo: https://urbit.org/docs/using/shell/
Nouns: https://urbit.org/docs/learn/hoon/hoon-tutorial/nouns/
Walkthrough
List of Numbers: https://urbit.org/docs/learn/hoon/hoon-tutorial/list-of-numbers/
Videos
Areology with ~rapfyr-diglyt: Booting a Fakezod: https://www.youtube.com/watch?v=Abh54Uce6f8
Areology with ~rapfyr-diglyt: Nouns: https://www.youtube.com/watch?v=W7OZK9YzqXc
Assignment
Build a naked generator that takes an atom from the user and returns that atom with a different aura. Don't worry about guaranteeing that the output aura is different from the input aura as this assignment is mostly intended to make sure you have set everything up properly.
______________________________________________________________
Week 2
Reading: https://urbit.org/docs/learn/hoon/hoon-tutorial/hoon-syntax/
Hoon Syntax
Walkthrough: https://urbit.org/docs/learn/hoon/hoon-tutorial/conditionals/
Conditionals
Videos
Areology with ~rapfyr-diglyt: Runes: https://www.youtube.com/watch?v=GdlSXQE67yA&feature=youtu.be
_______________________________________________________________
Wekk 3
Reading
Gates: https://urbit.org/docs/learn/hoon/hoon-tutorial/gates
Lists: https://urbit.org/docs/learn/hoon/hoon-tutorial/lists/
Walkthrough
Recursion: https://urbit.org/docs/learn/hoon/hoon-tutorial/recursion/
Fibonacci: https://urbit.org/docs/learn/hoon/hoon-tutorial/fibonacci/
Videos
Areology with ~rapfyr-diglyt: Debugging: https://www.youtube.com/watch?v=DkUIhhq6O24
Assignment
Comment each line of code from the [tail-call](https://pastebin.com/ac3Yc1ky) optimized recursion example to explain what the code is doing.
Build a naked generator that accepts a list as its argument, and returns the third element of that list. Do not use any standard-library functions. Lists are kinds of nouns that are written as [1 2 3 4 ~].
Assignment
Build a naked generator that takes a noun and checks if that noun is a cell or an atom. If that input noun is an atom, check if it’s even or odd. The output should be of the tape type. A tape is a string.
_________________________________________________________________________________
Week 4
Reading
The Subject and its Legs: https://urbit.org/docs/learn/hoon/hoon-tutorial/the-subject-and-its-legs/
Walkthrough
Ackermann function: https://urbit.org/docs/learn/hoon/hoon-tutorial/ackermann/
Video
Areology with ~rapfyr-diglyt: Cores: https://www.youtube.com/watch?v=ZlERh-JdXVk
Assignment
If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multiples is 23.
Find the sum of all the multiples of 3 or 5 below 1000.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment