Unicon
This programming language may be used to instruct a computer to perform a task.
Listed below are all of the tasks on Rosetta Code which have been solved using Unicon.
This programming language may be used to instruct a computer to perform a task.
Official website |
---|
Execution method: | Compiled (bytecode) |
---|---|
Garbage collected: | Yes |
Parameter passing methods: | By value |
Type safety: | Safe |
Type strength: | Strong |
Type expression: | Implicit |
Type checking: | Dynamic |
See Also: |
Your Help Needed
If you know Unicon, please write code for some of the tasks not implemented in Unicon.
If you know Unicon, please write code for some of the tasks not implemented in Unicon.
Unicon is a virtual machine. Other virtual machines.
Unicon is a unification of several extended dialects of the Icon language, featuring Icon plus classes, POSIX system facilities, GDBM and ODBC-based (SQL) database access, packages, 3D graphics and more, all provided at a very high semantic level.
In addition to Icon, Unicon draws from:
- IDOL an object-oriented Icon preprocessor
- MTIcon a multi-threading Icon. (Most recently, in version 12, improved multi-threading capabilities were added.)
While Unicon is mostly a super-set of Icon there are some differences and incompatibilities.
Icon itself is an evolution of the line of languages COMIT, SNOBOL, SNOBOL4, and SL5.
Contents
Introduction to Icon and Unicon[edit]
If you want to learn more about these languages please see An introduction to Icon and Unicon for Rosetta Code.
The following are related:
External Links and References[edit]
Home Pages[edit]
Books[edit]
General[edit]
- Book: Programming with Unicon describing the language, the Icon Programming Library and Unicon extensions
- Book: The Icon Programming Language, 3rd Edition
- Book: Graphics Programming in Icon
- Book: Icon Programming Language Handbook
- Book: Icon Programming for Humanists
Internals[edit]
- The Implementation of Icon and Unicon a Compendium]
- The Implementation of the Icon Programming Language
Articles and Newsletters[edit]
- Archived issues of the Generator from 2004-2005 discussing Unicon programming
- Archived issues of the Icon Newsletter from 1979-2000 discussing Icon programming
- Archived issues of the Icon Analysts from 1990-2001 discussing advanced Icon programming
Programming References[edit]
- The Icon Programming Library and index
- Unicon Discussion Web/TWiki containing various programming examples, problems, and challenges
Other[edit]
- Wikipedia: Unicon
- Wikipedia: Icon
- Presentation: Fundamentals of Icon Programming
- PC Linux OS Magazine, Volume 48, Computer Languages From A to Z: Unicon
Related/Variants[edit]
Other RosettaCode Wiki Links[edit]
- The Discussion Tab for this page Lots of notes about things to do, help wanted, ideas, and guidance on formatting and markup
- Tasks not yet implemented Tasks that need to be coded
- Icon+Unicon/Analysis_of_UnimplementedTasks for an analysis of the groupings of these tasks (taken at a point in time)
- Unimplementable tasks Tasks that cannot be implemented in the language
- Tasks requiring attention Tasks that could be improved
- Most Linked Categories shows how many pages various languages (and other categories) have.
Subcategories
This category has the following 3 subcategories, out of 3 total.
Pages in category "Unicon"
The following 587 pages are in this category, out of 587 total.
A
- A+B
- ABC Problem
- Abstract type
- Accumulator factory
- Ackermann function
- Add a variable to a class instance at runtime
- Align columns
- Almost prime
- Amb
- Anagrams
- Anagrams/Deranged anagrams
- Animate a pendulum
- Animation
- Anonymous recursion
- Append a record to the end of a text file
- Apply a callback to an array
- Arbitrary-precision integers (included)
- Arithmetic evaluation
- Arithmetic-geometric mean
- Arithmetic/Complex
- Arithmetic/Integer
- Arithmetic/Rational
- Array concatenation
- Arrays
- Assertions
- Associative array/Creation
- Associative array/Iteration
- Atomic updates
- Average loop length
- Averages/Arithmetic mean
- Averages/Mean angle
- Averages/Mean time of day
- Averages/Median
- Averages/Mode
- Averages/Pythagorean means
- Averages/Root mean square
- Averages/Simple moving average
B
C
- Caesar cipher
- Calendar
- Calendar - for "REAL" programmers
- Call a foreign-language function
- Call a function
- Call an object method
- Carmichael 3 strong pseudoprimes
- Case-sensitivity of identifiers
- Catalan numbers
- Catalan numbers/Pascal's triangle
- Catamorphism
- Character codes
- Chat server
- Check that file exists
- Checkpoint synchronization
- Chinese remainder theorem
- Cholesky decomposition
- Circles of given radius through two points
- Classes
- Closest-pair problem
- Closures/Value capture
- Collections
- Color of a screen pixel
- Colour bars/Display
- Colour pinstripe/Display
- Combinations
- Combinations and permutations
- Combinations with repetitions
- Comma quibbling
- Command-line arguments
- Comments
- Compound data type
- Concurrent computing
- Conditional structures
- Constrained genericity
- Constrained random points on a circle
- Conway's Game of Life
- Copy a string
- Count in factors
- Count in octal
- Count occurrences of a substring
- Count the coins
- CRC-32
- Create a file
- Create a file on magnetic tape
- Create a two-dimensional array at runtime
- Create an HTML table
- CSV data manipulation
- CSV to HTML translation
- Cumulative standard deviation
- Currying
- CUSIP
D
- Date format
- Date manipulation
- Day of the week
- Deal cards for FreeCell
- Decision tables
- Deepcopy
- Delete a file
- Detect division by zero
- Determine if a string is numeric
- Determine if only one instance is running
- Digital root
- Digital root/Multiplicative digital root
- Dijkstra's algorithm
- Dinesman's multiple-dwelling problem
- Dining philosophers
- Discordian date
- DNS query
- Documentation
- Dot product
- Doubly-linked list/Definition
- Doubly-linked list/Element definition
- Doubly-linked list/Element insertion
- Doubly-linked list/Traversal
- Dragon curve
- Draw a clock
- Draw a sphere
- Dutch national flag problem
- Dynamic variable names
E
- Echo server
- Element-wise operations
- Empty directory
- Empty program
- Empty string
- Enforced immutability
- Entropy
- Enumerations
- Environment variables
- Equilibrium index
- Ethiopian multiplication
- Euler method
- Evaluate binomial coefficients
- Even or odd
- Events
- Evolutionary algorithm
- Exceptions
- Exceptions/Catch an exception thrown in a nested call
- Execute a Markov algorithm
- Execute a system command
- Execute Brain****
- Execute HQ9+
- Exponentiation operator
- Extend your language
- Extensible prime generator
- Extreme floating point values
F
- Factorial
- Factors of a Mersenne number
- Factors of an integer
- Fibonacci n-step number sequences
- Fibonacci sequence
- Fibonacci word
- Fibonacci word/fractal
- File input/output
- File modification time
- File size
- Filter
- Find common directory path
- Find first and last set bit of a long integer
- Find limit of recursion
- Find the last Sunday of each month
- Find the missing permutation
- Find URI in text
- First class environments
- First-class functions
- First-class functions/Use numbers analogously
- Five weekends
- FizzBuzz
- Flatten a list
- Flow-control structures
- Floyd's triangle
- Forest fire
- Fork
- Formatted numeric output
- Forward difference
- Four bit adder
- Fractal tree
- Fractran
- Function composition
- Function definition
G
- Galton box animation
- Gamma function
- Generate lower case ASCII alphabet
- Generator/Exponential
- Generic swap
- Get system command output
- Globally replace text in several files
- Go Fish
- Gray code
- Greatest common divisor
- Greatest element of a list
- Greatest subsequential sum
- Greyscale bars/Display
- Guess the number
- Guess the number/With feedback
- Guess the number/With feedback (player)
- GUI component interaction
- GUI enabling/disabling of controls
- GUI/Maximum window dimensions
H
- Hailstone sequence
- Hamming numbers
- Handle a signal
- Happy numbers
- Harshad or Niven series
- Hash from two arrays
- Haversine formula
- Hello world/Graphical
- Hello world/Line printer
- Hello world/Newline omission
- Hello world/Standard error
- Hello world/Text
- Higher-order functions
- Hofstadter Figure-Figure sequences
- Hofstadter Q sequence
- Hofstadter-Conway $10,000 sequence
- Holidays related to Easter
- Honeycombs
- Horizontal sundial calculations
- Horner's rule for polynomial evaluation
- Host introspection
- Hostname
- HTTP
- HTTPS
- Huffman coding
I
K
L
- Langton's ant
- Largest int from concatenated ints
- Last Friday of each month
- Last letter-first letter
- Leap year
- Least common multiple
- Left factorials
- Letter frequency
- Levenshtein distance
- Linear congruential generator
- Linux CPU utilization
- List comprehensions
- Literals/Floating point
- Literals/Integer
- Literals/String
- Logical operations
- Long multiplication
- Longest common subsequence
- Longest increasing subsequence
- Longest string challenge
- Look-and-say sequence
- Loop over multiple arrays simultaneously
- Loops/Break
- Loops/Continue
- Loops/Do-while
- Loops/Downward for
- Loops/For
- Loops/For with a specified step
- Loops/Foreach
- Loops/Infinite
- Loops/N plus one half
- Loops/Nested
- Loops/While
- Ludic numbers
- Luhn test of credit card numbers
M
- Mad Libs
- Magic squares of odd order
- Man or boy test
- Mandelbrot set
- Map range
- Matrix multiplication
- Matrix transposition
- Maze generation
- Maze solving
- MD5
- MD5/Implementation
- Memory allocation
- Menu
- Metered concurrency
- Middle three digits
- Miller–Rabin primality test
- Minesweeper game
- Modular exponentiation
- Modular inverse
- Monte Carlo methods
- Monty Hall problem
- Morpion solitaire
- Mouse position
- Move-to-front algorithm
- Multifactorial
- Multiple distinct objects
- Multiplication tables
- Multisplit
- Munching squares
- Mutex
- Mutual recursion
N
O
P
- Palindrome detection
- Pangram checker
- Parallel calculations
- Parametric polymorphism
- Parse an IP Address
- Parse command-line arguments
- Parsing/RPN calculator algorithm
- Parsing/RPN to infix conversion
- Parsing/Shunting-yard algorithm
- Partial function application
- Pascal's triangle
- Pathological floating point problems
- Percentage difference between images
- Percolation/Mean run density
- Perfect numbers
- Permutations
- Permutations by swapping
- Pernicious numbers
- Pi
- Pick random element
- Pinstripe/Display
- Playing cards
- Plot coordinate pairs
- Pointers and references
- Polymorphic copy
- Polymorphism
- Power set
- Pragmatic directives
- Price fraction
- Primality by trial division
- Prime decomposition
- Priority queue
- Probabilistic choice
- Problem of Apollonius
- Program name
- Program termination
- Pythagorean triples
R
- Random number generator (device)
- Random number generator (included)
- Random numbers
- Range expansion
- Range extraction
- RCRPG
- Read a configuration file
- Read a file line by line
- Read a specific line from a file
- Read entire file
- Real constants and functions
- Reduced row echelon form
- Regular expressions
- Remove duplicate elements
- Remove lines from a file
- Rename a file
- Rep-string
- Repeat a string
- Respond to an unknown method call
- Return multiple values
- Reverse a string
- Reverse words in a string
- Rock-paper-scissors
- Roman numerals/Decode
- Roman numerals/Encode
- Roots of a function
- Roots of a quadratic function
- Roots of unity
- Rosetta Code/Count examples
- Rosetta Code/Find bare lang tags
- Rosetta Code/Find unimplemented tasks
- Rosetta Code/Rank languages by popularity
- Rot-13
- RSA code
- Run-length encoding
S
- S-Expressions
- Same Fringe
- Scope modifiers
- Scope/Function names and labels
- Search a list
- Secure temporary file
- SEDOLs
- Self-describing numbers
- Self-referential sequence
- Semiprime
- Semordnilap
- Send an unknown method call
- Send email
- Sequence of non-squares
- Set
- Set of real numbers
- Seven-sided dice from five-sided dice
- Shell one-liner
- Short-circuit evaluation
- Show the epoch
- Sierpinski carpet
- Sierpinski triangle
- Sierpinski triangle/Graphical
- Sieve of Eratosthenes
- Simple windowed application
- Singleton
- Singly-linked list/Element definition
- Singly-linked list/Element insertion
- Singly-linked list/Traversal
- Sleep
- SOAP
- Sockets
- Solve a Hidato puzzle
- Solve a Holy Knight's tour
- Solve a Hopido puzzle
- Solve a Numbrix puzzle
- Sort an array of composite structures
- Sort an integer array
- Sort disjoint sublist
- Sort stability
- Sort using a custom comparator
- Sorting algorithms/Bead sort
- Sorting algorithms/Bogosort
- Sorting algorithms/Bubble sort
- Sorting algorithms/Cocktail sort
- Sorting algorithms/Comb sort
- Sorting algorithms/Counting sort
- Sorting algorithms/Gnome sort
- Sorting algorithms/Heapsort
- Sorting algorithms/Insertion sort
- Sorting algorithms/Merge sort
- Sorting algorithms/Pancake sort
- Sorting algorithms/Permutation sort
- Sorting algorithms/Quicksort
- Sorting algorithms/Radix sort
- Sorting algorithms/Selection sort
- Sorting algorithms/Shell sort
- Sorting algorithms/Sleep sort
- Sorting algorithms/Stooge sort
- Soundex
- Special characters
- Special variables
- Spiral matrix
- Stable marriage problem
- Stack
- Stack traces
- Stair-climbing puzzle
- State name puzzle
- Statistics/Basic
- Stem-and-leaf plot
- Straddling checkerboard
- String append
- String case
- String comparison
- String concatenation
- String interpolation (included)
- String length
- String matching
- String prepend
- Strip a set of characters from a string
- Strip block comments
- Strip comments from a string
- Strip control codes and extended characters from a string
- Strip whitespace from a string/Top and tail
- Subset sum problem
- Substring
- Substring/Top and tail
- Subtractive generator
- Sum and product of an array
- Sum digits of an integer
- Sum multiples of 3 and 5
- Sum of a series
- Sum of squares
- Symmetric difference
- Synchronous concurrency
- System time
T
- Take notes on the command line
- Temperature conversion
- Terminal control/Clear the screen
- Terminal control/Cursor positioning
- Terminal control/Display an extended character
- Terminal control/Ringing the terminal bell
- Ternary logic
- Test a function
- Text processing/1
- Text processing/2
- Text processing/Max licenses in use
- The Twelve Days of Christmas
- Tic-tac-toe
- Time a function
- Tokenize a string
- Top rank per group
- Topological sort
- Topswops
- Towers of Hanoi
- Trabb Pardo–Knuth algorithm
- Tree traversal
- Trigonometric functions
- Truncatable primes
- Truncate a file
- Two Sum
U
V
W
Categories:
- Execution method/Compiled/Bytecode
- Garbage collection/Yes
- Parameter passing/By value
- Typing/Safe
- Typing/Strong
- Typing/Expression/Implicit
- Typing/Checking/Dynamic
- Programming Languages
- Virtual Machines
- Programming paradigm/Procedural
- Programming paradigm/Dynamic
- Programming paradigm/Object-oriented
- Programming paradigm/Logic Programming
- Programming paradigm/Concurrent