# Reports:Tasks not implemented in OCaml

**Awareness**

If

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

## Contents

## Not implemented[edit]

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

### 2

### A

- ASCII art diagram converter
- AVL tree
- Abbreviations, automatic
- Abundant, deficient and perfect number classifications
- Abundant odd numbers
- Achilles numbers
- Active Directory/Connect
- Active Directory/Search for a user
- Active object
- Additive primes
- Aliquot sequence classifications
- Almkvist-Giullera formula for pi
- Almost prime
- Angles (geometric), normalization and conversion
- Animate a pendulum
- Animation
- Anti-primes
- Append a record to the end of a text file
- Apply a digital filter (direct form II transposed)
- Archimedean spiral
- Arena storage pool
- Arithmetic numbers
- Ascending primes
- Atomic updates
- Attractive numbers
- Average loop length

### B

### C

- CUSIP
- Calculating the value of e
- Calendar - for "REAL" programmers
- Calkin-Wilf sequence
- Canny edge detector
- Canonicalize CIDR
- Cantor set
- Carmichael 3 strong pseudoprimes
- Casting out nines
- Chaocipher
- Chaos game
- Chat server
- Checkpoint synchronization
- Chernick's Carmichael numbers
- Cheryl's birthday
- Chinese zodiac
- Chowla numbers
- Circular primes
- Cistercian numerals
- Color of a screen pixel
- Color wheel
- Colorful numbers
- Colour pinstripe/Printer
- Combinations and permutations
- Commatizing numbers
- Compare length of two strings
- Compare sorting algorithms' performance
- Compiler/AST interpreter
- Compiler/code generator
- Compiler/syntax analyzer
- Compiler/virtual machine interpreter
- Composite numbers k with no single digit factors whose factors are all substrings of k
- Conjugate transpose
- Consecutive primes with ascending or descending differences
- Continued fraction/Arithmetic/Construct from rational number
- Convert decimal number to rational
- Cramer's rule
- Create a file on magnetic tape
- Create an object at a given address
- Cuban primes
- Cullen and Woodall numbers
- Curzon numbers
- Cut a rectangle
- Cyclops numbers
- Cyclotomic polynomial

### D

- Damm algorithm
- Date manipulation
- De Bruijn sequences
- Death Star
- Deceptive numbers
- Deconvolution/1D
- Deconvolution/2D+
- Delegates
- Deming's funnel
- Descending primes
- Determinant and permanent
- Determine if a string is collapsible
- Determine if a string is squeezable
- Determine if two triangles overlap
- Determine sentence type
- Dice game probabilities
- Digital root
- Digital root/Multiplicative digital root
- Dinesman's multiple-dwelling problem
- Dining philosophers
- Disarium numbers
- Discordian date
- Display a linear combination
- Display an outline as a nested table
- Diversity prediction theorem
- Dominoes
- Doubly-linked list/Definition
- Doubly-linked list/Traversal
- Draw a cuboid
- Draw a rotating cube
- Draw a sphere
- Duffinian numbers
- Dutch national flag problem
- Dynamic variable names

### E

- EKG sequence convergence
- Earliest difference between prime gaps
- 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
- Emirp primes
- Entropy/Narcissist
- Equal prime and composite sums
- Erdös-Selfridge categorization of primes
- Esthetic numbers
- Euler's constant 0.5772...
- Euler's sum of powers conjecture
- Events
- Executable library
- Execute Computer/Zero
- Exponentiation with infix operators in (or operating on) the base
- Extensible prime generator

### F

- FTP
- Faces from a mesh
- Factorial base numbers indexing permutations of a collection
- Factors of a Mersenne number
- Fairshare between two and more
- Farey sequence
- Faulhaber's formula
- Faulhaber's triangle
- Feigenbaum constant calculation
- Fermat numbers
- Fibonacci n-step number sequences
- Fibonacci word
- Fibonacci word/fractal
- File extension is in extensions list
- File size distribution
- Find Chess960 starting position identifier
- Find if a point is within a triangle
- 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 class environments
- 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
- Formal power series
- Fortunate numbers
- Four is magic
- Four is the number of letters in the ...
- Fraction reduction
- French Republican calendar
- Function frequency
- Functional coverage tree
- Fusc sequence

