Reports:Tasks not implemented in PL/I
If PL/I is a language you like, or are interested in, please inform your fellow members of the PL/I community; this page can't be emptied without your and their participation.
Contents
Not implemented[edit]
These are currently not implemented in PL/I. Please implement some if you can. If any tasks are not possible or too complex in PL/I, they should not be on this list. To mark a task as such, add {{omit from|PL/I}}, preserving the capitalization of the language, to that task. It will appear below under the "Not Considered" section.
A
- AVL tree
- Abbreviations, automatic
- Abbreviations, easy
- Abbreviations, simple
- Abelian sandpile model
- Abstract type
- Abundant odd numbers
- Accumulator factory
- Active Directory/Connect
- Active Directory/Search for a user
- Active object
- Add a variable to a class instance at runtime
- Aliquot sequence classifications
- Almost prime
- Anagrams/Deranged anagrams
- Angle difference between two bearings
- Angles (geometric), normalization and conversion
- Animate a pendulum
- Animation
- Anonymous recursion
- Anti-primes
- Append a record to the end of a text file
- Apply a digital filter (direct form II transposed)
- Approximate Equality
- Arbitrary-precision integers (included)
- Archimedean spiral
- Arithmetic-geometric mean/Calculate Pi
- Arithmetic evaluation
- Associative array/Iteration
- Atomic updates
- Attractive numbers
- Average loop length
B
- Babbage problem
- Balanced ternary
- Barnsley fern
- Base64 decode data
- Bitcoin/address validation
- Bitcoin/public point to address
- Bitmap/Bézier curves/Cubic
- Bitmap/Bézier curves/Quadratic
- Bitmap/Histogram
- Bitmap/PPM conversion through a pipe
- Bitmap/Read an image through a pipe
- Box the compass
- Brace expansion
- Break OO privacy
- Brownian tree
- Bulls and cows
- Bulls and cows/Player
C
- CSV to HTML translation
- CUSIP
- Calculating the value of e
- Call a function
- Call a function in a shared library
- Call an object method
- Canny edge detector
- Cantor set
- Cartesian product of two or more lists
- Casting out nines
- Catalan numbers/Pascal's triangle
- Catamorphism
- Catmull–Clark subdivision surface
- Chaocipher
- Chaos game
- Chat server
- Check Machin-like formulas
- Checkpoint synchronization
- Chinese remainder theorem
- Chinese zodiac
- Chowla numbers
- Church Numerals
- Classes
- Closures/Value capture
- Color of a screen pixel
- Color quantization
- Colour bars/Display
- Colour pinstripe/Display
- Colour pinstripe/Printer
- Combinations
- Combinations and permutations
- Combinations with repetitions
- Commatizing numbers
- Compare sorting algorithms' performance
- Compiler/AST interpreter
- Compiler/code generator
- Compiler/lexical analyzer
- Compiler/syntax analyzer
- Compiler/virtual machine interpreter
- Concurrent computing
- Constrained genericity
- Continued fraction/Arithmetic/Construct from rational number
- Convex hull
- Count the coins
- Cramer's rule
- Create a file on magnetic tape
- Create an object at a given address
- Cuban primes
- Currency
- Currying
- Cut a rectangle
D
- DNS query
- De Bruijn sequences
- Deal cards for FreeCell
- Death Star
- Deconvolution/1D
- Deconvolution/2D+
- Deepcopy
- Define a primitive data type
- Delegates
- Delete a file
- 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 only one instance is running
- Dijkstra's algorithm
- Dinesman's multiple-dwelling problem
- Dining philosophers
- Discordian date
- Distributed programming
- Draw a clock
- Draw a cuboid
- Draw a pixel
- Draw a rotating cube
- Draw a sphere
- Dutch national flag problem
- Dynamic variable names
E
- EKG sequence convergence
- Eban numbers
- Echo server
- Eertree
- Egyptian division
- Egyptian fractions
- Elementary cellular automaton
- Empty directory
- Entropy/Narcissist
- Environment variables
- Equilibrium index
- Euler's identity
- Euler's sum of powers conjecture
- Events
- Evolutionary algorithm
- Executable library
- Execute Brain****
- Execute HQ9+
- Execute SNUSP
- Execute a Markov algorithm
- Execute a system command
- Exponentiation order
- Extend your language
- Extensible prime generator
- Extreme floating point values
F
- FASTA format
- FTP
- Factorial base numbers indexing permutations of a collection
- Factors of a Mersenne number
- Farey sequence
- Fibonacci word/fractal
- File extension is in extensions list
- File modification time
- Find common directory path
- Find largest left truncatable prime in a given base
- Find palindromic numbers in both binary and ternary bases
- Find the intersection of two lines
- Find the last Sunday of each month
- Find the missing permutation
- First-class functions
- First-class functions/Use numbers analogously
- First class environments
- First perfect square in base N with N unique digits
- Fixed length records
- Floyd-Warshall algorithm
- Forest fire
- Formal power series
- Four is magic
- Four is the number of letters in the ...
- Fractal tree
- Fraction reduction
- Fractran
- Function composition
- 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
- General FizzBuzz
- Generate Chess960 starting position
- Generate random chess position
- Get system command output
- Globally replace text in several files
- Go Fish
- Greyscale bars/Display
- Guess the number
- Guess the number/With feedback
- Guess the number/With feedback (player)
H
I
- IBAN
- 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
- Image convolution
- Imaginary base numbers
- Index finite lists of positive integers
- Inheritance/Multiple
- Inheritance/Single
- Integer overflow
- Interactive programming
- Intersecting Number Wheels
- Inverted index
- Inverted syntax
K
- K-d tree
- K-means++ clustering
- Kernighans large earthquake problem
- Keyboard input/Flush the keyboard buffer
- Keyboard input/Keypress check
- Keyboard macros
- Knapsack problem/0-1
- Knapsack problem/Bounded
- Knapsack problem/Unbounded
- Knight's tour
- Knuth's algorithm S
- Knuth's power tree
- Koch curve
- Kolakoski sequence
- Kosaraju
- Kronecker product
- Kronecker product based fractals
L
- Lah numbers
- Langton's ant
- Largest number divisible by its digits
- Last letter-first letter
- Latin Squares in reduced form
- Law of cosines - triples
- Leonardo numbers
- List comprehensions
- Long primes
- Longest Common Substring
- Longest common subsequence
- Longest increasing subsequence
- Look-and-say sequence
- Loops/Increment loop index within loop body
- Loops/Wrong ranges
- Loops/with multiple ranges
- Lucas-Lehmer test
- Lucky and even lucky numbers
- Lychrel numbers
M
- MAC Vendor Lookup
- MD4
- MD5
- MD5/Implementation
- Machine code
- Magic squares of doubly even order
- Magic squares of singly even order
- Main step of GOST 28147-89
- Make directory path
- Mandelbrot set
- Mastermind
- Matrix-exponentiation operator
- Matrix Digital Rain
- Matrix chain multiplication
- Mayan numerals
- Maze solving
- McNuggets Problem
- Median filter
- Metaprogramming
- Metered concurrency
- Metronome
- Mian-Chowla sequence
- Miller–Rabin primality test
- Mind boggling card trick
- Minesweeper game
- Modular exponentiation
- Monte Carlo methods
- Mouse position
- Multi-dimensional array
- Multiple distinct objects
- Multiple regression
- Multiplicative order
- Multisplit
- Munchausen numbers
N
O
P
- P-value correction
- Paraffins
- Parallel Brute Force
- Parallel calculations
- Parametric polymorphism
- Parametrized SQL statement
- Parse an IP Address
- Partial function application
- Partition an integer X into N primes
- Pascal's triangle/Puzzle
- Password generator
- Pathological floating point problems
- Pattern matching
- Peaceful chess queen armies
- Peano curve
- Pell's equation
- Penney's game
- Pentagram
- Percentage difference between images
- Percolation/Bond percolation
- Percolation/Mean cluster density
- Percolation/Mean run density
- Percolation/Site percolation
- Perfect shuffle
- Perfect totient numbers
- Permutation test
- Permutations
- Permutations/Derangements
- Permutations/Rank of a permutation
- Permutations by swapping
- Pig the dice game
- Pig the dice game/Player
- Pinstripe/Display
- Pinstripe/Printer
- Plasma effect
- Play recorded sounds
- Playing cards
- Plot coordinate pairs
- Poker hand analyser
- Polymorphic copy
- Polymorphism
- Polynomial long division
- Polynomial regression
- Polyspiral
- Population count
- Prime conspiracy
- Primes - allocate descendants to their ancestors
- Primorial numbers
- Priority queue
- Program name
- Pythagoras tree
- Pythagorean quadruples
R
- RCRPG
- RIPEMD-160
- RPG Attributes Generator
- RSA code
- Ramer-Douglas-Peucker line simplification
- Random number generator (device)
- Range consolidation
- Ranking methods
- Rare numbers
- Rate counter
- Ray-casting algorithm
- Recaman's sequence
- Record sound
- Reduced row echelon form
- Reflection/Get source
- Reflection/List methods
- Regular expressions
- Remove lines from a file
- Rename a file
- Rendezvous
- 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/Find unimplemented tasks
- Rosetta Code/Fix code tags
- Rosetta Code/Rank languages by popularity
- Runtime evaluation
- Runtime evaluation/In an environment
S
- S-Expressions
- SHA-1
- SHA-256
- SOAP
- SQL-based authentication
- Safe addition
- Safe primes and unsafe primes
- Sailors, coconuts and a monkey problem
- Same Fringe
- Scope modifiers
- Search a list of records
- Secure temporary file
- Self-describing numbers
- Self-referential sequence
- 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
- Set of real numbers
- Set puzzle
- Seven-sided dice from five-sided dice
- Sexy primes
- Shell one-liner
- Shoelace formula for polygonal area
- Shortest common supersequence
- Show Ascii table
- Sierpinski pentagon
- Sierpinski triangle/Graphical
- Simple database
- Simple windowed application
- Simulate input/Keyboard
- Simulate input/Mouse
- Singleton
- Smarandache prime-digital sequence
- Smith numbers
- Sockets
- 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 array of composite structures
- Sort disjoint sublist
- Sort numbers lexicographically
- Sort stability
- Sort three variables
- Sorting algorithms/Patience sort
- Sorting algorithms/Permutation sort
- Sorting algorithms/Radix sort
- Sorting algorithms/Sleep 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 but not cube
- Stable marriage problem
- Stair-climbing puzzle
- Start from a main routine
- State name puzzle
- Statistics/Normal distribution
- Stem-and-leaf plot
- Stern-Brocot sequence
- Straddling checkerboard
- Stream Merge
- String comparison
- Strong and weak primes
- Subleq
- Successive prime differences
- Suffixation of decimal numbers
- Sum and Product Puzzle
- Sum to 100
- Sunflower fractal
- Super-d numbers
- Superellipse
- Superpermutation minimisation
- Sutherland-Hodgman polygon clipping
- Synchronous concurrency
T
- Table creation/Postal addresses
- Tarjan
- Taxicab numbers
- Terminal control/Clear the screen
- Terminal control/Coloured text
- Terminal control/Cursor movement
- Terminal control/Cursor positioning
- Terminal control/Dimensions
- Terminal control/Hiding the cursor
- Terminal control/Inverse video
- Terminal control/Positional read
- Terminal control/Preserve screen
- Terminal control/Unicode output
- Ternary logic
- Test a function
- Test integerness
- Textonyms
- The ISAAC Cipher
- The Name Game
- The Twelve Days of Christmas
- Thiele's interpolation formula
- Thue-Morse
- Tic-tac-toe
- Tokenize a string with escaping
- Tonelli-Shanks algorithm
- Topic variable
- Topological sort
- Total circles area
- Totient function
- Tree traversal
- Truth table
- Twelve statements
U
V
W
- Walk a directory/Non-recursively
- Walk a directory/Recursively
- Water collected between towers
- Web scraping
- Weird numbers
- Window creation
- Window creation/X11
- Window management
- Wireworld
- Word frequency
- Word search
- World Cup group stage
- Write entire file
- Write language name in 3D ASCII
- Write to Windows event log
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 PL/I (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.
2
A
B
C
- Card shuffles
- Chebyshev coefficients
- Check input device is a terminal
- Check output device is a terminal
- Checksumcolor
- Chemical Calculator
- Chernick's Carmichael numbers
- Cheryl's Birthday
- Chess player
- Chess player/Move generation
- Chess player/Program options and user interface
- Chess player/Search and evaluation
- Cipolla's algorithm
- Code segment unload
- Color wheel
- Combinations with repetitions/Square Digit Chain
- Continued fraction/Arithmetic/G(matrix NG, Contined Fraction N)
- Continued fraction/Arithmetic/G(matrix NG, Contined Fraction N1, Contined Fraction N2)
- Copy stdin to stdout
- Create an object/Native demonstration
- Curve that touches three points
- Cycle detection
D
E
F
- Faces from a mesh
- Factorions
- Faulhaber's formula
- Faulhaber's triangle
- Feigenbaum constant calculation
- Fermat numbers
- Fibonacci heap
- File size distribution
- Find URI in text
- Find duplicate files
- Find first and last set bit of a long integer
- Find the intersection of a line with a plane
- Finite state machine
- Free polyominoes enumeration
- French Republican calendar
G
H
I
L
M
- Magic 8-Ball
- Make a backup file
- Markov chain text generator
- Mayan calendar
- Mersenne primes
- Metallic ratios
- Modular arithmetic
- Modulinos
- Monads/List monad
- Monads/Maybe monad
- Monads/Writer monad
- Montgomery reduction
- Morpion solitaire
- Most frequent k chars distance
- Multidimensional Newton-Raphson method
- Multiline shebang
- Musical scale
N
O
P
- Palindromic gapful numbers
- Parse EBNF
- Parse command-line arguments
- Particle Swarm Optimization
- Penrose tiling
- Pentomino tiling
- Perceptron
- Perlin noise
- Permutations with repetitions
- Permutations with some identical elements
- Pierpont primes
- Playfair cipher
- Polynomial synthetic division
- Print debugging statement
- Process SMIL directives in XML data
- Proof
R
- Railway circuit
- Ramanujan's constant
- Ramsey's theorem
- Random Latin Squares
- Raster bars
- Read a file character by character/UTF8
- Readline interface
- Recursive descent parser generator
- Reflection/List methods
- Remote agent/Agent interface
- Remote agent/Agent logic
- Remote agent/Simulation
- Repeat
- Resistance Calculator
- Resistance Network Calculator
- Reverse the gender of a string
- Robots
- Rosetta Code/List authors of task descriptions
- Rosetta Code/Rank languages by number of users
- Rosetta Code/Run examples
- Rosetta Code/Tasks sorted by average lines of code
- Rosetta Code/Tasks without examples
- Run as a daemon or service
S
- Safe mode
- Sattolo cycle
- Self-hosting compiler
- Separate the house number from the street name
- Simulated annealing
- Sine wave
- Singly-linked list/Element removal
- Snake
- Snake And Ladder
- Solve a Rubik's Cube
- Solving coin problems
- Sorting Algorithms/Circle Sort
- Sorting algorithms/Cycle sort
- Sorting algorithms/Tree sort on a linked list
- Spoof game
- Starting a web browser
- Stirling numbers of the first kind
- Stirling numbers of the second kind
- Subset sum problem
- Substitution Cipher
- Suffix tree
- Sum data type
T
- Tamagotchi emulator
- Teacup rim text
- Terminal control/Restricted width positional input/No wrapping
- Terminal control/Restricted width positional input/With wrapping
- Tetris
- Text between
- Text to HTML
- Time-based One-time Password Algorithm
- Topological sort/Extracted top item
- Transportation problem
- Tree datastructures
- Two Sum
- Type detection
U
W
Requiring Attention[edit]
Examples[edit]
These tasks have implementations in PL/I, 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 PL/I 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 PL/I was inappropriate for these tasks, or implementations of them would be unenlightening. Feel free to try your hand at them anyway.
No pages found.
End of List[edit]
Again, feel free to try your hand at any of the tasks listed on this page.