# Reports:Tasks not implemented in Icon

**Awareness**

If

**Icon**is a language you like, or are interested in, please inform your fellow members of the Icon community; this page can't be emptied without your and their participation.

## Contents

## Not implemented[edit]

These are currently not implemented in Icon. Please implement some if you can. If any tasks are not possible or too complex in Icon, they should not be on this list. To mark a task as such, add **{{omit from|Icon}}**, preserving the capitalization of the language, to that task. It will appear below under the "Not Considered" section.

### A

- AKS test for primes
- ASCII art diagram converter
- AVL tree
- Abbreviations, automatic
- Abbreviations, easy
- Abbreviations, simple
- Abelian sandpile model
- Abelian sandpile model/Identity
- Abundant, deficient and perfect number classifications
- Abundant odd numbers
- Active Directory/Connect
- Active Directory/Search for a user
- Active object
- Aliquot sequence classifications
- Amicable pairs
- Angle difference between two bearings
- Angles (geometric), normalization and conversion
- Animate a pendulum
- Anti-primes
- Apply a digital filter (direct form II transposed)
- Approximate equality
- Archimedean spiral
- Arena storage pool
- Arithmetic-geometric mean/Calculate Pi
- Atomic updates
- Attractive numbers
- Average loop length

### B

- Babbage problem
- Barnsley fern
- Base64 decode data
- Bell numbers
- Bin given limits
- Bioinformatics/Sequence mutation
- Bioinformatics/base count
- Biorhythms
- Bitcoin/address validation
- Bitcoin/public point to address
- Bitmap/Bresenham's line algorithm
- Bitmap/Bézier curves/Cubic
- Bitmap/Bézier curves/Quadratic
- Bitmap/Flood fill
- Bitmap/Histogram
- Bitmap/Midpoint circle algorithm
- Bitmap/PPM conversion through a pipe
- Bitmap/Read a PPM file
- Bitmap/Read an image through a pipe
- Bitmap/Write a PPM file
- Bitwise IO
- Brace expansion
- Brazilian numbers
- Bulls and cows/Player
- Burrows–Wheeler transform

### C

- Calkin-Wilf sequence
- Call a foreign-language function
- Call a function in a shared library
- Call an object method
- Canny edge detector
- Canonicalize CIDR
- Cantor set
- Cartesian product of two or more lists
- Casting out nines
- Catmull–Clark subdivision surface
- Chaocipher
- Chaos game
- Chat server
- Check Machin-like formulas
- Check input device is a terminal
- Check output device is a terminal
- Checkpoint synchronization
- Chernick's Carmichael numbers
- Cheryl's birthday
- Chinese zodiac
- Chowla numbers
- Church numerals
- Circular primes
- Cistercian numerals
- Classes
- Color quantization
- Color wheel
- Colour pinstripe/Printer
- Commatizing numbers
- Compare sorting algorithms' performance
- Compiler/AST interpreter
- Compiler/code generator
- Compiler/lexical analyzer
- Compiler/syntax analyzer
- Compiler/virtual machine interpreter
- Concurrent computing
- Conjugate transpose
- Constrained genericity
- Continued fraction
- Continued fraction/Arithmetic/Construct from rational number
- Convert decimal number to rational
- Convert seconds to compound duration
- Convex hull
- Copy stdin to stdout
- Cramer's rule
- Cuban primes
- Currency
- Currying
- Cut a rectangle
- Cyclotomic polynomial

### D

- DNS query
- Damm algorithm
- De Bruijn sequences
- Death Star
- Deconvolution/1D
- Deconvolution/2D+
- Define a primitive data type
- Delegates
- Deming's Funnel
- Department numbers
- Determinant and permanent
- Determine if a string has all the same characters
- Determine if a string has all unique characters
- Determine if a string is collapsible
- Determine if a string is squeezable
- Determine if two triangles overlap
- Dice game probabilities
- Dining philosophers
- Display a linear combination
- Display an outline as a nested table
- Distributed programming
- Diversity prediction theorem
- Doubly-linked list/Definition
- Doubly-linked list/Element definition
- Doubly-linked list/Element insertion
- Doubly-linked list/Traversal
- Draw a cuboid
- Draw a rotating cube
- Draw a sphere
- Dynamic variable names