### G

- GUI/Maximum window dimensions
- GUI component interaction
- GUI enabling/disabling of controls
- Galton box animation
- Gapful numbers
- Gauss-Jordan matrix inversion
- Generate Chess960 starting position
- Generate random chess position
- Get system command output
- Globally replace text in several files
- Goldbach's comet
- Graph colouring
- Guess the number/With feedback (player)

### H

- HTTPS
- HTTPS/Authenticated
- HTTPS/Client-authenticated
- Halt and catch fire
- Harmonic series
- Harshad or Niven series
- Heronian triangles
- Hickerson series of almost integers
- Hilbert curve
- Hofstadter-Conway $10,000 sequence
- Hofstadter Figure-Figure sequences
- Hofstadter Q sequence
- Holidays related to Easter
- Home primes
- Honeycombs
- Hough transform
- Humble numbers
- Hunt the Wumpus

### I

- ISBN13 check digit
- I before E except after C
- Idiomatically determine all the characters that can be used for symbols
- Idiomatically determine all the lowercase and uppercase letters
- Imaginary base numbers
- Increasing gaps between consecutive Niven numbers
- Index finite lists of positive integers
- Integer overflow
- Intersecting number wheels
- Inverted syntax
- Iterated digits squaring

### J

### K

- K-d tree
- K-means++ clustering
- Kaprekar numbers
- Kernighans large earthquake problem
- Keyboard input/Flush the keyboard buffer
- Keyboard input/Keypress check
- Keyboard macros
- Knapsack problem/Bounded
- Knight's tour
- Knuth's power tree
- Koch curve
- Kolakoski sequence
- Kosaraju
- Kronecker product
- Kronecker product based fractals

### L

- LU decomposition
- Lah numbers
- Largest number divisible by its digits
- Largest proper divisor of n
- Last letter-first letter
- Latin Squares in reduced form
- Latin Squares in reduced form/Randomizing using Jacobson and Matthews’ Technique
- Law of cosines - triples
- Left factorials
- Legendre prime counting function
- Leonardo numbers
- Levenshtein distance/Alignment
- Linear congruential generator
- List rooted trees
- Long literals, with continuations
- Long multiplication
- 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
- Ludic numbers
- Lychrel numbers

### M

- MD4
- MD5/Implementation
- Machine code
- Mad Libs
- Magic 8-ball
- Magic constant
- Magic squares of doubly even order
- Magic squares of odd order
- Magic squares of singly even order
- Magnanimous numbers
- Main step of GOST 28147-89
- Mastermind
- Matrix chain multiplication
- Matrix digital rain
- Maximum triangle path sum
- Mayan calendar
- Mayan numerals
- Maze solving
- McNuggets problem
- Memory allocation
- Merge and aggregate datasets
- Mertens function
- Metallic ratios
- Metaprogramming
- Metered concurrency
- Metronome
- Mian-Chowla sequence
- Mind boggling card trick
- Minimal steps down to 1
- Minimum multiple of m where digital sum equals m
- Minimum positive multiple in base 10 using only 0 and 1
- Minkowski question-mark function
- Modified random distribution
- Modular arithmetic
- Monads/Writer monad
- Motzkin numbers
- Move-to-front algorithm
- Multi-base primes
- Multi-dimensional array
- Multifactorial
- Multiple regression
- Multiplicative order
- Multisplit
- Munchausen numbers
- Musical scale
- Möbius function

### N

- N-smooth numbers
- Naming conventions
- Narcissist
- Narcissistic decimal number
- Natural sorting
- Nautical bell
- Negative base numbers
- Nested templated data
- Next highest int from digits
- Non-transitive dice
- Nonoblock
- Nonogram solver
- Numbers which are not the sum of distinct squares
- Numbers with equal rises and falls
- Numeric error propagation
- Numerical and alphabetical suffixes

