User:Kevin Reid/E tasks: Difference between revisions
Content added Content deleted
(classifying) |
(classifying) |
||
Line 9: | Line 9: | ||
* [[Doubly-linked list/Traversal]] |
* [[Doubly-linked list/Traversal]] |
||
* [[Evaluate binomial coefficients]] |
* [[Evaluate binomial coefficients]] |
||
⚫ | |||
⚫ | |||
⚫ | |||
==Language/library features== |
==Language/library features== |
||
Line 15: | Line 18: | ||
* [[Compile-time calculation]] |
* [[Compile-time calculation]] |
||
* [[Extreme floating point values]] |
* [[Extreme floating point values]] |
||
⚫ | |||
* [[JSON]] (2 ways: terml and deJSONKit) |
|||
==Algorithmic== |
==Algorithmic== |
||
⚫ | |||
* [[Best shuffle]] |
* [[Best shuffle]] |
||
* [[Catmull–Clark subdivision surface]] |
* [[Catmull–Clark subdivision surface]] |
||
Line 22: | Line 28: | ||
* [[Closest-pair problem]] |
* [[Closest-pair problem]] |
||
* [[Equilibrium index]] |
* [[Equilibrium index]] |
||
⚫ | |||
⚫ | |||
* [[Long multiplication]] |
* [[Long multiplication]] |
||
* [[Longest common subsequence]] |
* [[Longest common subsequence]] |
||
* [[Non-continuous subsequences]] |
* [[Non-continuous subsequences]] |
||
* [[Ray-casting algorithm]] |
* [[Ray-casting algorithm]] |
||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
==GUI== |
==GUI== |
||
⚫ | |||
⚫ | |||
* [[Keyboard macros]] |
* [[Keyboard macros]] |
||
* [[Mouse position]] |
* [[Mouse position]] |
||
Line 38: | Line 52: | ||
* [[Simulate input/Keyboard]] |
* [[Simulate input/Keyboard]] |
||
* [[Simulate input/Mouse]] |
* [[Simulate input/Mouse]] |
||
==User interaction (unspecified type)== |
|||
⚫ | |||
⚫ | |||
⚫ | |||
==Graphics== |
==Graphics== |
||
* [[Brownian tree]] |
* [[Brownian tree]] |
||
⚫ | |||
* [[Dragon curve]] |
* [[Dragon curve]] |
||
⚫ | |||
* [[Plot coordinate pairs]] |
* [[Plot coordinate pairs]] |
||
⚫ | |||
⚫ | |||
===Using [[Basic bitmap storage]]=== |
===Using [[Basic bitmap storage]]=== |
||
* [[Bitmap/Bézier curves/Cubic]] |
* [[Bitmap/Bézier curves/Cubic]] |
||
Line 56: | Line 77: | ||
* [[Bitmap/Read an image through a pipe]] |
* [[Bitmap/Read an image through a pipe]] |
||
* [[Xiaolin Wu's line algorithm]] |
* [[Xiaolin Wu's line algorithm]] |
||
===Other pixel processing=== |
|||
⚫ | |||
==Mathematics== |
==Mathematics== |
||
Line 62: | Line 86: | ||
* [[Deconvolution/1D]] |
* [[Deconvolution/1D]] |
||
* [[Deconvolution/2D+]] |
* [[Deconvolution/2D+]] |
||
⚫ | |||
===Integers=== |
===Integers=== |
||
* [[Factors of an integer]] |
* [[Factors of an integer]] |
||
Line 77: | Line 102: | ||
* [[Verify distribution uniformity/Naive]] |
* [[Verify distribution uniformity/Naive]] |
||
* [[Verify distribution uniformity/Chi-squared test]] |
* [[Verify distribution uniformity/Chi-squared test]] |
||
==Operating system interfaces== |
|||
⚫ | |||
⚫ | |||
==Small projects== |
==Small projects== |
||
* [[24 game]] |
* [[24 game]] |
||
* [[ |
* [[Forest fire]] |
||
⚫ | |||
⚫ | |||
⚫ | |||
==Large projects== |
==Large projects== |
||
Line 90: | Line 122: | ||
* [[Execute a Markov algorithm]] |
* [[Execute a Markov algorithm]] |
||
* [[Execute SNUSP]] |
* [[Execute SNUSP]] |
||
⚫ | |||
* [[Huffman coding]] |
* [[Huffman coding]] |
||
* [[LZW compression]] |
* [[LZW compression]] |
||
Line 150: | Line 183: | ||
* [[Date manipulation]] |
* [[Date manipulation]] |
||
* [[Date format]] |
* [[Date format]] |
||
* [[Discordian date]] |
|||
⚫ | |||
⚫ | |||
===Stream IO=== |
===Stream IO=== |
||
Line 229: | Line 265: | ||
Insert new tasks here. |
Insert new tasks here. |
||
<!--INSERT--> |
<!--INSERT--> |
||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
* [[Forest fire]] |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
* [[JSON]] |
|||
* [[Knapsack problem/0-1]] |
* [[Knapsack problem/0-1]] |
||
* [[Knapsack problem/Bounded]] |
* [[Knapsack problem/Bounded]] |
||
Line 286: | Line 297: | ||
* [[Simple quaternion type and operations]] |
* [[Simple quaternion type and operations]] |
||
* [[Sort an array of composite structures]] |
* [[Sort an array of composite structures]] |
||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
* [[Soundex]] |
* [[Soundex]] |
||
* [[Stable marriage problem]] |
* [[Stable marriage problem]] |
Revision as of 21:55, 31 January 2011
This is Kevin Reid's personal classification of tasks not implemented in E, or just poorly done in E, by what kind of problem they are, or what kind of library/language work should come first. The presence of items on this list is managed by Task list updater.e (but is not automatically run); the classification is done manually.
Simple
- Averages/Median
- Averages/Pythagorean means
- Averages/Root mean square
- Doubly-linked list/Traversal
- Evaluate binomial coefficients
- Hailstone sequence
- Hamming numbers
- Horner's rule for polynomial evaluation
Language/library features
- Anonymous recursion
- Character matching
- Compile-time calculation
- Extreme floating point values
- Flow-control structures
- JSON (2 ways: terml and deJSONKit)
Algorithmic
- Arena storage pool (Covers both implementing an allocator, and using it to allocate physical memory... Do the first part perhaps.)
- Best shuffle
- Catmull–Clark subdivision surface
- Combinations with repetitions
- Closest-pair problem
- Equilibrium index
- Find common directory path
- Find the missing permutation
- Long multiplication
- Longest common subsequence
- Non-continuous subsequences
- Ray-casting algorithm
- Sorting algorithms/Bead sort
- Sorting algorithms/Comb sort
- Sorting algorithms/Pancake sort
- Sorting algorithms/Radix sort
- Sorting algorithms/Stooge sort
GUI
- GUI component interaction
- GUI enabling/disabling of controls
- Keyboard macros
- Mouse position
- Window management
- Play recorded sounds (classified here because we can borrow Java facilities in the EoJ case)
- User input/Graphical
Reflective
User interaction (unspecified type)
Graphics
- Brownian tree
- Constrained random points on a circle
- Dragon curve
- Fractal tree
- Plot coordinate pairs
- Image noise
Using Basic bitmap storage
- Bitmap/Bézier curves/Cubic
- Bitmap/Bézier curves/Quadratic
- Image convolution
- Bitmap/Histogram
- Grayscale image
- Median filter
- Bitmap/Midpoint circle algorithm
- Bitmap/PPM conversion through a pipe
- Bitmap/Read a PPM file
- Bitmap/Read an image through a pipe
- Xiaolin Wu's line algorithm
Other pixel processing
Mathematics
- Formal power series (similar to Polynomial long division)
- improve Median (research better algorithms)
- Deconvolution/1D
- Deconvolution/2D+
- Hofstadter-Conway $10,000 sequence
Integers
- Factors of an integer
- Lucas-Lehmer test
- Multiplicative order
- Factors of a Mersenne number
- Seven-sided dice from five-sided dice
Numerics
- Gamma function
- Polynomial regression
- Multiple regression
- Roots of a quadratic function
- Roots of a function
- Sequence of non-squares
- Verify distribution uniformity/Naive
- Verify distribution uniformity/Chi-squared test
Operating system interfaces
Small projects
Large projects
- 24 game/Solve
- Bulls and cows/Player
- Text processing/1
- Text processing/2
- RCRPG
- Execute a Markov algorithm
- Execute SNUSP
- Go Fish
- Huffman coding
- LZW compression
- Monty Hall problem
- Pascal's triangle/Puzzle
- Number names
- Roman numerals
- Sudoku
Rosetta Code processing
Argue with
Needs a ... to be done well
Reflection toolkit
User-defined exceptions
Parser library
- Arithmetic evaluation ought to use one even if it's not technically required. (improve)
Iter/accum/stream tools
- N distinct objects (improve: needs better answer than accumulator)
- ...and many other tasks to improve
Vector type
Matrix type
Complex type
Rational type
Calendar
- Day of the week
- Date manipulation
- Date format
- Discordian date
- Five weekends
- Holidays related to Easter
Stream IO
Console input
- A+B
- Keyboard Input/Determine if a key has been pressed at the terminal
- Keyboard Input/Flush the keyboard buffer
- Keyboard Input/Obtain a Y or N response
- Menu
- Input loop
- Create a two-dimensional array at runtime
- User input/Text
Sockets
- Chat server
- Echo server
- Sockets
- Hostname (improve: done by shell command, but should be done internally)
Operating system interfaces
- Secure temporary file
- Fork
- Handle a signal
- Time a function (improve: done EoJ; needs cross-platform)
- Terminal control/Clear the screen
- Terminal control/Determine the height and width of the terminal window
- Terminal control/Moving the cursor to a specific location on the screen
FFI
- Call a function in a shared library
- Call a foreign-language function
- Call a function from a foreign language
- OpenGL
- Host introspection (currently omitted)
- Create an object at a given address (currently omitted)
Database
Protocol/language implementations
HTTP client
XML
- XML/Output
- XML/Input
- XML/XPath (improve: needs revisiting when E-XML is better)
Miscellaneous
- Formatted numeric output
- Write float arrays to a text file (same as Formatted Output)
- Regular expressions (need agreement on regexp substitution and regexp search-as-opposed-to-match)
- Sort stability (Need to find/write the documentation on this)
- Stack traces (cross-impl agreement)
Needs improvement
- Dynamic variable names (improve: Once environment-
with
is builtin, show using it together withinterp.setTopScope
) - E-on-Java is flagged for something
Special cases
- Compare sorting algorithms' performance — waiting on Shell sort, Plot x, y arrays, Write float arrays to a text file, Polynomial regression
Notable omits
- Rendezvous (Hard to define what this means in E. Intervat perhaps? Is currently marked omit.)
Completed
To classify
Insert new tasks here.
- Knapsack problem/0-1
- Knapsack problem/Bounded
- Knapsack problem/Continuous
- Leap year
- Literals/Floating point
- Luhn test of credit card numbers
- MD5/Implementation
- Map range
- Maze generation
- Maze solving
- Metaprogramming
- Minesweeper game
- Morse code
- Multiple distinct objects
- N-queens problem
- Narcissist
- Non-decimal radices/Input
- Number reversal game
- Optional parameters
- Ordered words
- Parallel calculations
- Parametrized SQL statement
- Permutations
- Power set
- Price fraction
- Problem of Apollonius
- Random number generator (device)
- Random number generator (included)
- Range expansion
- Reverse a string
- Simple quaternion type and operations
- Sort an array of composite structures
- Soundex
- Stable marriage problem
- Stair-climbing puzzle
- Stem-and-leaf plot
- String concatenation
- String interpolation (included)
- Strip block comments
- Strip comments from a string
- Sutherland-Hodgman polygon clipping
- Symmetric difference
- Thiele's interpolation formula
- Truncatable primes
- Undefined values
- VList
- Variable-length quantity
- Wireworld
- Write to Windows event log