### E

- EKG sequence convergence
- Eban numbers
- Echo server
- Eertree
- Egyptian division
- Egyptian fractions
- Element-wise operations
- Elementary cellular automaton
- Elementary cellular automaton/Infinite length
- Elementary cellular automaton/Random Number Generator
- Elliptic Curve Digital Signature Algorithm
- Elliptic curve arithmetic
- Emirp primes
- Empty directory
- Entropy/Narcissist
- Euler's identity
- Euler's sum of powers conjecture
- Events
- Exceptions
- Exceptions/Catch an exception thrown in a nested call
- Executable library
- Exponentiation order
- Exponentiation with infix operators in (or operating on) the base
- Extensible prime generator

### F

- FASTA format
- FTP
- Faces from a mesh
- Factorial base numbers indexing permutations of a collection
- Factorions
- Fairshare between two and more
- Farey sequence
- Fast Fourier transform
- Faulhaber's formula
- Faulhaber's triangle
- Feigenbaum constant calculation
- Fermat numbers
- File extension is in extensions list
- File size distribution
- Find duplicate files
- Find largest left truncatable prime in a given base
- Find palindromic numbers in both binary and ternary bases
- Find the intersection of a line with a plane
- Find the intersection of two lines
- First perfect square in base n with n unique digits
- First power of 2 that has leading decimal digits of 12
- Fivenum
- Fixed length records
- Flipping bits game
- Floyd-Warshall algorithm
- Formal power series
- Four is magic
- Four is the number of letters in the ...
- Fraction reduction
- French Republican calendar
- Function frequency
- Functional coverage tree
- Fusc sequence

### G

### H

### I

- IBAN
- ISBN13 check digit
- Idiomatically determine all the characters that can be used for symbols
- Idiomatically determine all the lowercase and uppercase letters
- Image convolution
- Imaginary base numbers
- Increasing gaps between consecutive Niven numbers
- Index finite lists of positive integers
- Inheritance/Single
- Integer overflow
- Interactive programming
- Intersecting number wheels
- Isqrt (integer square root) of X
- Iterated digits squaring

### J

### K

### L

- LU decomposition
- LZW compression
- Lah numbers
- Largest number divisible by its digits
- Latin Squares in reduced form
- Law of cosines - triples
- Leonardo numbers
- Levenshtein distance/Alignment
- List rooted trees
- Long literals, with continuations
- Long primes
- Long year
- Longest common substring
- Loops/Increment loop index within loop body
- Loops/With multiple ranges
- Loops/Wrong ranges
- Lucas-Lehmer test
- Lucky and even lucky numbers
- Lychrel numbers

### M

- MAC Vendor Lookup
- MD4
- Machine code
- Magic 8-ball
- Magic squares of doubly even order
- Magic squares of odd order
- Magic squares of singly even order
- Main step of GOST 28147-89
- Make directory path
- Mastermind
- Matrix chain multiplication
- Matrix digital rain
- Maximum triangle path sum
- Mayan numerals
- McNuggets problem
- Median filter
- Memory layout of a data structure
- Merge and aggregate datasets
- Mertens function
- Metallic ratios
- Metaprogramming
- Metered concurrency
- Metronome
- Mian-Chowla sequence
- Mind boggling card trick
- Minimal steps down to 1
- Minkowski question-mark function
- Modified random distribution
- Modular arithmetic
- Monads/List monad
- Monads/Maybe monad
- Monads/Writer monad
- Morse code
- Multi-dimensional array
- Multifactorial
- Multiple regression
- Multiplicative order
- Munchausen numbers
- Musical scale
- Mutex

### N