### 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
- Parameterized SQL statement
- Parse an IP Address
- Parsing/RPN to infix conversion
- Particle fountain
- Partition an integer x into n primes
- Partition function P
- Pascal's triangle/Puzzle
- Pascal matrix generation
- Pathological floating point problems
- Peaceful chess queen armies
- Peano curve
- Pell's equation
- Pell numbers
- Penney's game
- Pentagram
- Pentomino tiling
- Percolation/Bond percolation
- Percolation/Mean cluster density
- Percolation/Mean run density
- Percolation/Site percolation
- Perfect shuffle
- Perfect totient numbers
- Periodic table
- Peripheral drift illusion
- Permutation test
- Permutations/Derangements
- Permutations/Rank of a permutation
- Permutations by swapping
- Pernicious numbers
- Phrase reversals
- Pierpont primes
- Pig the dice game/Player
- Pinstripe/Display
- Pinstripe/Printer
- Pisano period
- Plasma effect
- Play recorded sounds
- Playfair cipher
- Poker hand analyser
- Polyspiral
- Population count
- Pragmatic directives
- Primality by Wilson's theorem
- Prime conspiracy
- Prime triangle
- Primes - allocate descendants to their ancestors
- Primorial numbers
- Proper divisors
- Pseudo-random numbers/Combined recursive generator MRG32k3a
- Pseudo-random numbers/Middle-square method
- Pseudo-random numbers/PCG32
- Pseudo-random numbers/Splitmix64
- Pseudo-random numbers/Xorshift star
- Pythagoras tree
- Pythagorean quadruples

### R

- RCRPG
- RIPEMD-160
- RSA code
- Ramanujan's constant
- Ramanujan primes/twins
- Ramer-Douglas-Peucker line simplification
- Random Latin squares
- Random sentence from book
- Range consolidation
- Ranking methods
- Rare numbers
- Rate counter
- Read a file character by character/UTF8
- Recaman's sequence
- Reflection/Get source
- Reflection/List methods
- Reflection/List properties
- Rendezvous
- Rep-string
- Repunit primes
- Resistor mesh
- Retrieve and search chat history
- Rhonda numbers
- Rosetta Code/Find bare lang tags
- Rosetta Code/Find unimplemented tasks
- Rosetta Code/Rank languages by number of users
- Rosetta Code/Rank languages by popularity
- Runtime evaluation
- Runtime evaluation/In an environment
- Ruth-Aaron numbers

### S

- SHA-256 Merkle tree
- SOAP
- SQL-based authentication
- Safe addition
- Safe primes and unsafe primes
- Sailors, coconuts and a monkey problem
- Scope/Function names and labels
- Scope modifiers
- Search in paragraph's text
- Selectively replace multiple instances of a character within a string
- Self-describing numbers
- Self numbers
- Semiprime
- Send an unknown method call
- 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 of real numbers
- Set puzzle
- Set right-adjacent bits
- Sexy primes
- Shoelace formula for polygonal area
- Shortest common supersequence
- Show ASCII table
- Sierpinski arrowhead curve
- Sierpinski pentagon
- Sierpinski square curve
- Simple database
- Simple turtle graphics
- Simulate input/Mouse
- Sleeping Beauty problem
- Smallest number k such that k+2^m is composite for all m less than k
- Smarandache prime-digital sequence
- Smith numbers
- 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
- Sorting Algorithms/Circle Sort
- Sorting algorithms/Cocktail sort with shifting bounds
- Sorting algorithms/Radix sort
- Sorting algorithms/Sleep sort
- Speech synthesis
- Spelling of ordinal numbers
- Spinning rod animation/Text
- Split a character string based on change of character
- Square form factorization
- Start from a main routine
- State name puzzle
- Statistics/Basic
- Statistics/Normal distribution
- Stern-Brocot sequence
- Stirling numbers of the first kind
- Stirling numbers of the second kind
- Straddling checkerboard
- Strassen's algorithm
- Stream merge
- String comparison
- Strip block comments
- Strong and weak primes
- Subleq
- Substitution cipher
- Successive prime differences
- Sudan function
- Suffixation of decimal numbers
- Sum and product puzzle
- Sum of elements below main diagonal of matrix
- Sum to 100
- Summarize and say sequence
- Summarize primes
- Super-d numbers
- Superellipse
- Superpermutation minimisation
- Sylvester's sequence

### T

