Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Exercism

WebAssembly

via Exercism

Overview

Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
WebAssembly is a binary instruction format for a stack-based virtual machine. It is a W3C standard that ships in all major browsers and features streaming compilation and convenient interoperability with JavaScript. Most compiled languages can now generate WebAssembly binaries, enabling client-side execution of languages other than JavaScript. Additionally, many server-side runtimes and cloud services execute WebAssembly, many of which support the emerging .

Syllabus

  • Hello World
    • Exercism's classic introductory exercise. Just say "Hello, World!".
  • Armstrong Numbers
    • Determine if a number is an Armstrong number.
  • Bank Account
    • Simulate a bank account supporting opening/closing, withdraws, and deposits of money. Watch out for concurrent transactions!
  • Leap
    • Determine whether a given year is a leap year.
  • Nucleotide Count
    • Given a DNA string, compute how many times each nucleotide occurs in the string.
  • Two-Fer
    • Create a sentence of the form "One for X, one for me.".
  • Acronym
    • Convert a long phrase to its acronym.
  • Clock
    • Implement a clock that handles times without dates.
  • ETL
    • Change the data format for scoring a game to more easily add other languages.
  • Hamming
    • Calculate the Hamming distance between two DNA strands.
  • High Scores
    • Manage a player's High Score list.
  • Micro Blog
    • Given an input string, truncate it to 5 characters.
  • Pangram
    • Determine if a sentence is a pangram.
  • Reverse String
    • Reverse a given string.
  • Triangle
    • Determine if a triangle is equilateral, isosceles, or scalene.
  • Bob
    • Bob is a lackadaisical teenager. In conversation, his responses are very limited.
  • Collatz Conjecture
    • Calculate the number of steps to reach 1 using the Collatz conjecture.
  • Darts
    • Calculate the points scored in a single toss of a Darts game.
  • Difference of Squares
    • Find the difference between the square of the sum and the sum of the squares of the first N natural numbers.
  • Isogram
    • Determine if a word or phrase is an isogram.
  • Prime Factors
    • Compute the prime factors of a given natural number.
  • Raindrops
    • Convert a number into its corresponding raindrop sounds - Pling, Plang and Plong.
  • RNA Transcription
    • Given a DNA strand, return its RNA complement.
  • Series
    • Given a string of digits, output all the contiguous substrings of length `n` in that string.
  • Anagram
    • Given a word and a list of possible anagrams, select the correct sublist.
  • Atbash Cipher
    • Create an implementation of the Atbash cipher, an ancient encryption system created in the Middle East.
  • D&D Character
    • Randomly generate Dungeons & Dragons characters.
  • Eliud's Eggs
    • Help Eliud count the number of eggs in her chicken coop by counting the number of 1 bits in a binary representation.
  • Grade School
    • Given students' names along with the grade that they are in, create a roster for the school.
  • ISBN Verifier
    • Check if a given string is a valid ISBN-10 number.
  • Nth Prime
    • Given a number n, determine what the nth prime is.
  • Pascal's Triangle
    • Compute Pascal's triangle up to a given number of rows.
  • Perfect Numbers
    • Determine if a number is perfect, abundant, or deficient based on Nicomachus' (60 - 120 CE) classification scheme for positive integers.
  • Phone Number
    • Clean up user-entered phone numbers so that they can be sent SMS messages.
  • Resistor Color
    • Convert a resistor band's color to its numeric representation.
  • Resistor Color Duo
    • Convert color codes, as used on resistors, to a numeric value.
  • Resistor Color Trio
    • Convert color codes, as used on resistors, to a human-readable label.
  • Rotational Cipher
    • Create an implementation of the rotational cipher, also sometimes called the Caesar cipher.
  • Saddle Points
    • Detect saddle points in a matrix.
  • Scrabble Score
    • Given a word, compute the Scrabble score for that word.
  • Secret Handshake
    • Given a decimal number, convert it to the appropriate sequence of events for a secret handshake.
  • Space Age
    • Given an age in seconds, calculate how old someone is in terms of a given planet's solar years.
  • Square Root
    • Given a natural radicand, return its square root.
  • Sublist
    • Write a function to determine if a list is a sublist of another list.
  • All Your Base
    • Convert a number, represented as a sequence of digits in one base, to any other base.
  • Bottle Song
    • Produce the lyrics to the popular children's repetitive song: Ten Green Bottles.
  • Diamond
    • Given a letter, print a diamond starting with 'A' with the supplied letter at the widest point.
  • Grains
    • Calculate the number of grains of wheat on a chessboard given that the number on each square doubles.
  • House
    • Output the nursery rhyme 'This is the House that Jack Built'.
  • Largest Series Product
    • Given a string of digits, calculate the largest product for a contiguous substring of digits of length n.
  • Luhn
    • Given a number determine whether or not it is valid per the Luhn formula.
  • Protein Translation
    • Translate RNA sequences into proteins.
  • Proverb
    • For want of a horseshoe nail, a kingdom was lost, or so the saying goes. Output the full text of this proverbial rhyme.
  • Pythagorean Triplet
    • Given an integer N, find all Pythagorean triplets for which a + b + c = N.
  • Robot Name
    • Manage robot factory settings.
  • Robot Simulator
    • Write a robot simulator.
  • Roman Numerals
    • Convert modern Arabic numbers into Roman numerals.
  • Spiral Matrix
    • Given the size, return a square matrix of numbers in spiral order.
  • Twelve Days
    • Output the lyrics to 'The Twelve Days of Christmas'.
  • Variable Length Quantity
    • Implement variable length quantity encoding and decoding.
  • Yacht
    • Score a single throw of dice in the game Yacht.
  • Affine Cipher
    • Create an implementation of the Affine cipher, an ancient encryption algorithm from the Middle East.
  • Binary Search
    • Implement a binary search algorithm.
  • Bowling
    • Score a bowling game.
  • Crypto Square
    • Implement the classic method for composing secret messages called a square code.
  • Food Chain
    • Generate the lyrics of the song 'I Know an Old Lady Who Swallowed a Fly'.
  • Kindergarten Garden
    • Given a diagram, determine which plants each child in the kindergarten class is responsible for.
  • Matching Brackets
    • Make sure the brackets and braces all match.
  • Queen Attack
    • Given the position of two queens on a chess board, indicate whether or not they are positioned so that they can attack each other.
  • Rational Numbers
    • Implement rational numbers.
  • Sieve
    • Use the Sieve of Eratosthenes to find all the primes from 2 up to a given number.
  • State of Tic-Tac-Toe
    • Determine the game state of a match of Tic-Tac-Toe.
  • Tournament
    • Tally the results of a small football competition.
  • Book Store
    • To try and encourage more sales of different books from a popular 5 book series, a bookshop has decided to offer discounts of multiple-book purchases.
  • Meetup
    • Calculate the date of meetups.
  • Palindrome Products
    • Detect palindrome products in a given range.
  • Piecing It Together
    • Fill in missing jigsaw puzzle details from partial data
  • Pig Latin
    • Implement a program that translates from English to Pig Latin.
  • Rectangles
    • Count the rectangles in an ASCII diagram.
  • Circular Buffer
    • A data structure that uses a single, fixed-size buffer as if it were connected end-to-end.
  • Complex Numbers
    • Implement complex numbers.
  • Knapsack
    • Given a knapsack that can only carry a certain weight, determine which items to put in the knapsack in order to maximize their combined value.
  • Minesweeper
    • Add the numbers to a minesweeper board.
  • OCR Numbers
    • Given a 3 x 4 grid of pipes, underscores, and spaces, determine which number is represented, or whether it is garbled.
  • Run-Length Encoding
    • Implement run-length encoding and decoding.
  • Two Bucket
    • Given two buckets of different size, demonstrate how to measure an exact number of liters.

Reviews

Start your review of WebAssembly

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.