- N-smooth numbers
- Naming conventions
- Natural sorting
- Nautical bell
- Negative base numbers
- Nested function
- Nested templated data
- Next highest int from digits
- Nim game
- Nimber arithmetic
- Non-continuous subsequences
- Non-transitive dice
- Nonoblock
- Nonogram solver
- Numerical and alphabetical suffixes
- Numerical integration
- Numerical integration/Gauss-Legendre Quadrature

### O

### P

- P-Adic numbers, basic
- P-Adic square roots
- P-value correction
- Padovan n-step number sequences
- Padovan sequence
- Palindrome dates
- Palindromic gapful numbers
- Pancake numbers
- Paraffins
- Parallel brute force
- Parallel calculations
- Parametrized SQL statement
- Partition an integer x into n primes
- Partition function P
- Pascal's triangle/Puzzle
- Pascal matrix generation
- Password generator
- Pattern matching
- Peaceful chess queen armies
- Peano curve
- Pell's equation
- Penney's game
- Pentagram
- Percolation/Bond percolation
- Percolation/Mean cluster density
- Percolation/Site percolation
- Perfect shuffle
- Perfect totient numbers
- Perlin noise
- Permutation test
- Permutations/Derangements
- Permutations/Rank of a permutation
- Phrase reversals
- Pierpont primes
- Pig the dice game
- Pig the dice game/Player
- Pinstripe/Printer
- Plasma effect
- Play recorded sounds
- Playfair cipher
- Poker hand analyser
- Polymorphism
- Polynomial long division
- Polynomial regression
- Polyspiral
- Population count
- Primality by Wilson's theorem
- Prime conspiracy
- Primes - allocate descendants to their ancestors
- Primorial numbers
- Proper divisors
- Pseudo-random numbers/Combined recursive generator MRG32k3a
- Pseudo-random numbers/PCG32
- Pseudo-random numbers/Xorshift star
- Pythagoras tree
- Pythagorean quadruples

### R

- RIPEMD-160
- RPG attributes generator
- Ramanujan's constant
- Ramer-Douglas-Peucker line simplification
- Random Latin squares
- Random sentence from book
- Range consolidation
- Ranking methods
- Rare numbers
- Rate counter
- Ray-casting algorithm
- Read a file character by character/UTF8
- Recaman's sequence
- Record sound
- Reflection/Get source
- Reflection/List methods
- Reflection/List properties
- Rendezvous
- Repeat
- Resistor mesh
- Respond to an unknown method call
- Retrieve and search chat history
- Rosetta Code/Count examples
- Rosetta Code/Find bare lang tags
- Rosetta Code/Fix code tags
- Rosetta Code/Rank languages by number of users
- Runge-Kutta method
- Runtime evaluation
- Runtime evaluation/In an environment

### S

- SHA-1
- SHA-256
- SHA-256 Merkle tree
- SOAP
- SQL-based authentication
- Safe addition
- Safe primes and unsafe primes
- Sailors, coconuts and a monkey problem
- Search a list of records
- Self numbers
- Send an unknown method call
- Send email
- Sequence: nth number with exactly n divisors
- Sequence: smallest number greater than previous term with exactly n divisors
- Sequence: smallest number with exactly n divisors
- Sequence of primes by trial division
- Sequence of primorial primes
- Set consolidation
- Set of real numbers
- Set puzzle
- Sexy primes
- Shoelace formula for polygonal area
- Shortest common supersequence
- Show ASCII table
- Sierpinski pentagon
- Simple database
- Simple windowed application
- Simulate input/Keyboard
- Simulate input/Mouse
- Smarandache prime-digital sequence
- Smith numbers
- Sokoban
- Solve a Hidato puzzle
- Solve a Holy Knight's tour
- Solve a Hopido puzzle
- Solve a Numbrix puzzle
- Solve the no connection puzzle
- Sort a list of object identifiers
- Sort an outline at every level
- Sort numbers lexicographically
- Sort three variables
- Sorting Algorithms/Circle Sort
- Sorting algorithms/Cocktail sort with shifting bounds
- Sorting algorithms/Patience sort
- Sorting algorithms/Strand sort
- Sparkline in unicode
- Speech synthesis
- Spelling of ordinal numbers
- Spinning rod animation/Text
- Split a character string based on change of character
- Square-free integers
- Square Form Factorization
- Square but not cube
- Stack traces
- Start from a main routine
- Statistics/Normal distribution
- Stern-Brocot sequence
- Stirling numbers of the first kind
- Stirling numbers of the second kind
- Stream merge
- Strong and weak primes
- Subleq
- Substitution cipher
- Successive prime differences
- Sudoku
- Suffixation of decimal numbers
- Sum and product puzzle
- Sum to 100
- Sunflower fractal
- Super-d numbers
- Superellipse
- Superpermutation minimisation
- Sutherland-Hodgman polygon clipping