- Table creation/Postal addresses
- Tarjan
- Tau function
- Tau number
- Taxicab numbers
- Teacup rim text
- Terminal control/Cursor movement
- Terminal control/Display an extended character
- Terminal control/Hiding the cursor
- Terminal control/Positional read
- Terminal control/Preserve screen
- Terminal control/Ringing the terminal bell
- Terminal control/Unicode output
- Test integerness
- Textonyms
- The Name Game
- The Twelve Days of Christmas
- The sieve of Sundaram
- Tic-tac-toe
- Topswops
- Total circles area
- Totient function
- Tree datastructures
- Tree from nesting levels
- Truncatable primes
- Truth table
- Twelve statements
- Twin primes
- Two's complement
- Two bullet roulette

### 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 OCaml (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

- ABC words
- ADFGVX cipher
- Addition-chain exponentiation
- Addition chains
- Air mass
- Alternade words
- Anadromes
- Anagram generator
- Append numbers at same position in strings
- Arithmetic coding/As a generalized change of radix
- Arithmetic derivative
- Aspect oriented programming
- Assertions in design by contract
- Audio frequency generator
- Audio overlap loop
- Autogram checker

### B

- B-spline
- Babylonian spiral
- Bacon cipher
- Banker's algorithm
- Base58Check encoding
- Base 16 numbers needing a to f
- Bifid cipher
- Bilinear interpolation
- Binary coded decimal
- Bioinformatics/Global alignment
- Bioinformatics/Subsequence
- Birthday problem
- Black box
- Blackjack strategy
- Boids
- Boyer-Moore string search
- Brace expansion using ranges

### C

- CLI-based maze-game
- Camel case and snake case
- Card shuffles
- Change e letters to i in words
- Changeable words
- Chebyshev coefficients
- Chemical calculator
- Chess player
- Cipolla's algorithm
- Code Golf: Code Golf
- Code segment unload
- Collect and sort square numbers in ascending order from three lists
- Combinations with repetitions/Square digit chain
- Common list elements
- Common sorted list
- Compiler/Preprocessor
- Compiler/Simple file inclusion pre processor
- Compiler/Verifying syntax
- Concatenate two primes is also prime
- Conjugate a Latin verb
- 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 how many vowels and consonants occur in a string
- Count the coins/0-1
- Cousin primes
- Create an executable for a program in an interpreted language
- Create an object/Native demonstration
- Create your own text control codes
- Cross compilation
- Cubic special primes
- Curve that touches three points
- Cycle detection
- Cycles of a permutation

### D

- Data Encryption Standard
- Dating agency
- Day of the week of Christmas and New Year
- Days between dates
- Decision tables
- Digit fifth powers
- Diophantine linear system solving
- Discrete Fourier transform
- Distinct palindromes within decimal numbers
- Distinct power numbers
- Distribution of 0 digits in factorial series
- Divide a rectangle into a number of unequal triangles
- Doomsday rule
- Doubly-linked list/Element removal
- Draw pixel 2

### E

### F

- Factorial primes
- Fermat pseudoprimes
- Fibonacci heap
- Fibonacci matrix-exponentiation
- Find URI in text
- Find adjacent primes which differ by a square integer
- Find first and last set bit of a long integer
- Find first missing positive
- Find minimum number of coins that make a given value
- Find prime n such that reversed n is also prime
- Find prime numbers of the form n*n*n+2
- Find square difference
- Find squares n where n+1 is prime
- Find words which contain the most consonants
- Find words which contains all the vowels
- Find words which contains more than 3 e vowels
- Find words whose first and last three letters are equal
- Find words with alternating vowels and consonants
- Finite state machine
- First 9 prime Fibonacci number
- Four sides of square
- Free polyominoes enumeration
- Frobenius numbers

### G

### I

### L

- Largest difference between adjacent primes
- Largest five adjacent number
- Largest palindrome product
- Largest prime factor
- Largest product in a grid
- Last list item
- Launch rocket with countdown and acceleration in stdout
- Length of an arc between two angles
- Line circle intersection
- Linux CPU utilization
- Logistic curve fitting in epidemiology
- Long stairs
- Longest common prefix
- Longest common suffix
- Longest palindromic substrings
- Longest substrings without repeating characters