### T

- Table creation/Postal addresses
- Tarjan
- Tau function
- Tau number
- Taxicab numbers
- Teacup rim text
- Terminal control/Coloured text
- Terminal control/Cursor movement
- Terminal control/Dimensions
- Terminal control/Hiding the cursor
- Terminal control/Inverse video
- Terminal control/Positional read
- Terminal control/Preserve screen
- Terminal control/Unicode output
- Test integerness
- Textonyms
- The ISAAC Cipher
- The Name Game
- Thiele's interpolation formula
- Thue-Morse
- Tokenize a string with escaping
- Tonelli-Shanks algorithm
- Topic variable
- Topswops
- Total circles area
- Totient function
- Tree datastructures
- Tree from nesting levels
- Truth table
- Twelve statements

### U

### V

### W

### Draft tasks without implementation[edit]

These tasks are drafts, meaning they largely need more work to turn them into full tasks. Perhaps you can help by trying to implement them in Icon (after all, one of the key requirements for a task being non-draft is multiple implementations, preferably in widely different languages) but be aware that this may be difficult because of lack of definition of the task itself.

### A

- A* search algorithm
- ABC words
- Addition-chain exponentiation
- Addition chains
- Additive primes
- Air mass
- Almkvist-Giullera formula for pi
- Alternade words
- Arithmetic coding/As a generalized change of radix
- Aspect oriented programming
- Assertions in design by contract
- Audio alarm
- Audio frequency generator
- Audio overlap loop

### B

### C

- CLI-based maze-game
- Card shuffles
- Change e letters to i in words
- Changeable words
- Chebyshev coefficients
- Checksumcolor
- Chemical calculator
- Chess player
- Cipolla's algorithm
- Code segment unload
- Combinations with repetitions/Square digit chain
- Common list elements
- Common sorted list
- Compiler/Verifying syntax
- Consecutive Primes With Ascending Or Descending Differences
- Continued fraction/Arithmetic/G(matrix ng, continued fraction n)
- Continued fraction/Arithmetic/G(matrix ng, continued fraction n1, continued fraction n2)
- Coprime triplets
- Coprimes
- Count the coins/0-1
- Cousin primes
- Create an object/Native demonstration
- Cubic Special Primes
- Curve that touches three points
- Cycle detection

### D

### E

### F

- Fibonacci heap
- Fibonacci matrix-exponentiation
- Find first missing positive
- Find if a point is within a triangle
- Find prime n for that reversed n is also prime
- Find prime numbers of the form n*n*n+2
- Find words which contains all the vowels
- Find words which contains more than 3 e vowels
- Find words which contains most consonants
- Find words which first and last three letters are equals
- Find words with alternating vowels and consonants
- Finite state machine
- Free polyominoes enumeration
- Frobenius numbers

### G

### I

### L

- Latin Squares in reduced form/Randomizing using Jacobson and Matthews’ Technique
- Launch rocket with countdown and acceleration in stdout
- Length of an arc between two angles
- Line circle intersection
- Logistic curve fitting in epidemiology
- Longest common prefix
- Longest common suffix
- Longest palindromic substrings

### M

### N

- N-body problem
- NYSIIS
- Names to numbers
- Native shebang
- Neighbour primes
- Next special primes
- Nice primes
- Numbers divisible by their individual digits, but not by the product of their digits.
- Numbers which binary and ternary digit sum are prime
- Numbers with equal rises and falls
- Numbers with prime digits whose sum is 13
- Numeric separator syntax
- Numerical integration/Adaptive Simpson's method

### P

- Palindromic primes
- Parse EBNF
- Particle swarm optimization
- Penrose tiling
- Pentomino tiling
- Perceptron
- Permutations with repetitions
- Permutations with some identical elements
- Piprimes
- Pisano period
- Polynomial synthetic division
- Powerful numbers
- Practical numbers
- Price list behind API
- Prime triplets
- Prime words
- Primes which sum of digits is 25
- Primes with digits in nondecreasing order
- Print debugging statement
- Print itself
- Process SMIL directives in XML data
- Product of divisors
- Proof
- Pseudo-random numbers/Splitmix64
- Pseudorandom number generator image

### R

- Railway circuit
- Ramsey's theorem
- Range modifications
- Raster bars
- Readline interface
- Recursive descent parser generator
- Remote agent/Agent interface
- Remote agent/Agent logic
- Remote agent/Simulation
- Remove vowels from a string
- Resistance calculator
- Resistance network calculator
- Reverse the gender of a string
- Robots
- Rosetta Code/List authors of task descriptions
- Rosetta Code/Run examples
- Rosetta Code/Tasks without examples
- Run as a daemon or service

### S

- Safe mode
- Sattolo cycle
- Selective file copy
- Self-hosting compiler
- Separate the house number from the street name
- Shift list elements to left by 3
- Show the (decimal) value of a number of 1s appended with a 3, then squared
- Sierpinski arrowhead curve
- Sierpinski curve
- Sierpinski square curve
- Simulated annealing
- Sine wave
- Singly-linked list/Element removal
- Smallest enclosing circle problem
- Smallest numbers
- Smallest power of 6 whose decimal expansion contains n
- Smallest square that begins with n
- Snake
- Snake and Ladder
- Solve a Rubik's Cube
- Solve triangle solitare puzzle
- Solving coin problems
- Sorting algorithms/Cycle sort
- Sorting algorithms/Tree sort on a linked list
- Special Divisors
- Special factorials
- Spoof game
- Square root by hand
- Starting a web browser
- Strange numbers
- Strange plus numbers
- Strange unique prime triplets
- Strassen's algorithm
- Substring primes
- Suffix tree
- Sum data type
- Sum of divisors
- Sum of the digits of n is substring of n
- Summarize primes

### T

- Table creation
- Tamagotchi emulator
- Terminal control/Restricted width positional input/No wrapping
- Terminal control/Restricted width positional input/With wrapping
- Tetris
- Text between
- Text completion
- Text to HTML
- Three word location
- Time-based one-time password algorithm
- Topological sort/Extracted top item
- Transportation problem
- Twin primes
- Two bullet roulette
- Two identical strings
- Type detection

### U

### W

## Requiring Attention[edit]

### Examples[edit]

These tasks have implementations in Icon, but somebody, somewhere, decided that the example implementation was faulty or in some other way requiring attention. If you're familiar with the task and language, please consider reviewing/correcting the example and removing the notice.

### Other pages[edit]

These are other pages related to Icon which require attention; with your knowledge and assistance, we can improve the quality of the site's content.

### No pages found.

## Not Considered[edit]

These tasks are not generally counted toward "unimplemented", as somebody, somewhere, decided that Icon was inappropriate for these tasks, or implementations of them would be unenlightening. Feel free to try your hand at them anyway.

## End of List[edit]

Again, feel free to try your hand at any of the tasks listed on this page.