### M

- Make a backup file
- Marching squares
- Markov chain text generator
- Matrix with two diagonals
- Maximum difference between adjacent elements of list
- Mersenne primes
- Minimum number of cells after, before, above and below NxN squares
- Minimum numbers of three lists
- Minimum primes
- Montgomery reduction
- Morpion solitaire
- Mosaic matrix
- Most frequent k chars distance
- Multidimensional Newton-Raphson method
- Multiton

### N

- N-body problem
- N-queens minimum and knights and bishops
- NYSIIS
- Names to numbers
- Neighbour primes
- Next special primes
- Nice primes
- Nimber arithmetic
- Number triplets game
- Numbers divisible by their individual digits, but not by the product of their digits.
- Numbers in base-16 representation that cannot be written with decimal digits
- Numbers in base 10 that are palindromic in bases 2, 4, and 16
- Numbers which binary and ternary digit sum are prime
- Numbers whose count of divisors is prime
- Numbers with prime digits whose sum is 13
- Numerical integration/Adaptive Simpson's method

### O

### P

- Palindromic primes
- Palindromic primes in base 16
- Pan base non-primes
- Pandigital prime
- Parse EBNF
- Parse command-line arguments
- Particle swarm optimization
- Penrose tiling
- Perceptron
- Permutations with repetitions
- Permutations with some identical elements
- Permuted multiples
- Piprimes
- Polynomial derivative
- Polynomial synthetic division
- Positive decimal integers with the digit 1 occurring exactly twice
- Powerful numbers
- Practical numbers
- Price list behind API
- Prime numbers p for which the sum of primes less than or equal to p is prime
- Prime numbers which contain 123
- Prime triplets
- Prime words
- Primes which contain only one odd digit
- Primes whose first and last number is 3
- Primes whose 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
- Pseudorandom number generator image

### R

- Railway circuit
- Ramanujan primes
- Ramsey's theorem
- Range modifications
- Raster bars
- Readline interface
- Recursive descent parser generator
- Red black tree sort
- 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
- Reverse the order of lines in a text file while preserving the contents of each line
- Robots
- Rodrigues’ rotation formula
- Rosetta Code/List authors of task descriptions
- Rosetta Code/Run examples
- Rosetta Code/Tasks without examples
- Round-robin tournament schedule
- Run as a daemon or service

### S

- Safe and Sophie Germain primes
- Safe mode
- Sanitize user input
- Segmentation fault protection
- 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 curve
- Simulated annealing
- Singly-linked list/Element removal
- Smallest enclosing circle problem
- Smallest multiple
- Smallest numbers
- Smallest power of 6 whose decimal expansion contains n
- Snake and ladder
- Solve a Rubik's cube
- Solve equations with substitution method
- Solve hanging lantern problem
- Solve triangle solitare puzzle
- Solving coin problems
- Sort primes from list to a list
- Sort the letters of string in alphabetical order
- Sorting algorithms/Cycle sort
- Sorting algorithms/Tree sort on a linked list
- Special divisors
- Special factorials
- Special neighbor primes
- Special pythagorean triplet
- Spoof game
- Square root by hand
- Starting a web browser
- Steady squares
- Strange numbers
- Strange plus numbers
- Strange unique prime triplets
- Substring primes
- Suffix tree
- Sum of divisors
- Sum of first n cubes
- Sum of primes in odd positions is prime
- Sum of square and cube digits of an integer are primes
- Sum of the digits of n is substring of n
- Sum of two adjacent numbers are primes
- Summation of primes
- Sunflower fractal
- Super-Poulet numbers

### 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
- The ISAAC cipher
- Three word location
- Time-based one-time password algorithm
- Topological sort/Extracted top item
- Transliterate English text using the Greek alphabet
- Transportation problem
- Triplet of three numbers
- Tropical algebra overloading
- Two identical strings
- Type detection

### U

### W

## Requiring Attention[edit]

### Examples[edit]

These tasks have implementations in OCaml, 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 OCaml 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 OCaml was inappropriate for these tasks, or implementations of them would be unenlightening. Feel free to try your hand at them anyway.

### A

### R

### S

### T

### V

## End of List[edit]

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