diff --git a/Conf/task.yaml b/Conf/task.yaml index 15b7581266..fdc686c911 100644 --- a/Conf/task.yaml +++ b/Conf/task.yaml @@ -179,7 +179,7 @@ Exceptions/Catch an exception thrown in a nested call: Executable library: Execute a Markov algorithm: Execute a system command: -# Execute Brainf***: +Execute Brain****: Execute HQ9+: Execute SNUSP: Exponentiation operator: diff --git a/Lang/AutoIt/Execute-Brain---- b/Lang/AutoIt/Execute-Brain---- new file mode 120000 index 0000000000..373b547c42 --- /dev/null +++ b/Lang/AutoIt/Execute-Brain---- @@ -0,0 +1 @@ +../../Task/Execute-Brain----/AutoIt \ No newline at end of file diff --git a/Lang/BBC-BASIC/Execute-Brain---- b/Lang/BBC-BASIC/Execute-Brain---- new file mode 120000 index 0000000000..3d2ab0b621 --- /dev/null +++ b/Lang/BBC-BASIC/Execute-Brain---- @@ -0,0 +1 @@ +../../Task/Execute-Brain----/BBC-BASIC \ No newline at end of file diff --git a/Lang/Burlesque/Execute-Brain---- b/Lang/Burlesque/Execute-Brain---- new file mode 120000 index 0000000000..83d6c8c898 --- /dev/null +++ b/Lang/Burlesque/Execute-Brain---- @@ -0,0 +1 @@ +../../Task/Execute-Brain----/Burlesque \ No newline at end of file diff --git a/Lang/Clojure/Execute-Brain---- b/Lang/Clojure/Execute-Brain---- new file mode 120000 index 0000000000..7e545068d0 --- /dev/null +++ b/Lang/Clojure/Execute-Brain---- @@ -0,0 +1 @@ +../../Task/Execute-Brain----/Clojure \ No newline at end of file diff --git a/Lang/Elena/Execute-Brain---- b/Lang/Elena/Execute-Brain---- new file mode 120000 index 0000000000..93f688098a --- /dev/null +++ b/Lang/Elena/Execute-Brain---- @@ -0,0 +1 @@ +../../Task/Execute-Brain----/Elena \ No newline at end of file diff --git a/Lang/GAP/Execute-Brain---- b/Lang/GAP/Execute-Brain---- new file mode 120000 index 0000000000..8e0c192000 --- /dev/null +++ b/Lang/GAP/Execute-Brain---- @@ -0,0 +1 @@ +../../Task/Execute-Brain----/GAP \ No newline at end of file diff --git a/Lang/Go/Execute-Brain---- b/Lang/Go/Execute-Brain---- new file mode 120000 index 0000000000..e878c35039 --- /dev/null +++ b/Lang/Go/Execute-Brain---- @@ -0,0 +1 @@ +../../Task/Execute-Brain----/Go \ No newline at end of file diff --git a/Lang/Mathematica/Execute-Brain---- b/Lang/Mathematica/Execute-Brain---- new file mode 120000 index 0000000000..219a670cc3 --- /dev/null +++ b/Lang/Mathematica/Execute-Brain---- @@ -0,0 +1 @@ +../../Task/Execute-Brain----/Mathematica \ No newline at end of file diff --git a/Lang/Nimrod/Execute-Brain---- b/Lang/Nimrod/Execute-Brain---- new file mode 120000 index 0000000000..ef0fe3f5eb --- /dev/null +++ b/Lang/Nimrod/Execute-Brain---- @@ -0,0 +1 @@ +../../Task/Execute-Brain----/Nimrod \ No newline at end of file diff --git a/Lang/PARI-GP/Execute-Brain---- b/Lang/PARI-GP/Execute-Brain---- new file mode 120000 index 0000000000..1c984187ed --- /dev/null +++ b/Lang/PARI-GP/Execute-Brain---- @@ -0,0 +1 @@ +../../Task/Execute-Brain----/PARI-GP \ No newline at end of file diff --git a/Lang/PHP/Execute-Brain---- b/Lang/PHP/Execute-Brain---- new file mode 120000 index 0000000000..e2ae534769 --- /dev/null +++ b/Lang/PHP/Execute-Brain---- @@ -0,0 +1 @@ +../../Task/Execute-Brain----/PHP \ No newline at end of file diff --git a/Lang/PicoLisp/Execute-Brain---- b/Lang/PicoLisp/Execute-Brain---- new file mode 120000 index 0000000000..237fc98297 --- /dev/null +++ b/Lang/PicoLisp/Execute-Brain---- @@ -0,0 +1 @@ +../../Task/Execute-Brain----/PicoLisp \ No newline at end of file diff --git a/Lang/REXX/Execute-Brain---- b/Lang/REXX/Execute-Brain---- new file mode 120000 index 0000000000..9f257b126b --- /dev/null +++ b/Lang/REXX/Execute-Brain---- @@ -0,0 +1 @@ +../../Task/Execute-Brain----/REXX \ No newline at end of file diff --git a/Meta/Lang.yaml b/Meta/Lang.yaml index 7eeee85e3f..2c309437e5 100644 --- a/Meta/Lang.yaml +++ b/Meta/Lang.yaml @@ -909,6 +909,7 @@ Go: ext: go name: Go path: Go + run: go run %f url: Go Golfscript: ext: golf diff --git a/Meta/Task.yaml b/Meta/Task.yaml index 321fb23317..a27814dda9 100644 --- a/Meta/Task.yaml +++ b/Meta/Task.yaml @@ -1,2666 +1,5 @@ --- -100 doors: - name: 100 doors - path: 100-doors - url: 100_doors -24 game: - name: 24 game - path: 24-game - url: 24_game -24 game/Solve: - name: 24 game/Solve - path: 24-game-Solve - url: 24_game/Solve -99 Bottles of Beer: - name: 99 Bottles of Beer - path: 99-Bottles-of-Beer - url: 99_Bottles_of_Beer -A+B: - name: A+B - path: A+B - url: A+B -Abstract type: - name: Abstract type - path: Abstract-type - url: Abstract_type -Accumulator factory: - name: Accumulator factory - path: Accumulator-factory - url: Accumulator_factory -Ackermann function: - name: Ackermann function - path: Ackermann-function - url: Ackermann_function -Active Directory/Connect: - name: Active Directory/Connect - path: Active-Directory-Connect - url: Active_Directory/Connect -Active Directory/Search for a user: - name: Active Directory/Search for a user - path: Active-Directory-Search-for-a-user - url: Active_Directory/Search_for_a_user -Active object: - name: Active object - path: Active-object - url: Active_object -Add a variable to a class instance at runtime: - name: Add a variable to a class instance at runtime - path: Add-a-variable-to-a-class-instance-at-runtime - url: Add_a_variable_to_a_class_instance_at_runtime -Address of a variable: - name: Address of a variable - path: Address-of-a-variable - url: Address_of_a_variable -Align columns: - name: Align columns - path: Align-columns - url: Align_columns -Anagrams: - name: Anagrams - path: Anagrams - url: Anagrams -Anagrams/Deranged anagrams: - name: Anagrams/Deranged anagrams - path: Anagrams-Deranged-anagrams - url: Anagrams/Deranged_anagrams -Animate a pendulum: - name: Animate a pendulum - path: Animate-a-pendulum - url: Animate_a_pendulum -Animation: - name: Animation - path: Animation - url: Animation -Anonymous recursion: - name: Anonymous recursion - path: Anonymous-recursion - url: Anonymous_recursion -Apply a callback to an array: - name: Apply a callback to an array - path: Apply-a-callback-to-an-array - url: Apply_a_callback_to_an_array -Arbitrary-precision integers (included): - name: Arbitrary-precision integers (included) - path: Arbitrary-precision-integers--included- - url: Arbitrary-precision_integers_(included) -Arena storage pool: - name: Arena storage pool - path: Arena-storage-pool - url: Arena_storage_pool -Arithmetic evaluation: - name: Arithmetic evaluation - path: Arithmetic-evaluation - url: Arithmetic_evaluation -Arithmetic-geometric mean: - name: Arithmetic-geometric mean - path: Arithmetic-geometric-mean - url: Arithmetic-geometric_mean -Arithmetic/Complex: - name: Arithmetic/Complex - path: Arithmetic-Complex - url: Arithmetic/Complex -Arithmetic/Integer: - name: Arithmetic/Integer - path: Arithmetic-Integer - url: Arithmetic/Integer -Arithmetic/Rational: - name: Arithmetic/Rational - path: Arithmetic-Rational - url: Arithmetic/Rational -Array concatenation: - name: Array concatenation - path: Array-concatenation - url: Array_concatenation -Arrays: - name: Arrays - path: Arrays - url: Arrays -Assertions: - name: Assertions - path: Assertions - url: Assertions -Associative array/Creation: - name: Associative array/Creation - path: Associative-array-Creation - url: Associative_array/Creation -Associative array/Iteration: - name: Associative array/Iteration - path: Associative-array-Iteration - url: Associative_array/Iteration -Atomic updates: - name: Atomic updates - path: Atomic-updates - url: Atomic_updates -Average loop length: - name: Average loop length - path: Average-loop-length - url: Average_loop_length -Averages/Arithmetic mean: - name: Averages/Arithmetic mean - path: Averages-Arithmetic-mean - url: Averages/Arithmetic_mean -Averages/Mean angle: - name: Averages/Mean angle - path: Averages-Mean-angle - url: Averages/Mean_angle -Averages/Mean time of day: - name: Averages/Mean time of day - path: Averages-Mean-time-of-day - url: Averages/Mean_time_of_day -Averages/Median: - name: Averages/Median - path: Averages-Median - url: Averages/Median -Averages/Mode: - name: Averages/Mode - path: Averages-Mode - url: Averages/Mode -Averages/Pythagorean means: - name: Averages/Pythagorean means - path: Averages-Pythagorean-means - url: Averages/Pythagorean_means -Averages/Root mean square: - name: Averages/Root mean square - path: Averages-Root-mean-square - url: Averages/Root_mean_square -Averages/Simple moving average: - name: Averages/Simple moving average - path: Averages-Simple-moving-average - url: Averages/Simple_moving_average -Balanced brackets: - name: Balanced brackets - path: Balanced-brackets - url: Balanced_brackets -Balanced ternary: - name: Balanced ternary - path: Balanced-ternary - url: Balanced_ternary -Best shuffle: - name: Best shuffle - path: Best-shuffle - url: Best_shuffle -Binary digits: - name: Binary digits - path: Binary-digits - url: Binary_digits -Binary search: - name: Binary search - path: Binary-search - url: Binary_search -Binary strings: - name: Binary strings - path: Binary-strings - url: Binary_strings -Bitcoin/address validation: - name: Bitcoin/address validation - path: Bitcoin-address-validation - url: Bitcoin/address_validation -Bitmap: - name: Bitmap - path: Bitmap - url: Bitmap -Bitmap/Bresenham's line algorithm: - name: Bitmap/Bresenham's line algorithm - path: Bitmap-Bresenhams-line-algorithm - url: Bitmap/Bresenham's_line_algorithm -Bitmap/Bézier curves/Cubic: - name: Bitmap/Bézier curves/Cubic - path: Bitmap-B-zier-curves-Cubic - url: Bitmap/Bézier_curves/Cubic -Bitmap/Bézier curves/Quadratic: - name: Bitmap/Bézier curves/Quadratic - path: Bitmap-B-zier-curves-Quadratic - url: Bitmap/Bézier_curves/Quadratic -Bitmap/Flood fill: - name: Bitmap/Flood fill - path: Bitmap-Flood-fill - url: Bitmap/Flood_fill -Bitmap/Histogram: - name: Bitmap/Histogram - path: Bitmap-Histogram - url: Bitmap/Histogram -Bitmap/Midpoint circle algorithm: - name: Bitmap/Midpoint circle algorithm - path: Bitmap-Midpoint-circle-algorithm - url: Bitmap/Midpoint_circle_algorithm -Bitmap/PPM conversion through a pipe: - name: Bitmap/PPM conversion through a pipe - path: Bitmap-PPM-conversion-through-a-pipe - url: Bitmap/PPM_conversion_through_a_pipe -Bitmap/Read a PPM file: - name: Bitmap/Read a PPM file - path: Bitmap-Read-a-PPM-file - url: Bitmap/Read_a_PPM_file -Bitmap/Read an image through a pipe: - name: Bitmap/Read an image through a pipe - path: Bitmap-Read-an-image-through-a-pipe - url: Bitmap/Read_an_image_through_a_pipe -Bitmap/Write a PPM file: - name: Bitmap/Write a PPM file - path: Bitmap-Write-a-PPM-file - url: Bitmap/Write_a_PPM_file -Bitwise IO: - name: Bitwise IO - path: Bitwise-IO - url: Bitwise_IO -Bitwise operations: - name: Bitwise operations - path: Bitwise-operations - url: Bitwise_operations -Boolean values: - name: Boolean values - path: Boolean-values - url: Boolean_values -Box the compass: - name: Box the compass - path: Box-the-compass - url: Box_the_compass -Break OO privacy: - name: Break OO privacy - path: Break-OO-privacy - url: Break_OO_privacy -Brownian tree: - name: Brownian tree - path: Brownian-tree - url: Brownian_tree -Bulls and cows: - name: Bulls and cows - path: Bulls-and-cows - url: Bulls_and_cows -Bulls and cows/Player: - name: Bulls and cows/Player - path: Bulls-and-cows-Player - url: Bulls_and_cows/Player -CRC-32: - name: CRC-32 - path: CRC-32 - url: CRC-32 -CSV to HTML translation: - name: CSV to HTML translation - path: CSV-to-HTML-translation - url: CSV_to_HTML_translation -Caesar cipher: - name: Caesar cipher - path: Caesar-cipher - url: Caesar_cipher -Calendar: - name: Calendar - path: Calendar - url: Calendar -Calendar - for "real" programmers: - name: Calendar - for "real" programmers - path: Calendar---for-real-programmers - url: Calendar_-_for_"real"_programmers -Call a foreign-language function: - name: Call a foreign-language function - path: Call-a-foreign-language-function - url: Call_a_foreign-language_function -Call a function: - name: Call a function - path: Call-a-function - url: Call_a_function -Call a function in a shared library: - name: Call a function in a shared library - path: Call-a-function-in-a-shared-library - url: Call_a_function_in_a_shared_library -Call an object method: - name: Call an object method - path: Call-an-object-method - url: Call_an_object_method -Canny edge detector: - name: Canny edge detector - path: Canny-edge-detector - url: Canny_edge_detector -Carmichael 3 strong pseudoprimes: - name: Carmichael 3 strong pseudoprimes - path: Carmichael-3-strong-pseudoprimes - url: Carmichael_3_strong_pseudoprimes -Case-sensitivity of identifiers: - name: Case-sensitivity of identifiers - path: Case-sensitivity-of-identifiers - url: Case-sensitivity_of_identifiers -Catalan numbers: - name: Catalan numbers - path: Catalan-numbers - url: Catalan_numbers -Catmull–Clark subdivision surface: - name: Catmull–Clark subdivision surface - path: Catmull-Clark-subdivision-surface - url: Catmull–Clark_subdivision_surface -Character codes: - name: Character codes - path: Character-codes - url: Character_codes -Character matching: - name: Character matching - path: Character-matching - url: Character_matching -Chat server: - name: Chat server - path: Chat-server - url: Chat_server -Check Machin-like formulas: - name: Check Machin-like formulas - path: Check-Machin-like-formulas - url: Check_Machin-like_formulas -Check that file exists: - name: Check that file exists - path: Check-that-file-exists - url: Check_that_file_exists -Checkpoint synchronization: - name: Checkpoint synchronization - path: Checkpoint-synchronization - url: Checkpoint_synchronization -Cholesky decomposition: - name: Cholesky decomposition - path: Cholesky-decomposition - url: Cholesky_decomposition -Classes: - name: Classes - path: Classes - url: Classes -Closest-pair problem: - name: Closest-pair problem - path: Closest-pair-problem - url: Closest-pair_problem -Collections: - name: Collections - path: Collections - url: Collections -Color of a screen pixel: - name: Color of a screen pixel - path: Color-of-a-screen-pixel - url: Color_of_a_screen_pixel -Color quantization: - name: Color quantization - path: Color-quantization - url: Color_quantization -Colour bars/Display: - name: Colour bars/Display - path: Colour-bars-Display - url: Colour_bars/Display -Colour pinstripe/Display: - name: Colour pinstripe/Display - path: Colour-pinstripe-Display - url: Colour_pinstripe/Display -Colour pinstripe/Printer: - name: Colour pinstripe/Printer - path: Colour-pinstripe-Printer - url: Colour_pinstripe/Printer -Combinations: - name: Combinations - path: Combinations - url: Combinations -Combinations with repetitions: - name: Combinations with repetitions - path: Combinations-with-repetitions - url: Combinations_with_repetitions -Command-line arguments: - name: Command-line arguments - path: Command-line-arguments - url: Command-line_arguments -Comments: - name: Comments - path: Comments - url: Comments -Compare sorting algorithms' performance: - name: Compare sorting algorithms' performance - path: Compare-sorting-algorithms-performance - url: Compare_sorting_algorithms'_performance -Compile-time calculation: - name: Compile-time calculation - path: Compile-time-calculation - url: Compile-time_calculation -Compound data type: - name: Compound data type - path: Compound-data-type - url: Compound_data_type -Concurrent computing: - name: Concurrent computing - path: Concurrent-computing - url: Concurrent_computing -Conditional structures: - name: Conditional structures - path: Conditional-structures - url: Conditional_structures -Constrained genericity: - name: Constrained genericity - path: Constrained-genericity - url: Constrained_genericity -Constrained random points on a circle: - name: Constrained random points on a circle - path: Constrained-random-points-on-a-circle - url: Constrained_random_points_on_a_circle -Continued fraction: - name: Continued fraction - path: Continued-fraction - url: Continued_fraction -Continued fraction/Arithmetic/Construct from rational number: - name: Continued fraction/Arithmetic/Construct from rational number - path: Continued-fraction-Arithmetic-Construct-from-rational-number - url: Continued_fraction/Arithmetic/Construct_from_rational_number -Continued fraction/Arithmetic/G(matrix NG, Contined Fraction N): - name: Continued fraction/Arithmetic/G(matrix NG, Contined Fraction N) - path: Continued-fraction-Arithmetic-G-matrix-NG,-Contined-Fraction-N- - url: Continued_fraction/Arithmetic/G(matrix_NG,_Contined_Fraction_N) -Continued fraction/Arithmetic/G(matrix NG, Contined Fraction N1, Contined Fraction N2): - name: Continued fraction/Arithmetic/G(matrix NG, Contined Fraction N1, Contined - Fraction N2) - path: Continued-fraction-Arithmetic-G-matrix-NG,-Contined-Fraction-N1,-Contined-Fraction-N2- - url: Continued_fraction/Arithmetic/G(matrix_NG,_Contined_Fraction_N1,_Contined_Fraction_N2) -Conway's Game of Life: - name: Conway's Game of Life - path: Conways-Game-of-Life - url: Conway's_Game_of_Life -Copy a string: - name: Copy a string - path: Copy-a-string - url: Copy_a_string -Count in factors: - name: Count in factors - path: Count-in-factors - url: Count_in_factors -Count in octal: - name: Count in octal - path: Count-in-octal - url: Count_in_octal -Count occurrences of a substring: - name: Count occurrences of a substring - path: Count-occurrences-of-a-substring - url: Count_occurrences_of_a_substring -Count the coins: - name: Count the coins - path: Count-the-coins - url: Count_the_coins -Create a file: - name: Create a file - path: Create-a-file - url: Create_a_file -Create a file on magnetic tape: - name: Create a file on magnetic tape - path: Create-a-file-on-magnetic-tape - url: Create_a_file_on_magnetic_tape -Create a two-dimensional array at runtime: - name: Create a two-dimensional array at runtime - path: Create-a-two-dimensional-array-at-runtime - url: Create_a_two-dimensional_array_at_runtime -Create an HTML table: - name: Create an HTML table - path: Create-an-HTML-table - url: Create_an_HTML_table -Create an object at a given address: - name: Create an object at a given address - path: Create-an-object-at-a-given-address - url: Create_an_object_at_a_given_address -Cut a rectangle: - name: Cut a rectangle - path: Cut-a-rectangle - url: Cut_a_rectangle -DNS query: - name: DNS query - path: DNS-query - url: DNS_query -Date format: - name: Date format - path: Date-format - url: Date_format -Date manipulation: - name: Date manipulation - path: Date-manipulation - url: Date_manipulation -Day of the week: - name: Day of the week - path: Day-of-the-week - url: Day_of_the_week -Deal cards for FreeCell: - name: Deal cards for FreeCell - path: Deal-cards-for-FreeCell - url: Deal_cards_for_FreeCell -Death Star: - name: Death Star - path: Death-Star - url: Death_Star -Deconvolution/1D: - name: Deconvolution/1D - path: Deconvolution-1D - url: Deconvolution/1D -Deconvolution/2D+: - name: Deconvolution/2D+ - path: Deconvolution-2D+ - url: Deconvolution/2D+ -Deepcopy: - name: Deepcopy - path: Deepcopy - url: Deepcopy -Define a primitive data type: - name: Define a primitive data type - path: Define-a-primitive-data-type - url: Define_a_primitive_data_type -Delegates: - name: Delegates - path: Delegates - url: Delegates -Delete a file: - name: Delete a file - path: Delete-a-file - url: Delete_a_file -Detect division by zero: - name: Detect division by zero - path: Detect-division-by-zero - url: Detect_division_by_zero -Determine if a string is numeric: - name: Determine if a string is numeric - path: Determine-if-a-string-is-numeric - url: Determine_if_a_string_is_numeric -Determine if only one instance is running: - name: Determine if only one instance is running - path: Determine-if-only-one-instance-is-running - url: Determine_if_only_one_instance_is_running -Digital root: - name: Digital root - path: Digital-root - url: Digital_root -Dinesman's multiple-dwelling problem: - name: Dinesman's multiple-dwelling problem - path: Dinesmans-multiple-dwelling-problem - url: Dinesman's_multiple-dwelling_problem -Dining philosophers: - name: Dining philosophers - path: Dining-philosophers - url: Dining_philosophers -Discordian date: - name: Discordian date - path: Discordian-date - url: Discordian_date -Distributed programming: - name: Distributed programming - path: Distributed-programming - url: Distributed_programming -Documentation: - name: Documentation - path: Documentation - url: Documentation -Dot product: - name: Dot product - path: Dot-product - url: Dot_product -Doubly-linked list/Definition: - name: Doubly-linked list/Definition - path: Doubly-linked-list-Definition - url: Doubly-linked_list/Definition -Doubly-linked list/Element definition: - name: Doubly-linked list/Element definition - path: Doubly-linked-list-Element-definition - url: Doubly-linked_list/Element_definition -Doubly-linked list/Element insertion: - name: Doubly-linked list/Element insertion - path: Doubly-linked-list-Element-insertion - url: Doubly-linked_list/Element_insertion -Doubly-linked list/Traversal: - name: Doubly-linked list/Traversal - path: Doubly-linked-list-Traversal - url: Doubly-linked_list/Traversal -Dragon curve: - name: Dragon curve - path: Dragon-curve - url: Dragon_curve -Draw a cuboid: - name: Draw a cuboid - path: Draw-a-cuboid - url: Draw_a_cuboid -Draw a sphere: - name: Draw a sphere - path: Draw-a-sphere - url: Draw_a_sphere -Dutch national flag problem: - name: Dutch national flag problem - path: Dutch-national-flag-problem - url: Dutch_national_flag_problem -Dynamic variable names: - name: Dynamic variable names - path: Dynamic-variable-names - url: Dynamic_variable_names -Echo server: - name: Echo server - path: Echo-server - url: Echo_server -Element-wise operations: - name: Element-wise operations - path: Element-wise-operations - url: Element-wise_operations -Empty directory: - name: Empty directory - path: Empty-directory - url: Empty_directory -Empty program: - name: Empty program - path: Empty-program - url: Empty_program -Empty string: - name: Empty string - path: Empty-string - url: Empty_string -Enforced immutability: - name: Enforced immutability - path: Enforced-immutability - url: Enforced_immutability -Entropy: - name: Entropy - path: Entropy - url: Entropy -Enumerations: - name: Enumerations - path: Enumerations - url: Enumerations -Environment variables: - name: Environment variables - path: Environment-variables - url: Environment_variables -Equilibrium index: - name: Equilibrium index - path: Equilibrium-index - url: Equilibrium_index -Ethiopian multiplication: - name: Ethiopian multiplication - path: Ethiopian-multiplication - url: Ethiopian_multiplication -Euler method: - name: Euler method - path: Euler-method - url: Euler_method -Evaluate binomial coefficients: - name: Evaluate binomial coefficients - path: Evaluate-binomial-coefficients - url: Evaluate_binomial_coefficients -Even or odd: - name: Even or odd - path: Even-or-odd - url: Even_or_odd -Events: - name: Events - path: Events - url: Events -Evolutionary algorithm: - name: Evolutionary algorithm - path: Evolutionary-algorithm - url: Evolutionary_algorithm -Exceptions: - name: Exceptions - path: Exceptions - url: Exceptions -Exceptions/Catch an exception thrown in a nested call: - name: Exceptions/Catch an exception thrown in a nested call - path: Exceptions-Catch-an-exception-thrown-in-a-nested-call - url: Exceptions/Catch_an_exception_thrown_in_a_nested_call -Executable library: - name: Executable library - path: Executable-library - url: Executable_library -Execute HQ9+: - name: Execute HQ9+ - path: Execute-HQ9+ - url: Execute_HQ9+ -Execute SNUSP: - name: Execute SNUSP - path: Execute-SNUSP - url: Execute_SNUSP -Execute a Markov algorithm: - name: Execute a Markov algorithm - path: Execute-a-Markov-algorithm - url: Execute_a_Markov_algorithm -Execute a system command: - name: Execute a system command - path: Execute-a-system-command - url: Execute_a_system_command -Exponentiation operator: - name: Exponentiation operator - path: Exponentiation-operator - url: Exponentiation_operator -Extend your language: - name: Extend your language - path: Extend-your-language - url: Extend_your_language -Extreme floating point values: - name: Extreme floating point values - path: Extreme-floating-point-values - url: Extreme_floating_point_values -Factorial: - name: Factorial - path: Factorial - url: Factorial -Factors of a Mersenne number: - name: Factors of a Mersenne number - path: Factors-of-a-Mersenne-number - url: Factors_of_a_Mersenne_number -Factors of an integer: - name: Factors of an integer - path: Factors-of-an-integer - url: Factors_of_an_integer -Fast Fourier transform: - name: Fast Fourier transform - path: Fast-Fourier-transform - url: Fast_Fourier_transform -Fibonacci n-step number sequences: - name: Fibonacci n-step number sequences - path: Fibonacci-n-step-number-sequences - url: Fibonacci_n-step_number_sequences -Fibonacci sequence: - name: Fibonacci sequence - path: Fibonacci-sequence - url: Fibonacci_sequence -File IO: - name: File IO - path: File-IO - url: File_IO -File modification time: - name: File modification time - path: File-modification-time - url: File_modification_time -File size: - name: File size - path: File-size - url: File_size -Filter: - name: Filter - path: Filter - url: Filter -Find common directory path: - name: Find common directory path - path: Find-common-directory-path - url: Find_common_directory_path -Find largest left truncatable prime in a given base: - name: Find largest left truncatable prime in a given base - path: Find-largest-left-truncatable-prime-in-a-given-base - url: Find_largest_left_truncatable_prime_in_a_given_base -Find limit of recursion: - name: Find limit of recursion - path: Find-limit-of-recursion - url: Find_limit_of_recursion -Find the missing permutation: - name: Find the missing permutation - path: Find-the-missing-permutation - url: Find_the_missing_permutation -First class environments: - name: First class environments - path: First-class-environments - url: First_class_environments -First-class functions: - name: First-class functions - path: First-class-functions - url: First-class_functions -First-class functions/Use numbers analogously: - name: First-class functions/Use numbers analogously - path: First-class-functions-Use-numbers-analogously - url: First-class_functions/Use_numbers_analogously -Five weekends: - name: Five weekends - path: Five-weekends - url: Five_weekends -FizzBuzz: - name: FizzBuzz - path: FizzBuzz - url: FizzBuzz -Flatten a list: - name: Flatten a list - path: Flatten-a-list - url: Flatten_a_list -Flow-control structures: - name: Flow-control structures - path: Flow-control-structures - url: Flow-control_structures -Floyd's triangle: - name: Floyd's triangle - path: Floyds-triangle - url: Floyd's_triangle -Forest fire: - name: Forest fire - path: Forest-fire - url: Forest_fire -Fork: - name: Fork - path: Fork - url: Fork -Formal power series: - name: Formal power series - path: Formal-power-series - url: Formal_power_series -Formatted numeric output: - name: Formatted numeric output - path: Formatted-numeric-output - url: Formatted_numeric_output -Forward difference: - name: Forward difference - path: Forward-difference - url: Forward_difference -Four bit adder: - name: Four bit adder - path: Four-bit-adder - url: Four_bit_adder -Fractal tree: - name: Fractal tree - path: Fractal-tree - url: Fractal_tree -Function composition: - name: Function composition - path: Function-composition - url: Function_composition -Function definition: - name: Function definition - path: Function-definition - url: Function_definition -Function frequency: - name: Function frequency - path: Function-frequency - url: Function_frequency -Function prototype: - name: Function prototype - path: Function-prototype - url: Function_prototype -GUI component interaction: - name: GUI component interaction - path: GUI-component-interaction - url: GUI_component_interaction -GUI enabling/disabling of controls: - name: GUI enabling/disabling of controls - path: GUI-enabling-disabling-of-controls - url: GUI_enabling/disabling_of_controls -GUI/Maximum window dimensions: - name: GUI/Maximum window dimensions - path: GUI-Maximum-window-dimensions - url: GUI/Maximum_window_dimensions -Galton box animation: - name: Galton box animation - path: Galton-box-animation - url: Galton_box_animation -Gamma function: - name: Gamma function - path: Gamma-function - url: Gamma_function -Generator/Exponential: - name: Generator/Exponential - path: Generator-Exponential - url: Generator/Exponential -Generic swap: - name: Generic swap - path: Generic-swap - url: Generic_swap -Globally replace text in several files: - name: Globally replace text in several files - path: Globally-replace-text-in-several-files - url: Globally_replace_text_in_several_files -Go Fish: - name: Go Fish - path: Go-Fish - url: Go_Fish -Gray code: - name: Gray code - path: Gray-code - url: Gray_code -Grayscale image: - name: Grayscale image - path: Grayscale-image - url: Grayscale_image -Greatest common divisor: - name: Greatest common divisor - path: Greatest-common-divisor - url: Greatest_common_divisor -Greatest element of a list: - name: Greatest element of a list - path: Greatest-element-of-a-list - url: Greatest_element_of_a_list -Greatest subsequential sum: - name: Greatest subsequential sum - path: Greatest-subsequential-sum - url: Greatest_subsequential_sum -Greyscale bars/Display: - name: Greyscale bars/Display - path: Greyscale-bars-Display - url: Greyscale_bars/Display -Guess the number: - name: Guess the number - path: Guess-the-number - url: Guess_the_number -Guess the number/With feedback: - name: Guess the number/With feedback - path: Guess-the-number-With-feedback - url: Guess_the_number/With_feedback -Guess the number/With feedback (player): - name: Guess the number/With feedback (player) - path: Guess-the-number-With-feedback--player- - url: Guess_the_number/With_feedback_(player) -HTTP: - name: HTTP - path: HTTP - url: HTTP -HTTPS: - name: HTTPS - path: HTTPS - url: HTTPS -HTTPS/Authenticated: - name: HTTPS/Authenticated - path: HTTPS-Authenticated - url: HTTPS/Authenticated -HTTPS/Client-authenticated: - name: HTTPS/Client-authenticated - path: HTTPS-Client-authenticated - url: HTTPS/Client-authenticated -Hailstone sequence: - name: Hailstone sequence - path: Hailstone-sequence - url: Hailstone_sequence -Hamming numbers: - name: Hamming numbers - path: Hamming-numbers - url: Hamming_numbers -Handle a signal: - name: Handle a signal - path: Handle-a-signal - url: Handle_a_signal -Happy numbers: - name: Happy numbers - path: Happy-numbers - url: Happy_numbers -Harshad or Niven series: - name: Harshad or Niven series - path: Harshad-or-Niven-series - url: Harshad_or_Niven_series -Hash from two arrays: - name: Hash from two arrays - path: Hash-from-two-arrays - url: Hash_from_two_arrays -Haversine formula: - name: Haversine formula - path: Haversine-formula - url: Haversine_formula -Hello world/Graphical: - name: Hello world/Graphical - path: Hello-world-Graphical - url: Hello_world/Graphical -Hello world/Line printer: - name: Hello world/Line printer - path: Hello-world-Line-printer - url: Hello_world/Line_printer -Hello world/Newline omission: - name: Hello world/Newline omission - path: Hello-world-Newline-omission - url: Hello_world/Newline_omission -Hello world/Standard error: - name: Hello world/Standard error - path: Hello-world-Standard-error - url: Hello_world/Standard_error -Hello world/Text: - name: Hello world/Text - path: Hello-world-Text - url: Hello_world/Text -Hello world/Web server: - name: Hello world/Web server - path: Hello-world-Web-server - url: Hello_world/Web_server -Here document: - name: Here document - path: Here-document - url: Here_document -Higher-order functions: - name: Higher-order functions - path: Higher-order-functions - url: Higher-order_functions -History variables: - name: History variables - path: History-variables - url: History_variables -Hofstadter Figure-Figure sequences: - name: Hofstadter Figure-Figure sequences - path: Hofstadter-Figure-Figure-sequences - url: Hofstadter_Figure-Figure_sequences -Hofstadter Q sequence: - name: Hofstadter Q sequence - path: Hofstadter-Q-sequence - url: Hofstadter_Q_sequence -Hofstadter-Conway $10,000 sequence: - name: Hofstadter-Conway $10,000 sequence - path: Hofstadter-Conway-$10,000-sequence - url: Hofstadter-Conway_$10,000_sequence -Holidays related to Easter: - name: Holidays related to Easter - path: Holidays-related-to-Easter - url: Holidays_related_to_Easter -Honeycombs: - name: Honeycombs - path: Honeycombs - url: Honeycombs -Horizontal sundial calculations: - name: Horizontal sundial calculations - path: Horizontal-sundial-calculations - url: Horizontal_sundial_calculations -Horner's rule for polynomial evaluation: - name: Horner's rule for polynomial evaluation - path: Horners-rule-for-polynomial-evaluation - url: Horner's_rule_for_polynomial_evaluation -Host introspection: - name: Host introspection - path: Host-introspection - url: Host_introspection -Hostname: - name: Hostname - path: Hostname - url: Hostname -Hough transform: - name: Hough transform - path: Hough-transform - url: Hough_transform -Huffman coding: - name: Huffman coding - path: Huffman-coding - url: Huffman_coding -I before E except after C: - name: I before E except after C - path: I-before-E-except-after-C - url: I_before_E_except_after_C -Identity matrix: - name: Identity matrix - path: Identity-matrix - url: Identity_matrix -Image convolution: - name: Image convolution - path: Image-convolution - url: Image_convolution -Image noise: - name: Image noise - path: Image-noise - url: Image_noise -Include a file: - name: Include a file - path: Include-a-file - url: Include_a_file -Increment a numerical string: - name: Increment a numerical string - path: Increment-a-numerical-string - url: Increment_a_numerical_string -'Infinity': - name: 'Infinity' - path: 'Infinity' - url: 'Infinity' -Inheritance/Multiple: - name: Inheritance/Multiple - path: Inheritance-Multiple - url: Inheritance/Multiple -Inheritance/Single: - name: Inheritance/Single - path: Inheritance-Single - url: Inheritance/Single -Input loop: - name: Input loop - path: Input-loop - url: Input_loop -Integer comparison: - name: Integer comparison - path: Integer-comparison - url: Integer_comparison -Integer sequence: - name: Integer sequence - path: Integer-sequence - url: Integer_sequence -Interactive programming: - name: Interactive programming - path: Interactive-programming - url: Interactive_programming -Introspection: - name: Introspection - path: Introspection - url: Introspection -Inverted index: - name: Inverted index - path: Inverted-index - url: Inverted_index -Inverted syntax: - name: Inverted syntax - path: Inverted-syntax - url: Inverted_syntax -JSON: - name: JSON - path: JSON - url: JSON -Jensen's Device: - name: Jensen's Device - path: Jensens-Device - url: Jensen's_Device -Josephus problem: - name: Josephus problem - path: Josephus-problem - url: Josephus_problem -Joystick position: - name: Joystick position - path: Joystick-position - url: Joystick_position -Jump anywhere: - name: Jump anywhere - path: Jump-anywhere - url: Jump_anywhere -K-means++ clustering: - name: K-means++ clustering - path: K-means++-clustering - url: K-means++_clustering -Kaprekar numbers: - name: Kaprekar numbers - path: Kaprekar-numbers - url: Kaprekar_numbers -Keyboard input/Flush the keyboard buffer: - name: Keyboard input/Flush the keyboard buffer - path: Keyboard-input-Flush-the-keyboard-buffer - url: Keyboard_input/Flush_the_keyboard_buffer -Keyboard input/Keypress check: - name: Keyboard input/Keypress check - path: Keyboard-input-Keypress-check - url: Keyboard_input/Keypress_check -Keyboard input/Obtain a Y or N response: - name: Keyboard input/Obtain a Y or N response - path: Keyboard-input-Obtain-a-Y-or-N-response - url: Keyboard_input/Obtain_a_Y_or_N_response -Keyboard macros: - name: Keyboard macros - path: Keyboard-macros - url: Keyboard_macros -Knapsack problem/0-1: - name: Knapsack problem/0-1 - path: Knapsack-problem-0-1 - url: Knapsack_problem/0-1 -Knapsack problem/Bounded: - name: Knapsack problem/Bounded - path: Knapsack-problem-Bounded - url: Knapsack_problem/Bounded -Knapsack problem/Continuous: - name: Knapsack problem/Continuous - path: Knapsack-problem-Continuous - url: Knapsack_problem/Continuous -Knapsack problem/Unbounded: - name: Knapsack problem/Unbounded - path: Knapsack-problem-Unbounded - url: Knapsack_problem/Unbounded -Knight's tour: - name: Knight's tour - path: Knights-tour - url: Knight's_tour -Knuth shuffle: - name: Knuth shuffle - path: Knuth-shuffle - url: Knuth_shuffle -Knuth's algorithm S: - name: Knuth's algorithm S - path: Knuths-algorithm-S - url: Knuth's_algorithm_S -LU decomposition: - name: LU decomposition - path: LU-decomposition - url: LU_decomposition -LZW compression: - name: LZW compression - path: LZW-compression - url: LZW_compression -Langton's ant: - name: Langton's ant - path: Langtons-ant - url: Langton's_ant -Largest int from concatenated ints: - name: Largest int from concatenated ints - path: Largest-int-from-concatenated-ints - url: Largest_int_from_concatenated_ints -Last Friday of each month: - name: Last Friday of each month - path: Last-Friday-of-each-month - url: Last_Friday_of_each_month -Last letter-first letter: - name: Last letter-first letter - path: Last-letter-first-letter - url: Last_letter-first_letter -Leap year: - name: Leap year - path: Leap-year - url: Leap_year -Least common multiple: - name: Least common multiple - path: Least-common-multiple - url: Least_common_multiple -Letter frequency: - name: Letter frequency - path: Letter-frequency - url: Letter_frequency -Levenshtein distance: - name: Levenshtein distance - path: Levenshtein-distance - url: Levenshtein_distance -Linear congruential generator: - name: Linear congruential generator - path: Linear-congruential-generator - url: Linear_congruential_generator -List comprehensions: - name: List comprehensions - path: List-comprehensions - url: List_comprehensions -Literals/Floating point: - name: Literals/Floating point - path: Literals-Floating-point - url: Literals/Floating_point -Literals/Integer: - name: Literals/Integer - path: Literals-Integer - url: Literals/Integer -Literals/String: - name: Literals/String - path: Literals-String - url: Literals/String -Logical operations: - name: Logical operations - path: Logical-operations - url: Logical_operations -Long multiplication: - name: Long multiplication - path: Long-multiplication - url: Long_multiplication -Longest common subsequence: - name: Longest common subsequence - path: Longest-common-subsequence - url: Longest_common_subsequence -Longest string challenge: - name: Longest string challenge - path: Longest-string-challenge - url: Longest_string_challenge -Look-and-say sequence: - name: Look-and-say sequence - path: Look-and-say-sequence - url: Look-and-say_sequence -Loop over multiple arrays simultaneously: - name: Loop over multiple arrays simultaneously - path: Loop-over-multiple-arrays-simultaneously - url: Loop_over_multiple_arrays_simultaneously -Loops/Break: - name: Loops/Break - path: Loops-Break - url: Loops/Break -Loops/Continue: - name: Loops/Continue - path: Loops-Continue - url: Loops/Continue -Loops/Do-while: - name: Loops/Do-while - path: Loops-Do-while - url: Loops/Do-while -Loops/Downward for: - name: Loops/Downward for - path: Loops-Downward-for - url: Loops/Downward_for -Loops/For: - name: Loops/For - path: Loops-For - url: Loops/For -Loops/For with a specified step: - name: Loops/For with a specified step - path: Loops-For-with-a-specified-step - url: Loops/For_with_a_specified_step -Loops/Foreach: - name: Loops/Foreach - path: Loops-Foreach - url: Loops/Foreach -Loops/Infinite: - name: Loops/Infinite - path: Loops-Infinite - url: Loops/Infinite -Loops/N plus one half: - name: Loops/N plus one half - path: Loops-N-plus-one-half - url: Loops/N_plus_one_half -Loops/Nested: - name: Loops/Nested - path: Loops-Nested - url: Loops/Nested -Loops/While: - name: Loops/While - path: Loops-While - url: Loops/While -Lucas-Lehmer test: - name: Lucas-Lehmer test - path: Lucas-Lehmer-test - url: Lucas-Lehmer_test -Luhn test of credit card numbers: - name: Luhn test of credit card numbers - path: Luhn-test-of-credit-card-numbers - url: Luhn_test_of_credit_card_numbers -MD4: - name: MD4 - path: MD4 - url: MD4 -MD5: - name: MD5 - path: MD5 - url: MD5 -MD5/Implementation: - name: MD5/Implementation - path: MD5-Implementation - url: MD5/Implementation -Mad Libs: - name: Mad Libs - path: Mad-Libs - url: Mad_Libs -Main step of GOST 28147-89: - name: Main step of GOST 28147-89 - path: Main-step-of-GOST-28147-89 - url: Main_step_of_GOST_28147-89 -Man or boy test: - name: Man or boy test - path: Man-or-boy-test - url: Man_or_boy_test -Mandelbrot set: - name: Mandelbrot set - path: Mandelbrot-set - url: Mandelbrot_set -Map range: - name: Map range - path: Map-range - url: Map_range -Matrix arithmetic: - name: Matrix arithmetic - path: Matrix-arithmetic - url: Matrix_arithmetic -Matrix multiplication: - name: Matrix multiplication - path: Matrix-multiplication - url: Matrix_multiplication -Matrix transposition: - name: Matrix transposition - path: Matrix-transposition - url: Matrix_transposition -Matrix-exponentiation operator: - name: Matrix-exponentiation operator - path: Matrix-exponentiation-operator - url: Matrix-exponentiation_operator -Maze generation: - name: Maze generation - path: Maze-generation - url: Maze_generation -Maze solving: - name: Maze solving - path: Maze-solving - url: Maze_solving -Median filter: - name: Median filter - path: Median-filter - url: Median_filter -Memory allocation: - name: Memory allocation - path: Memory-allocation - url: Memory_allocation -Memory layout of a data structure: - name: Memory layout of a data structure - path: Memory-layout-of-a-data-structure - url: Memory_layout_of_a_data_structure -Menu: - name: Menu - path: Menu - url: Menu -Metaprogramming: - name: Metaprogramming - path: Metaprogramming - url: Metaprogramming -Metered concurrency: - name: Metered concurrency - path: Metered-concurrency - url: Metered_concurrency -Metronome: - name: Metronome - path: Metronome - url: Metronome -Middle three digits: - name: Middle three digits - path: Middle-three-digits - url: Middle_three_digits -Miller-Rabin primality test: - name: Miller-Rabin primality test - path: Miller-Rabin-primality-test - url: Miller-Rabin_primality_test -Minesweeper game: - name: Minesweeper game - path: Minesweeper-game - url: Minesweeper_game -Modular exponentiation: - name: Modular exponentiation - path: Modular-exponentiation - url: Modular_exponentiation -Modular inverse: - name: Modular inverse - path: Modular-inverse - url: Modular_inverse -Monte Carlo methods: - name: Monte Carlo methods - path: Monte-Carlo-methods - url: Monte_Carlo_methods -Monty Hall problem: - name: Monty Hall problem - path: Monty-Hall-problem - url: Monty_Hall_problem -Morse code: - name: Morse code - path: Morse-code - url: Morse_code -Mouse position: - name: Mouse position - path: Mouse-position - url: Mouse_position -Multifactorial: - name: Multifactorial - path: Multifactorial - url: Multifactorial -Multiple distinct objects: - name: Multiple distinct objects - path: Multiple-distinct-objects - url: Multiple_distinct_objects -Multiple regression: - name: Multiple regression - path: Multiple-regression - url: Multiple_regression -Multiplication tables: - name: Multiplication tables - path: Multiplication-tables - url: Multiplication_tables -Multiplicative order: - name: Multiplicative order - path: Multiplicative-order - url: Multiplicative_order -Multisplit: - name: Multisplit - path: Multisplit - url: Multisplit -Mutex: - name: Mutex - path: Mutex - url: Mutex -Mutual recursion: - name: Mutual recursion - path: Mutual-recursion - url: Mutual_recursion -N-queens problem: - name: N-queens problem - path: N-queens-problem - url: N-queens_problem -Named parameters: - name: Named parameters - path: Named-parameters - url: Named_parameters -Narcissist: - name: Narcissist - path: Narcissist - url: Narcissist -Nautical bell: - name: Nautical bell - path: Nautical-bell - url: Nautical_bell -Non-continuous subsequences: - name: Non-continuous subsequences - path: Non-continuous-subsequences - url: Non-continuous_subsequences -Non-decimal radices/Convert: - name: Non-decimal radices/Convert - path: Non-decimal-radices-Convert - url: Non-decimal_radices/Convert -Non-decimal radices/Input: - name: Non-decimal radices/Input - path: Non-decimal-radices-Input - url: Non-decimal_radices/Input -Non-decimal radices/Output: - name: Non-decimal radices/Output - path: Non-decimal-radices-Output - url: Non-decimal_radices/Output -Nth root: - name: Nth root - path: Nth-root - url: Nth_root -Null object: - name: Null object - path: Null-object - url: Null_object -Number names: - name: Number names - path: Number-names - url: Number_names -Number reversal game: - name: Number reversal game - path: Number-reversal-game - url: Number_reversal_game -Numeric error propagation: - name: Numeric error propagation - path: Numeric-error-propagation - url: Numeric_error_propagation -Numerical integration: - name: Numerical integration - path: Numerical-integration - url: Numerical_integration -Numerical integration/Gauss-Legendre Quadrature: - name: Numerical integration/Gauss-Legendre Quadrature - path: Numerical-integration-Gauss-Legendre-Quadrature - url: Numerical_integration/Gauss-Legendre_Quadrature -OLE Automation: - name: OLE Automation - path: OLE-Automation - url: OLE_Automation -Object serialization: - name: Object serialization - path: Object-serialization - url: Object_serialization -One of n lines in a file: - name: One of n lines in a file - path: One-of-n-lines-in-a-file - url: One_of_n_lines_in_a_file -One-dimensional cellular automata: - name: One-dimensional cellular automata - path: One-dimensional-cellular-automata - url: One-dimensional_cellular_automata -OpenGL: - name: OpenGL - path: OpenGL - url: OpenGL -Operator precedence: - name: Operator precedence - path: Operator-precedence - url: Operator_precedence -Optional parameters: - name: Optional parameters - path: Optional-parameters - url: Optional_parameters -Order two numerical lists: - name: Order two numerical lists - path: Order-two-numerical-lists - url: Order_two_numerical_lists -Ordered Partitions: - name: Ordered Partitions - path: Ordered-Partitions - url: Ordered_Partitions -Ordered words: - name: Ordered words - path: Ordered-words - url: Ordered_words -Palindrome detection: - name: Palindrome detection - path: Palindrome-detection - url: Palindrome_detection -Pangram checker: - name: Pangram checker - path: Pangram-checker - url: Pangram_checker -Parallel calculations: - name: Parallel calculations - path: Parallel-calculations - url: Parallel_calculations -Parametric polymorphism: - name: Parametric polymorphism - path: Parametric-polymorphism - url: Parametric_polymorphism -Parametrized SQL statement: - name: Parametrized SQL statement - path: Parametrized-SQL-statement - url: Parametrized_SQL_statement -Parsing/RPN calculator algorithm: - name: Parsing/RPN calculator algorithm - path: Parsing-RPN-calculator-algorithm - url: Parsing/RPN_calculator_algorithm -Parsing/RPN to infix conversion: - name: Parsing/RPN to infix conversion - path: Parsing-RPN-to-infix-conversion - url: Parsing/RPN_to_infix_conversion -Parsing/Shunting-yard algorithm: - name: Parsing/Shunting-yard algorithm - path: Parsing-Shunting-yard-algorithm - url: Parsing/Shunting-yard_algorithm -Partial function application: - name: Partial function application - path: Partial-function-application - url: Partial_function_application -Pascal's triangle: - name: Pascal's triangle - path: Pascals-triangle - url: Pascal's_triangle -Pascal's triangle/Puzzle: - name: Pascal's triangle/Puzzle - path: Pascals-triangle-Puzzle - url: Pascal's_triangle/Puzzle -Pattern matching: - name: Pattern matching - path: Pattern-matching - url: Pattern_matching -Percentage difference between images: - name: Percentage difference between images - path: Percentage-difference-between-images - url: Percentage_difference_between_images -Perfect numbers: - name: Perfect numbers - path: Perfect-numbers - url: Perfect_numbers -Permutation test: - name: Permutation test - path: Permutation-test - url: Permutation_test -Permutations: - name: Permutations - path: Permutations - url: Permutations -Permutations by swapping: - name: Permutations by swapping - path: Permutations-by-swapping - url: Permutations_by_swapping -Permutations/Derangements: - name: Permutations/Derangements - path: Permutations-Derangements - url: Permutations/Derangements -Pi: - name: Pi - path: Pi - url: Pi -Pick random element: - name: Pick random element - path: Pick-random-element - url: Pick_random_element -Pig the dice game: - name: Pig the dice game - path: Pig-the-dice-game - url: Pig_the_dice_game -Pig the dice game/Player: - name: Pig the dice game/Player - path: Pig-the-dice-game-Player - url: Pig_the_dice_game/Player -Pinstripe/Display: - name: Pinstripe/Display - path: Pinstripe-Display - url: Pinstripe/Display -Pinstripe/Printer: - name: Pinstripe/Printer - path: Pinstripe-Printer - url: Pinstripe/Printer -Play recorded sounds: - name: Play recorded sounds - path: Play-recorded-sounds - url: Play_recorded_sounds -Playing cards: - name: Playing cards - path: Playing-cards - url: Playing_cards -Plot coordinate pairs: - name: Plot coordinate pairs - path: Plot-coordinate-pairs - url: Plot_coordinate_pairs -Pointers and references: - name: Pointers and references - path: Pointers-and-references - url: Pointers_and_references -Polymorphic copy: - name: Polymorphic copy - path: Polymorphic-copy - url: Polymorphic_copy -Polymorphism: - name: Polymorphism - path: Polymorphism - url: Polymorphism -Polynomial long division: - name: Polynomial long division - path: Polynomial-long-division - url: Polynomial_long_division -Polynomial regression: - name: Polynomial regression - path: Polynomial-regression - url: Polynomial_regression -Power set: - name: Power set - path: Power-set - url: Power_set -Pragmatic directives: - name: Pragmatic directives - path: Pragmatic-directives - url: Pragmatic_directives -Price fraction: - name: Price fraction - path: Price-fraction - url: Price_fraction -Primality by trial division: - name: Primality by trial division - path: Primality-by-trial-division - url: Primality_by_trial_division -Prime decomposition: - name: Prime decomposition - path: Prime-decomposition - url: Prime_decomposition -Priority queue: - name: Priority queue - path: Priority-queue - url: Priority_queue -Probabilistic choice: - name: Probabilistic choice - path: Probabilistic-choice - url: Probabilistic_choice -Problem of Apollonius: - name: Problem of Apollonius - path: Problem-of-Apollonius - url: Problem_of_Apollonius -Program name: - name: Program name - path: Program-name - url: Program_name -Program termination: - name: Program termination - path: Program-termination - url: Program_termination -Pythagorean triples: - name: Pythagorean triples - path: Pythagorean-triples - url: Pythagorean_triples -QR decomposition: - name: QR decomposition - path: QR-decomposition - url: QR_decomposition -Quaternion type: - name: Quaternion type - path: Quaternion-type - url: Quaternion_type -Queue/Definition: - name: Queue/Definition - path: Queue-Definition - url: Queue/Definition -Queue/Usage: - name: Queue/Usage - path: Queue-Usage - url: Queue/Usage -Quine: - name: Quine - path: Quine - url: Quine -RCRPG: - name: RCRPG - path: RCRPG - url: RCRPG -RIPEMD-160: - name: RIPEMD-160 - path: RIPEMD-160 - url: RIPEMD-160 -Random number generator (device): - name: Random number generator (device) - path: Random-number-generator--device- - url: Random_number_generator_(device) -Random number generator (included): - name: Random number generator (included) - path: Random-number-generator--included- - url: Random_number_generator_(included) -Random numbers: - name: Random numbers - path: Random-numbers - url: Random_numbers -Range expansion: - name: Range expansion - path: Range-expansion - url: Range_expansion -Range extraction: - name: Range extraction - path: Range-extraction - url: Range_extraction -Rate counter: - name: Rate counter - path: Rate-counter - url: Rate_counter -Ray-casting algorithm: - name: Ray-casting algorithm - path: Ray-casting-algorithm - url: Ray-casting_algorithm -Read a configuration file: - name: Read a configuration file - path: Read-a-configuration-file - url: Read_a_configuration_file -Read a file line by line: - name: Read a file line by line - path: Read-a-file-line-by-line - url: Read_a_file_line_by_line -Read a specific line from a file: - name: Read a specific line from a file - path: Read-a-specific-line-from-a-file - url: Read_a_specific_line_from_a_file -Read entire file: - name: Read entire file - path: Read-entire-file - url: Read_entire_file -Real constants and functions: - name: Real constants and functions - path: Real-constants-and-functions - url: Real_constants_and_functions -Record sound: - name: Record sound - path: Record-sound - url: Record_sound -Reduced row echelon form: - name: Reduced row echelon form - path: Reduced-row-echelon-form - url: Reduced_row_echelon_form -Regular expressions: - name: Regular expressions - path: Regular-expressions - url: Regular_expressions -Remove duplicate elements: - name: Remove duplicate elements - path: Remove-duplicate-elements - url: Remove_duplicate_elements -Remove lines from a file: - name: Remove lines from a file - path: Remove-lines-from-a-file - url: Remove_lines_from_a_file -Rename a file: - name: Rename a file - path: Rename-a-file - url: Rename_a_file -Rendezvous: - name: Rendezvous - path: Rendezvous - url: Rendezvous -Repeat a string: - name: Repeat a string - path: Repeat-a-string - url: Repeat_a_string -Resistor mesh: - name: Resistor mesh - path: Resistor-mesh - url: Resistor_mesh -Respond to an unknown method call: - name: Respond to an unknown method call - path: Respond-to-an-unknown-method-call - url: Respond_to_an_unknown_method_call -Return multiple values: - name: Return multiple values - path: Return-multiple-values - url: Return_multiple_values -Reverse a string: - name: Reverse a string - path: Reverse-a-string - url: Reverse_a_string -Rock-paper-scissors: - name: Rock-paper-scissors - path: Rock-paper-scissors - url: Rock-paper-scissors -Roman numerals/Decode: - name: Roman numerals/Decode - path: Roman-numerals-Decode - url: Roman_numerals/Decode -Roman numerals/Encode: - name: Roman numerals/Encode - path: Roman-numerals-Encode - url: Roman_numerals/Encode -Roots of a function: - name: Roots of a function - path: Roots-of-a-function - url: Roots_of_a_function -Roots of a quadratic function: - name: Roots of a quadratic function - path: Roots-of-a-quadratic-function - url: Roots_of_a_quadratic_function -Roots of unity: - name: Roots of unity - path: Roots-of-unity - url: Roots_of_unity -Rosetta Code/Count examples: - name: Rosetta Code/Count examples - path: Rosetta-Code-Count-examples - url: Rosetta_Code/Count_examples -Rosetta Code/Find unimplemented tasks: - name: Rosetta Code/Find unimplemented tasks - path: Rosetta-Code-Find-unimplemented-tasks - url: Rosetta_Code/Find_unimplemented_tasks -Rosetta Code/Fix code tags: - name: Rosetta Code/Fix code tags - path: Rosetta-Code-Fix-code-tags - url: Rosetta_Code/Fix_code_tags -Rosetta Code/Rank languages by popularity: - name: Rosetta Code/Rank languages by popularity - path: Rosetta-Code-Rank-languages-by-popularity - url: Rosetta_Code/Rank_languages_by_popularity -Rot-13: - name: Rot-13 - path: Rot-13 - url: Rot-13 -Run-length encoding: - name: Run-length encoding - path: Run-length-encoding - url: Run-length_encoding -Runtime evaluation: - name: Runtime evaluation - path: Runtime-evaluation - url: Runtime_evaluation -Runtime evaluation/In an environment: - name: Runtime evaluation/In an environment - path: Runtime-evaluation-In-an-environment - url: Runtime_evaluation/In_an_environment -S-Expressions: - name: S-Expressions - path: S-Expressions - url: S-Expressions -SEDOLs: - name: SEDOLs - path: SEDOLs - url: SEDOLs -SHA-1: - name: SHA-1 - path: SHA-1 - url: SHA-1 -SHA-256: - name: SHA-256 - path: SHA-256 - url: SHA-256 -SOAP: - name: SOAP - path: SOAP - url: SOAP -SQL-based authentication: - name: SQL-based authentication - path: SQL-based-authentication - url: SQL-based_authentication -Safe addition: - name: Safe addition - path: Safe-addition - url: Safe_addition -Same Fringe: - name: Same Fringe - path: Same-Fringe - url: Same_Fringe -Scope modifiers: - name: Scope modifiers - path: Scope-modifiers - url: Scope_modifiers -Scope/Function names and labels: - name: Scope/Function names and labels - path: Scope-Function-names-and-labels - url: Scope/Function_names_and_labels -Search a list: - name: Search a list - path: Search-a-list - url: Search_a_list -Secure temporary file: - name: Secure temporary file - path: Secure-temporary-file - url: Secure_temporary_file -Self-describing numbers: - name: Self-describing numbers - path: Self-describing-numbers - url: Self-describing_numbers -Self-referential sequence: - name: Self-referential sequence - path: Self-referential-sequence - url: Self-referential_sequence -Semordnilap: - name: Semordnilap - path: Semordnilap - url: Semordnilap -Send an unknown method call: - name: Send an unknown method call - path: Send-an-unknown-method-call - url: Send_an_unknown_method_call -Send email: - name: Send email - path: Send-email - url: Send_email -Sequence of non-squares: - name: Sequence of non-squares - path: Sequence-of-non-squares - url: Sequence_of_non-squares -Set: - name: Set - path: Set - url: Set -Set consolidation: - name: Set consolidation - path: Set-consolidation - url: Set_consolidation -Set of real numbers: - name: Set of real numbers - path: Set-of-real-numbers - url: Set_of_real_numbers -Set puzzle: - name: Set puzzle - path: Set-puzzle - url: Set_puzzle -Seven-sided dice from five-sided dice: - name: Seven-sided dice from five-sided dice - path: Seven-sided-dice-from-five-sided-dice - url: Seven-sided_dice_from_five-sided_dice -Shell one-liner: - name: Shell one-liner - path: Shell-one-liner - url: Shell_one-liner -Short-circuit evaluation: - name: Short-circuit evaluation - path: Short-circuit-evaluation - url: Short-circuit_evaluation -Show the epoch: - name: Show the epoch - path: Show-the-epoch - url: Show_the_epoch -Sierpinski carpet: - name: Sierpinski carpet - path: Sierpinski-carpet - url: Sierpinski_carpet -Sierpinski triangle: - name: Sierpinski triangle - path: Sierpinski-triangle - url: Sierpinski_triangle -Sierpinski triangle/Graphical: - name: Sierpinski triangle/Graphical - path: Sierpinski-triangle-Graphical - url: Sierpinski_triangle/Graphical -Sieve of Eratosthenes: - name: Sieve of Eratosthenes - path: Sieve-of-Eratosthenes - url: Sieve_of_Eratosthenes -Simple database: - name: Simple database - path: Simple-database - url: Simple_database -Simple windowed application: - name: Simple windowed application - path: Simple-windowed-application - url: Simple_windowed_application -Simulate input/Keyboard: - name: Simulate input/Keyboard - path: Simulate-input-Keyboard - url: Simulate_input/Keyboard -Simulate input/Mouse: - name: Simulate input/Mouse - path: Simulate-input-Mouse - url: Simulate_input/Mouse -Singleton: - name: Singleton - path: Singleton - url: Singleton -Singly-linked list/Element definition: - name: Singly-linked list/Element definition - path: Singly-linked-list-Element-definition - url: Singly-linked_list/Element_definition -Singly-linked list/Element insertion: - name: Singly-linked list/Element insertion - path: Singly-linked-list-Element-insertion - url: Singly-linked_list/Element_insertion -Singly-linked list/Traversal: - name: Singly-linked list/Traversal - path: Singly-linked-list-Traversal - url: Singly-linked_list/Traversal -Sleep: - name: Sleep - path: Sleep - url: Sleep -Sockets: - name: Sockets - path: Sockets - url: Sockets -Sokoban: - name: Sokoban - path: Sokoban - url: Sokoban -Solve a Hidato puzzle: - name: Solve a Hidato puzzle - path: Solve-a-Hidato-puzzle - url: Solve_a_Hidato_puzzle -Sort an array of composite structures: - name: Sort an array of composite structures - path: Sort-an-array-of-composite-structures - url: Sort_an_array_of_composite_structures -Sort an integer array: - name: Sort an integer array - path: Sort-an-integer-array - url: Sort_an_integer_array -Sort disjoint sublist: - name: Sort disjoint sublist - path: Sort-disjoint-sublist - url: Sort_disjoint_sublist -Sort stability: - name: Sort stability - path: Sort-stability - url: Sort_stability -Sort using a custom comparator: - name: Sort using a custom comparator - path: Sort-using-a-custom-comparator - url: Sort_using_a_custom_comparator -Sorting algorithms/Bead sort: - name: Sorting algorithms/Bead sort - path: Sorting-algorithms-Bead-sort - url: Sorting_algorithms/Bead_sort -Sorting algorithms/Bogosort: - name: Sorting algorithms/Bogosort - path: Sorting-algorithms-Bogosort - url: Sorting_algorithms/Bogosort -Sorting algorithms/Bubble sort: - name: Sorting algorithms/Bubble sort - path: Sorting-algorithms-Bubble-sort - url: Sorting_algorithms/Bubble_sort -Sorting algorithms/Cocktail sort: - name: Sorting algorithms/Cocktail sort - path: Sorting-algorithms-Cocktail-sort - url: Sorting_algorithms/Cocktail_sort -Sorting algorithms/Comb sort: - name: Sorting algorithms/Comb sort - path: Sorting-algorithms-Comb-sort - url: Sorting_algorithms/Comb_sort -Sorting algorithms/Counting sort: - name: Sorting algorithms/Counting sort - path: Sorting-algorithms-Counting-sort - url: Sorting_algorithms/Counting_sort -Sorting algorithms/Gnome sort: - name: Sorting algorithms/Gnome sort - path: Sorting-algorithms-Gnome-sort - url: Sorting_algorithms/Gnome_sort -Sorting algorithms/Heapsort: - name: Sorting algorithms/Heapsort - path: Sorting-algorithms-Heapsort - url: Sorting_algorithms/Heapsort -Sorting algorithms/Insertion sort: - name: Sorting algorithms/Insertion sort - path: Sorting-algorithms-Insertion-sort - url: Sorting_algorithms/Insertion_sort -Sorting algorithms/Merge sort: - name: Sorting algorithms/Merge sort - path: Sorting-algorithms-Merge-sort - url: Sorting_algorithms/Merge_sort -Sorting algorithms/Pancake sort: - name: Sorting algorithms/Pancake sort - path: Sorting-algorithms-Pancake-sort - url: Sorting_algorithms/Pancake_sort -Sorting algorithms/Permutation sort: - name: Sorting algorithms/Permutation sort - path: Sorting-algorithms-Permutation-sort - url: Sorting_algorithms/Permutation_sort -Sorting algorithms/Quicksort: - name: Sorting algorithms/Quicksort - path: Sorting-algorithms-Quicksort - url: Sorting_algorithms/Quicksort -Sorting algorithms/Radix sort: - name: Sorting algorithms/Radix sort - path: Sorting-algorithms-Radix-sort - url: Sorting_algorithms/Radix_sort -Sorting algorithms/Selection sort: - name: Sorting algorithms/Selection sort - path: Sorting-algorithms-Selection-sort - url: Sorting_algorithms/Selection_sort -Sorting algorithms/Shell sort: - name: Sorting algorithms/Shell sort - path: Sorting-algorithms-Shell-sort - url: Sorting_algorithms/Shell_sort -Sorting algorithms/Sleep sort: - name: Sorting algorithms/Sleep sort - path: Sorting-algorithms-Sleep-sort - url: Sorting_algorithms/Sleep_sort -Sorting algorithms/Stooge sort: - name: Sorting algorithms/Stooge sort - path: Sorting-algorithms-Stooge-sort - url: Sorting_algorithms/Stooge_sort -Sorting algorithms/Strand sort: - name: Sorting algorithms/Strand sort - path: Sorting-algorithms-Strand-sort - url: Sorting_algorithms/Strand_sort -Soundex: - name: Soundex - path: Soundex - url: Soundex -Special characters: - name: Special characters - path: Special-characters - url: Special_characters -Special variables: - name: Special variables - path: Special-variables - url: Special_variables -Speech synthesis: - name: Speech synthesis - path: Speech-synthesis - url: Speech_synthesis -Spiral matrix: - name: Spiral matrix - path: Spiral-matrix - url: Spiral_matrix -Stable marriage problem: - name: Stable marriage problem - path: Stable-marriage-problem - url: Stable_marriage_problem -Stack: - name: Stack - path: Stack - url: Stack -Stack traces: - name: Stack traces - path: Stack-traces - url: Stack_traces -Stair-climbing puzzle: - name: Stair-climbing puzzle - path: Stair-climbing-puzzle - url: Stair-climbing_puzzle -Standard deviation: - name: Standard deviation - path: Standard-deviation - url: Standard_deviation -Start from a main routine: - name: Start from a main routine - path: Start-from-a-main-routine - url: Start_from_a_main_routine -Stem-and-leaf plot: - name: Stem-and-leaf plot - path: Stem-and-leaf-plot - url: Stem-and-leaf_plot -String case: - name: String case - path: String-case - url: String_case -String comparison: - name: String comparison - path: String-comparison - url: String_comparison -String concatenation: - name: String concatenation - path: String-concatenation - url: String_concatenation -String interpolation (included): - name: String interpolation (included) - path: String-interpolation--included- - url: String_interpolation_(included) -String length: - name: String length - path: String-length - url: String_length -Strip a set of characters from a string: - name: Strip a set of characters from a string - path: Strip-a-set-of-characters-from-a-string - url: Strip_a_set_of_characters_from_a_string -Strip block comments: - name: Strip block comments - path: Strip-block-comments - url: Strip_block_comments -Strip comments from a string: - name: Strip comments from a string - path: Strip-comments-from-a-string - url: Strip_comments_from_a_string -Strip control codes and extended characters from a string: - name: Strip control codes and extended characters from a string - path: Strip-control-codes-and-extended-characters-from-a-string - url: Strip_control_codes_and_extended_characters_from_a_string -Strip whitespace from a string/Top and tail: - name: Strip whitespace from a string/Top and tail - path: Strip-whitespace-from-a-string-Top-and-tail - url: Strip_whitespace_from_a_string/Top_and_tail -Substring: - name: Substring - path: Substring - url: Substring -Substring/Top and tail: - name: Substring/Top and tail - path: Substring-Top-and-tail - url: Substring/Top_and_tail -Subtractive generator: - name: Subtractive generator - path: Subtractive-generator - url: Subtractive_generator -Sudoku: - name: Sudoku - path: Sudoku - url: Sudoku -Sum and product of an array: - name: Sum and product of an array - path: Sum-and-product-of-an-array - url: Sum_and_product_of_an_array -Sum digits of an integer: - name: Sum digits of an integer - path: Sum-digits-of-an-integer - url: Sum_digits_of_an_integer -Sum of a series: - name: Sum of a series - path: Sum-of-a-series - url: Sum_of_a_series -Sum of squares: - name: Sum of squares - path: Sum-of-squares - url: Sum_of_squares -Sutherland-Hodgman polygon clipping: - name: Sutherland-Hodgman polygon clipping - path: Sutherland-Hodgman-polygon-clipping - url: Sutherland-Hodgman_polygon_clipping -Symmetric difference: - name: Symmetric difference - path: Symmetric-difference - url: Symmetric_difference -Synchronous concurrency: - name: Synchronous concurrency - path: Synchronous-concurrency - url: Synchronous_concurrency -System time: - name: System time - path: System-time - url: System_time -Table creation/Postal addresses: - name: Table creation/Postal addresses - path: Table-creation-Postal-addresses - url: Table_creation/Postal_addresses -Take notes on the command line: - name: Take notes on the command line - path: Take-notes-on-the-command-line - url: Take_notes_on_the_command_line -Temperature conversion: - name: Temperature conversion - path: Temperature-conversion - url: Temperature_conversion -Terminal control/Clear the screen: - name: Terminal control/Clear the screen - path: Terminal-control-Clear-the-screen - url: Terminal_control/Clear_the_screen -Terminal control/Coloured text: - name: Terminal control/Coloured text - path: Terminal-control-Coloured-text - url: Terminal_control/Coloured_text -Terminal control/Cursor movement: - name: Terminal control/Cursor movement - path: Terminal-control-Cursor-movement - url: Terminal_control/Cursor_movement -Terminal control/Cursor positioning: - name: Terminal control/Cursor positioning - path: Terminal-control-Cursor-positioning - url: Terminal_control/Cursor_positioning -Terminal control/Dimensions: - name: Terminal control/Dimensions - path: Terminal-control-Dimensions - url: Terminal_control/Dimensions -Terminal control/Display an extended character: - name: Terminal control/Display an extended character - path: Terminal-control-Display-an-extended-character - url: Terminal_control/Display_an_extended_character -Terminal control/Hiding the cursor: - name: Terminal control/Hiding the cursor - path: Terminal-control-Hiding-the-cursor - url: Terminal_control/Hiding_the_cursor -Terminal control/Inverse video: - name: Terminal control/Inverse video - path: Terminal-control-Inverse-video - url: Terminal_control/Inverse_video -Terminal control/Positional read: - name: Terminal control/Positional read - path: Terminal-control-Positional-read - url: Terminal_control/Positional_read -Terminal control/Preserve screen: - name: Terminal control/Preserve screen - path: Terminal-control-Preserve-screen - url: Terminal_control/Preserve_screen -Terminal control/Ringing the terminal bell: - name: Terminal control/Ringing the terminal bell - path: Terminal-control-Ringing-the-terminal-bell - url: Terminal_control/Ringing_the_terminal_bell -Terminal control/Unicode output: - name: Terminal control/Unicode output - path: Terminal-control-Unicode-output - url: Terminal_control/Unicode_output -Ternary logic: - name: Ternary logic - path: Ternary-logic - url: Ternary_logic -Test a function: - name: Test a function - path: Test-a-function - url: Test_a_function -Text processing/1: - name: Text processing/1 - path: Text-processing-1 - url: Text_processing/1 -Text processing/2: - name: Text processing/2 - path: Text-processing-2 - url: Text_processing/2 -Text processing/Max licenses in use: - name: Text processing/Max licenses in use - path: Text-processing-Max-licenses-in-use - url: Text_processing/Max_licenses_in_use -Thiele's interpolation formula: - name: Thiele's interpolation formula - path: Thieles-interpolation-formula - url: Thiele's_interpolation_formula -Tic-tac-toe: - name: Tic-tac-toe - path: Tic-tac-toe - url: Tic-tac-toe -Time a function: - name: Time a function - path: Time-a-function - url: Time_a_function -Tokenize a string: - name: Tokenize a string - path: Tokenize-a-string - url: Tokenize_a_string -Top rank per group: - name: Top rank per group - path: Top-rank-per-group - url: Top_rank_per_group -Topic variable: - name: Topic variable - path: Topic-variable - url: Topic_variable -Topological sort: - name: Topological sort - path: Topological-sort - url: Topological_sort -Topswops: - name: Topswops - path: Topswops - url: Topswops -Towers of Hanoi: - name: Towers of Hanoi - path: Towers-of-Hanoi - url: Towers_of_Hanoi -Trabb Pardo–Knuth algorithm: - name: Trabb Pardo–Knuth algorithm - path: Trabb-Pardo-Knuth-algorithm - url: Trabb_Pardo–Knuth_algorithm -Tree traversal: - name: Tree traversal - path: Tree-traversal - url: Tree_traversal -Trigonometric functions: - name: Trigonometric functions - path: Trigonometric-functions - url: Trigonometric_functions -Truncatable primes: - name: Truncatable primes - path: Truncatable-primes - url: Truncatable_primes -Truncate a file: - name: Truncate a file - path: Truncate-a-file - url: Truncate_a_file -Twelve statements: - name: Twelve statements - path: Twelve-statements - url: Twelve_statements -URL decoding: - name: URL decoding - path: URL-decoding - url: URL_decoding -URL encoding: - name: URL encoding - path: URL-encoding - url: URL_encoding -Unbias a random generator: - name: Unbias a random generator - path: Unbias-a-random-generator - url: Unbias_a_random_generator -Undefined values: - name: Undefined values - path: Undefined-values - url: Undefined_values -Unicode strings: - name: Unicode strings - path: Unicode-strings - url: Unicode_strings -Unicode variable names: - name: Unicode variable names - path: Unicode-variable-names - url: Unicode_variable_names -Universal Turing machine: - name: Universal Turing machine - path: Universal-Turing-machine - url: Universal_Turing_machine -Update a configuration file: - name: Update a configuration file - path: Update-a-configuration-file - url: Update_a_configuration_file -Use another language to call a function: - name: Use another language to call a function - path: Use-another-language-to-call-a-function - url: Use_another_language_to_call_a_function -User input/Graphical: - name: User input/Graphical - path: User-input-Graphical - url: User_input/Graphical -User input/Text: - name: User input/Text - path: User-input-Text - url: User_input/Text -Vampire number: - name: Vampire number - path: Vampire-number - url: Vampire_number -Van der Corput sequence: - name: Van der Corput sequence - path: Van-der-Corput-sequence - url: Van_der_Corput_sequence -Variable size/Get: - name: Variable size/Get - path: Variable-size-Get - url: Variable_size/Get -Variable size/Set: - name: Variable size/Set - path: Variable-size-Set - url: Variable_size/Set -Variable-length quantity: - name: Variable-length quantity - path: Variable-length-quantity - url: Variable-length_quantity -Variables: - name: Variables - path: Variables - url: Variables -Variadic function: - name: Variadic function - path: Variadic-function - url: Variadic_function -Vector products: - name: Vector products - path: Vector-products - url: Vector_products -Verify distribution uniformity/Chi-squared test: - name: Verify distribution uniformity/Chi-squared test - path: Verify-distribution-uniformity-Chi-squared-test - url: Verify_distribution_uniformity/Chi-squared_test -Verify distribution uniformity/Naive: - name: Verify distribution uniformity/Naive - path: Verify-distribution-uniformity-Naive - url: Verify_distribution_uniformity/Naive -Video display modes: - name: Video display modes - path: Video-display-modes - url: Video_display_modes -Vigenère cipher: - name: Vigenère cipher - path: Vigen-re-cipher - url: Vigenère_cipher -Vigenère cipher/Cryptanalysis: - name: Vigenère cipher/Cryptanalysis - path: Vigen-re-cipher-Cryptanalysis - url: Vigenère_cipher/Cryptanalysis -Visualize a tree: - name: Visualize a tree - path: Visualize-a-tree - url: Visualize_a_tree -Voronoi diagram: - name: Voronoi diagram - path: Voronoi-diagram - url: Voronoi_diagram -Walk a directory/Non-recursively: - name: Walk a directory/Non-recursively - path: Walk-a-directory-Non-recursively - url: Walk_a_directory/Non-recursively -Walk a directory/Recursively: - name: Walk a directory/Recursively - path: Walk-a-directory-Recursively - url: Walk_a_directory/Recursively -Web scraping: - name: Web scraping - path: Web-scraping - url: Web_scraping -Window creation: - name: Window creation - path: Window-creation - url: Window_creation -Window creation/X11: - name: Window creation/X11 - path: Window-creation-X11 - url: Window_creation/X11 -Window management: - name: Window management - path: Window-management - url: Window_management -Wireworld: - name: Wireworld - path: Wireworld - url: Wireworld -Word wrap: - name: Word wrap - path: Word-wrap - url: Word_wrap -Write float arrays to a text file: - name: Write float arrays to a text file - path: Write-float-arrays-to-a-text-file - url: Write_float_arrays_to_a_text_file -Write language name in 3D ASCII: - name: Write language name in 3D ASCII - path: Write-language-name-in-3D-ASCII - url: Write_language_name_in_3D_ASCII -Write to Windows event log: - name: Write to Windows event log - path: Write-to-Windows-event-log - url: Write_to_Windows_event_log -XML/DOM serialization: - name: XML/DOM serialization - path: XML-DOM-serialization - url: XML/DOM_serialization -XML/Input: - name: XML/Input - path: XML-Input - url: XML/Input -XML/Output: - name: XML/Output - path: XML-Output - url: XML/Output -XML/XPath: - name: XML/XPath - path: XML-XPath - url: XML/XPath -Xiaolin Wu's line algorithm: - name: Xiaolin Wu's line algorithm - path: Xiaolin-Wus-line-algorithm - url: Xiaolin_Wu's_line_algorithm -Y combinator: - name: Y combinator - path: Y-combinator - url: Y_combinator -Yahoo! search interface: - name: Yahoo! search interface - path: Yahoo--search-interface - url: Yahoo!_search_interface -Yin and yang: - name: Yin and yang - path: Yin-and-yang - url: Yin_and_yang -Zebra puzzle: - name: Zebra puzzle - path: Zebra-puzzle - url: Zebra_puzzle -Zeckendorf arithmetic: - name: Zeckendorf arithmetic - path: Zeckendorf-arithmetic - url: Zeckendorf_arithmetic -Zeckendorf number representation: - name: Zeckendorf number representation - path: Zeckendorf-number-representation - url: Zeckendorf_number_representation -Zig-zag matrix: - name: Zig-zag matrix - path: Zig-zag-matrix - url: Zig-zag_matrix +Execute Brain****: + name: Execute Brain**** + path: Execute-Brain---- + url: Execute_Brain**** diff --git a/Task/Execute-Brain----/00DESCRIPTION b/Task/Execute-Brain----/00DESCRIPTION new file mode 100644 index 0000000000..4123238f82 --- /dev/null +++ b/Task/Execute-Brain----/00DESCRIPTION @@ -0,0 +1,13 @@ +{{implementation|Brainf***}}RCBF is a set of [[Brainf***]] compilers and interpreters written for Rosetta Code in a variety of languages. Below are links to each of the versions of RCBF. + +An implementation need only properly implement the following instructions: +* [     (left bracket) +* ]     (right bracket) +* +     (plus sign) +* -     (minus sign) +* <     (less than sign) +* >     (greater than sign) +* ,     (comma) +* .     (period) +Any cell size is allowed, EOF support is optional, as is whether you have bounded or unbounded memory. +
diff --git a/Task/Execute-Brain----/00META.yaml b/Task/Execute-Brain----/00META.yaml new file mode 100644 index 0000000000..aba307f8bf --- /dev/null +++ b/Task/Execute-Brain----/00META.yaml @@ -0,0 +1,3 @@ +--- +category: +- Compilers and Interpreters diff --git a/Task/Execute-Brain----/AutoIt/execute-brain----.autoit b/Task/Execute-Brain----/AutoIt/execute-brain----.autoit new file mode 100644 index 0000000000..7e2c13bfcc --- /dev/null +++ b/Task/Execute-Brain----/AutoIt/execute-brain----.autoit @@ -0,0 +1,134 @@ +; AutoFucck +; A AutoIt Brainfuck Interpreter +; by minx +; AutoIt Version: 3.3.8.x + +; Commands: +; - DEC +; + INC +; [ LOOP START +; ] LOOP END +; . Output cell value as ASCII Chr +; , Input a ASCII char (cell value = ASCII code) +; : Ouput cell value as integer +; ; Input a Integer +; _ Output a single whitespace +; / Output an Carriage Return and Line Feed + +; You can load & save .atf Files. + +#include +#include +#include +#include +#include + +HotKeySet("{F5}", "_Runn") + +$hMain = GUICreate("Autofuck - Real Brainfuck Interpreter", 600, 525) +$mMain = GUICtrlCreateMenu("File") +Global $mCode = GUICtrlCreateMenu("Code") +$mInfo = GUICtrlCreateMenu("Info") +$mCredits = GUICtrlCreateMenuItem("Credits", $mInfo) +$mFile_New = GUICtrlCreateMenuItem("New", $mMain) +$mFile_Open = GUICtrlCreateMenuItem("Open", $mMain) +$mFile_Save = GUICtrlCreateMenuItem("Save", $mMain) +Global $mCode_Run = GUICtrlCreateMenuItem("Run [F5]", $mCode) +Global $lStatus = GUICtrlCreateLabel("++ Autofuck started...", 5, 480, 590, 20, $SS_SUNKEN) +GUICtrlSetFont(-1, Default, Default, Default, "Courier New") +$eCode = GUICtrlCreateEdit("", 5, 5, 590, 350) +GUICtrlSetFont(-1, Default, Default, Default, "Courier New") +$eConsole = GUICtrlCreateEdit("", 5, 360, 590, 115, $ES_WANTRETURN) +GUICtrlSetFont(-1, Default, Default, Default, "Courier New") +GUISetState() + +While 1 + $nMsg = GUIGetMsg() + Switch $nMsg + Case $mFile_New + GUICtrlSetData($eCode, "") + Case $mFile_Open + GUICtrlSetData($eCode, FileRead(FileOpenDialog("Open Autofuck script", @DesktopDir, "Autofuck (*.atf)"))) + Case $mFile_Save + FileWrite(FileOpen(StringReplace(FileSaveDialog("Save Autofuck script", @DesktopDir, "Autofuck (*.atf)"), ".atf", "") &".atf", 2), GUICtrlRead($eCode)) + Case $GUI_EVENT_CLOSE + Exit + Case $mCredits + MsgBox(0, "Autofuck", "Copyright by: "&@CRLF&"minx (autoit.de)"&@CRLF&"crashdemons (autoitscript.com)") + EndSwitch +WEnd + +Func _Runn() + $Timer = TimerInit() + GUICtrlSetData($lStatus, "++ Program started") + Global $tData=DllStructCreate('BYTE[65536]') + Global $pData=0 + GUICtrlSetData($eConsole, "") + Local $aError[6]=['','Unmatched closing bracket during search','Unmatched opening bracket during search','Unexpected closing bracket','Data pointer passed left boundary','Data pointer passed right boundary'] + Local $sError='' + Local $i=_Run(GUICtrlRead($eCode)) + If @error>=0 And @error<6 Then $sError=$aError[@error] + If StringLen($sError) Then GUICtrlSetData($eConsole, 'ERROR: '&$sError&'.'&@CRLF&'Ending Instruction Pointer: '&($i-1)&@CRLF&'Current Data Pointer: '&$pData) + GUICtrlSetData($lStatus, "++ Program terminated. Runtime: "& Round( TimerDiff($Timer) / 1000, 4) &"s") +EndFunc + +Func _Run($Code,$iStart=1,$iEnd=0) + If $iEnd<1 Then $iEnd=StringLen($Code) + For $i = $iStart to $iEnd + Switch StringMid($Code, $i, 1) + Case ">" + $pData+=1 + If $pData=65536 Then Return SetError(5,0,$i) + Case "<" + $pData-=1 + If $pData<0 Then Return SetError(4,0,$i) + Case "+" + DllStructSetData($tData,1,DllStructGetData($tData,1,$pData+1)+1,$pData+1) + Case "-" + DllStructSetData($tData,1,DllStructGetData($tData,1,$pData+1)-1,$pData+1) + Case ":" + GUICtrlSetData($eConsole, GUICtrlRead($eConsole) & (DllStructGetData($tData,1,$pData+1))) + Case "." + GUICtrlSetData($eConsole, GUICtrlRead($eConsole) & Chr(DllStructGetData($tData,1,$pData+1))) + Case ";" + Local $cIn=StringMid(InputBox('Autofuck','Enter Number'),1) + DllStructSetData($tData,1,Number($cIn),$pData+1) + Case "," + Local $cIn=StringMid(InputBox('Autofuck','Enter one ASCII character'),1,1) + DllStructSetData($tData,1,Asc($cIn),$pData+1) + Case "[" + Local $iStartSub=$i + Local $iEndSub=_MatchBracket($Code,$i,$iEnd) + If @error<>0 Then Return SetError(@error,0,$iEndSub) + While DllStructGetData($tData,1,$pData+1)<>0 + Local $iRet=_Run($Code,$iStartSub+1,$iEndSub-1) + If @error<>0 Then Return SetError(@error,0,$iRet) + WEnd + $i=$iEndSub + Case ']' + Return SetError(3,0,$i) + Case "_" + GUICtrlSetData($eConsole, GUICtrlRead($eConsole)&" ") + Case "/" + GUICtrlSetData($eConsole, GUICtrlRead($eConsole)&@CRLF) + EndSwitch + Next + Return 0 +EndFunc + +Func _MatchBracket($Code,$iStart=1,$iEnd=0) + If $iEnd<1 Then $iEnd=StringLen($Code) + Local $Open=0 + For $i=$iStart To $iEnd + Switch StringMid($Code,$i,1) + Case '[' + $Open+=1 + Case ']' + $Open-=1 + If $Open=0 Then Return $i + If $Open<0 Then Return SetError(1,0,$i) + EndSwitch + Next + If $Open>0 Then Return SetError(2,0,$i) + Return 0 +EndFunc diff --git a/Task/Execute-Brain----/BBC-BASIC/execute-brain----.bbc b/Task/Execute-Brain----/BBC-BASIC/execute-brain----.bbc new file mode 100644 index 0000000000..d09b0aaf87 --- /dev/null +++ b/Task/Execute-Brain----/BBC-BASIC/execute-brain----.bbc @@ -0,0 +1,42 @@ + bf$ = "++++++++[>++++[>++>+++>+++>+<<<<-]>+>->+>>+[<]<-]>>.>" + \ + \ ">---.+++++++..+++.>.<<-.>.+++.------.--------.>+.>++.+++." + PROCbrainfuck(bf$) + END + + DEF PROCbrainfuck(b$) + LOCAL B%, K%, M%, P% + DIM M% LOCAL 65535 + B% = 1 : REM pointer to string + K% = 0 : REM bracket counter + P% = 0 : REM pointer to memory + FOR B% = 1 TO LEN(b$) + CASE MID$(b$,B%,1) OF + WHEN "+": M%?P% += 1 + WHEN "-": M%?P% -= 1 + WHEN ">": P% += 1 + WHEN "<": P% -= 1 + WHEN ".": VDU M%?P% + WHEN ",": M%?P% = GET + WHEN "[": + IF M%?P% = 0 THEN + K% = 1 + B% += 1 + WHILE K% + IF MID$(b$,B%,1) = "[" THEN K% += 1 + IF MID$(b$,B%,1) = "]" THEN K% -= 1 + B% += 1 + ENDWHILE + ENDIF + WHEN "]": + IF M%?P% <> 0 THEN + K% = -1 + B% -= 1 + WHILE K% + IF MID$(b$,B%,1) = "[" THEN K% += 1 + IF MID$(b$,B%,1) = "]" THEN K% -= 1 + B% -= 1 + ENDWHILE + ENDIF + ENDCASE + NEXT + ENDPROC diff --git a/Task/Execute-Brain----/Burlesque/execute-brain----.blq b/Task/Execute-Brain----/Burlesque/execute-brain----.blq new file mode 100644 index 0000000000..e6ed5c97b4 --- /dev/null +++ b/Task/Execute-Brain----/Burlesque/execute-brain----.blq @@ -0,0 +1,4 @@ +".""X"r~"-""\/^^{vvvv}c!!!-.256.%{vvvv}c!sa\/"r~"+""\/^^{vvvv}c!!!+. +256.%{vvvv}c!sa\/"r~"[""{"r~"]""}{\/^^{vvvv}c!!!}w!"r~">""+."r~"<"" +-."r~"X""\/^^{vvvv}c!!!L[+]\/+]\/+]^^3\/.+1RAp^\/+]\/[-1RA^^-]\/[-\/ +"r~"\'\'1 128r@{vv0}m[0"\/.+pse!vvvv<-sh diff --git a/Task/Execute-Brain----/Clojure/execute-brain-----1.clj b/Task/Execute-Brain----/Clojure/execute-brain-----1.clj new file mode 100644 index 0000000000..6946f6fff6 --- /dev/null +++ b/Task/Execute-Brain----/Clojure/execute-brain-----1.clj @@ -0,0 +1,75 @@ +(ns brainfuck) + +(def ^:dynamic *input*) + +(def ^:dynamic *output*) + +(defrecord Data [ptr cells]) + +(defn inc-ptr [next-cmd] + (fn [data] + (next-cmd (update-in data [:ptr] inc)))) + +(defn dec-ptr [next-cmd] + (fn [data] + (next-cmd (update-in data [:ptr] dec)))) + +(defn inc-cell [next-cmd] + (fn [data] + (next-cmd (update-in data [:cells (:ptr data)] (fnil inc 0))))) + +(defn dec-cell [next-cmd] + (fn [data] + (next-cmd (update-in data [:cells (:ptr data)] (fnil dec 0))))) + +(defn output-cell [next-cmd] + (fn [data] + (set! *output* (conj *output* (get (:cells data) (:ptr data) 0))) + (next-cmd data))) + +(defn input-cell [next-cmd] + (fn [data] + (let [[input & rest-input] *input*] + (set! *input* rest-input) + (next-cmd (update-in data [:cells (:ptr data)] input))))) + +(defn if-loop [next-cmd loop-cmd] + (fn [data] + (next-cmd (loop [d data] + (if (zero? (get (:cells d) (:ptr d) 0)) + d + (recur (loop-cmd d))))))) + +(defn terminate [data] data) + +(defn split-cmds [cmds] + (letfn [(split [[cmd & rest-cmds] loop-cmds] + (when (nil? cmd) (throw (Exception. "invalid commands: missing ]"))) + (case cmd + \[ (let [[c l] (split-cmds rest-cmds)] + (recur c (str loop-cmds "[" l "]"))) + \] [(apply str rest-cmds) loop-cmds] + (recur rest-cmds (str loop-cmds cmd))))] + (split cmds ""))) + +(defn compile-cmds [[cmd & rest-cmds]] + (if (nil? cmd) + terminate + (case cmd + \> (inc-ptr (compile-cmds rest-cmds)) + \< (dec-ptr (compile-cmds rest-cmds)) + \+ (inc-cell (compile-cmds rest-cmds)) + \- (dec-cell (compile-cmds rest-cmds)) + \. (output-cell (compile-cmds rest-cmds)) + \, (input-cell (compile-cmds rest-cmds)) + \[ (let [[cmds loop-cmds] (split-cmds rest-cmds)] + (if-loop (compile-cmds cmds) (compile-cmds loop-cmds))) + \] (throw (Exception. "invalid commands: missing [")) + (compile-cmds rest-cmds)))) + +(defn compile-and-run [cmds input] + (binding [*input* input *output* []] + (let [compiled-cmds (compile-cmds cmds)] + (println (compiled-cmds (Data. 0 {})))) + (println *output*) + (println (apply str (map char *output*))))) diff --git a/Task/Execute-Brain----/Clojure/execute-brain-----2.clj b/Task/Execute-Brain----/Clojure/execute-brain-----2.clj new file mode 100644 index 0000000000..f36e14a3d4 --- /dev/null +++ b/Task/Execute-Brain----/Clojure/execute-brain-----2.clj @@ -0,0 +1,6 @@ +brainfuck> (compile-and-run "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>." []) +{:ptr 4, :cells {4 10, 3 33, 2 100, 1 87, 0 0}} +[72 101 108 108 111 32 87 111 114 108 100 33 10] +Hello World! + +nil diff --git a/Task/Execute-Brain----/Elena/execute-brain----.elena b/Task/Execute-Brain----/Elena/execute-brain----.elena new file mode 100644 index 0000000000..5f77c51cbb --- /dev/null +++ b/Task/Execute-Brain----/Elena/execute-brain----.elena @@ -0,0 +1,82 @@ +statement ::= next; +statement ::= prev; +statement ::= inc; +statement ::= dec; +statement ::= out; +statement ::= in; +statement ::= "[" while; +statement ::= idle; + +next ::= ">"; +prev ::= "<"; +inc ::= "+"; +dec ::= "-"; +out ::= "."; +in ::= ","; +idle ::= $any; + +while ::= statement while_r; + +while_r ::= "]"; +while_r ::= statement while_r; + +tape ::= statement statements; + +statements ::= statement statements; +statements ::= $eps; + +start ::= tape; + +tape => + // 1: append + &subject + // 2: goto + &subject + // 3: loop + &subject + // 4: inc action + &1 1 &echo + // 5: dec action + &1 -1 &echo + // 6: next action + &2 1 &echo + // 7: prev action + &2 -1 &echo + // 8: output action + &__write &nil 'program'output &wrap + // 9: group + &nil + sys'dynamics'groupvariable + &std'basic'factory'array_size &sys'vm'routines'egetprop 1024 &prop + &std'basic'factory'pattern &sys'vm'routines'egetprop 0 std'basic'widecharvar &prop + &union2 + std'basic'factory'patternarrayfactory + std'basic'factory'newarray + 0 ^refer + ~ sys'dynamics'group_member ^append + // :: append method + &1 &__append &9 &prop + ~ sys'dynamics'group_member ^append + // :: goto method + &2 &__append &std'dictionary'index &9 &wrap &prop + ~ sys'dynamics'group_member ^append + // :: loop method + &3 &__run &std'patterns'ewhilenotzero &9 &wrap &prop + ~ sys'dynamics'group_member ^append + + // 10: in action + &__save &__get &nil 'program'input &nil &action &wrap + + // build command batch + &cast + $body + &9 + ^ invoke; + +inc => &4 |= $body; +dec => &5 |= $body; +next => &6 |= $body; +prev => &7 |= $body; +out => &8 |= $body; +in => &10 |= $body; +while => &3 &__eval &cast $body &wrap &echo |=; diff --git a/Task/Execute-Brain----/GAP/execute-brain----.gap b/Task/Execute-Brain----/GAP/execute-brain----.gap new file mode 100644 index 0000000000..4af35f287d --- /dev/null +++ b/Task/Execute-Brain----/GAP/execute-brain----.gap @@ -0,0 +1,102 @@ +# Here . and , print and read an integer, not a character +Brainfuck := function(prog) + local pointer, stack, leftcells, rightcells, instr, stackptr, len, + output, input, jump, i, j, set, get; + input := InputTextUser(); + output := OutputTextUser(); + instr := 1; + pointer := 0; + leftcells := [ ]; + rightcells := [ ]; + stack := [ ]; + stackptr := 0; + len := Length(prog); + jump := [ ]; + + get := function() + local p; + if pointer >= 0 then + p := pointer + 1; + if IsBound(rightcells[p]) then + return rightcells[p]; + else + return 0; + fi; + else + p := -pointer; + if IsBound(leftcells[p]) then + return leftcells[p]; + else + return 0; + fi; + fi; + end; + + set := function(value) + local p; + if pointer >= 0 then + p := pointer + 1; + if value = 0 then + Unbind(rightcells[p]); + else + rightcells[p] := value; + fi; + else + p := -pointer; + if value = 0 then + Unbind(leftcells[p]); + else + leftcells[p] := value; + fi; + fi; + end; + + # find jumps for faster execution + for i in [1 .. len] do + if prog[i] = '[' then + stackptr := stackptr + 1; + stack[stackptr] := i; + elif prog[i] = ']' then + j := stack[stackptr]; + stackptr := stackptr - 1; + jump[i] := j; + jump[j] := i; + fi; + od; + + while instr <= len do + c := prog[instr]; + if c = '<' then + pointer := pointer - 1; + elif c = '>' then + pointer := pointer + 1; + elif c = '+' then + set(get() + 1); + elif c = '-' then + set(get() - 1); + elif c = '.' then + WriteLine(output, String(get())); + elif c = ',' then + set(Int(Chomp(ReadLine(input)))); + elif c = '[' then + if get() = 0 then + instr := jump[instr]; + fi; + elif c = ']' then + if get() <> 0 then + instr := jump[instr]; + fi; + fi; + instr := instr + 1; + od; + CloseStream(input); + CloseStream(output); + # for debugging purposes, return last state + return [leftcells, rightcells, pointer]; +end; + +# An addition +Brainfuck("+++.<+++++.[->+<]>."); +# 3 +# 5 +# 8 diff --git a/Task/Execute-Brain----/Go/execute-brain----.go b/Task/Execute-Brain----/Go/execute-brain----.go new file mode 100644 index 0000000000..d098d6decc --- /dev/null +++ b/Task/Execute-Brain----/Go/execute-brain----.go @@ -0,0 +1,55 @@ +package main + +import "fmt" + +func main() { + // example program is current Brain**** solution to + // Hello world/Text task. only requires 10 bytes of data store! + bf(10, `++++++++++[>+>+++>++++>+++++++>++++++++>+++++++++>++ +++++++++>+++++++++++>++++++++++++<<<<<<<<<-]>>>>+.>>> +>+..<.<++++++++.>>>+.<<+.<<<<++++.<++.>>>+++++++.>>>.+++. +<+++++++.--------.<<<<<+.<+++.---.`) +} + +func bf(dLen int, is string) { + ds := make([]byte, dLen) // data store + var dp int // data pointer + for ip := 0; ip < len(is); ip++ { + switch is[ip] { + case '>': + dp++ + case '<': + dp-- + case '+': + ds[dp]++ + case '-': + ds[dp]-- + case '.': + fmt.Printf("%c", ds[dp]) + case ',': + fmt.Scanf("%c", &ds[dp]) + case '[': + if ds[dp] == 0 { + for nc := 1; nc > 0; { + ip++ + if is[ip] == '[' { + nc++ + } else if is[ip] == ']' { + nc-- + } + } + } + case ']': + if ds[dp] != 0 { + for nc := 1; nc > 0; { + ip-- + if is[ip] == ']' { + nc++ + } else if is[ip] == '[' { + nc-- + } + } + } + } + } +} diff --git a/Task/Execute-Brain----/Mathematica/execute-brain-----1.math b/Task/Execute-Brain----/Mathematica/execute-brain-----1.math new file mode 100644 index 0000000000..66a8f24238 --- /dev/null +++ b/Task/Execute-Brain----/Mathematica/execute-brain-----1.math @@ -0,0 +1,22 @@ +bf[program_, input_] := + Module[{p = Characters[program], pp = 0, m, mp = 0, bc = 0, + instr = StringToStream[input], + outstr = OpenWrite[BinaryFormat -> True]}, + m[_] = 0; + While[pp < Length@p, + pp++; + Switch[p[[pp]], + ">", mp++, + "<", mp--, + "+", m[mp]++, + "-", m[mp]--, + ".", BinaryWrite[outstr, m[mp]], + ",", m[mp] = BinaryRead[instr], + "[", If[m[mp] == 0, + bc = 1; + While[bc > 0, pp++; Switch[p[[pp]], "[", bc++, "]", bc--]]], + "]", If[m[mp] != 0, + bc = -1; + While[bc < 0, pp--; Switch[p[[pp]], "[", bc++, "]", bc--]]]]]; + Close[instr]; FilePrint[Close[outstr]]]; +bf[program_] := bf[program, ""] diff --git a/Task/Execute-Brain----/Mathematica/execute-brain-----2.math b/Task/Execute-Brain----/Mathematica/execute-brain-----2.math new file mode 100644 index 0000000000..a18d701da0 --- /dev/null +++ b/Task/Execute-Brain----/Mathematica/execute-brain-----2.math @@ -0,0 +1,2 @@ +bf["++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++. +<<+++++++++++++++.>.+++.------.--------.>+.>."] diff --git a/Task/Execute-Brain----/Nimrod/execute-brain----.nimrod b/Task/Execute-Brain----/Nimrod/execute-brain----.nimrod new file mode 100644 index 0000000000..ca51153b63 --- /dev/null +++ b/Task/Execute-Brain----/Nimrod/execute-brain----.nimrod @@ -0,0 +1,63 @@ +import strutils + +proc jumpBackward(pos: var int, program: string) = + var level = 1 + while pos > 0 and level != 0: + dec pos + case program[pos] + of '[': + dec level + of ']': + inc level + else: + discard 1 + dec pos + +proc jumpForward(pos: var int, program: string) = + var level = 1 + while pos < program.len and level != 0: + inc pos + case program[pos] + of ']': + inc level + of '[': + dec level + else: + discard 1 + +proc bf(program: string) = + var tape: array[0..20, int] + var pointer = 0 + var pos = 0 + var indent = 0 + + while pos < program.len: + var token = program[pos] + case token + of '+': + inc tape[pointer] + of '-': + dec tape[pointer] + of ',': + tape[pointer] = int(stdin.readChar()) + of '.': + stdout.write(chr(tape[pointer])) + of '[': + if tape[pointer] == 0: + jumpForward(pos, program) + of ']': + if tape[pointer] != 0: + jumpBackward(pos, program) + of '>': + inc pointer + of '<': + dec pointer + else: + discard 1 + inc pos + +var addition = ",>++++++[<-------->-],[<+>-]<." +var hello_world = "++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>." + +bf(addition) +# bf(hello_world) diff --git a/Task/Execute-Brain----/PARI-GP/execute-brain----.pari b/Task/Execute-Brain----/PARI-GP/execute-brain----.pari new file mode 100644 index 0000000000..962130e8bc --- /dev/null +++ b/Task/Execute-Brain----/PARI-GP/execute-brain----.pari @@ -0,0 +1,43 @@ +BF(prog)={ + prog=Vec(Str(prog)); + my(codeptr,ptr=1,v=vector(1000),t); + while(codeptr++ <= #prog, + t=prog[codeptr]; + if(t=="+", + v[ptr]++ + , + if(t=="-", + v[ptr]-- + , + if(t==">", + ptr++ + , + if(t=="<", + ptr-- + , + if(t=="[" && !v[ptr], + t=1; + while(t, + if(prog[codeptr++]=="[",t++); + if(prog[codeptr]=="]",t--) + ); + ); + if(t=="]"&&v[ptr], + t=1; + while(t, + if(prog[codeptr--]=="[",t--); + if(prog[codeptr]=="]",t++) + ) + ); + if(t==".", + print1(Strchr(v[ptr])) + ); + if(t==",", + v[ptr]=Vecsmall(input)[1] + ) + ) + ) + ) + ) + ) +}; diff --git a/Task/Execute-Brain----/PHP/execute-brain----.php b/Task/Execute-Brain----/PHP/execute-brain----.php new file mode 100644 index 0000000000..6babdd9bcc --- /dev/null +++ b/Task/Execute-Brain----/PHP/execute-brain----.php @@ -0,0 +1,46 @@ +': $_d++; if(!isset($d[$_d])) $d[$_d] = chr(0); break; + case '<': $_d--; break; + case '.': $o .= $d[$_d]; break; + case ',': $d[$_d] = $_i==strlen($i) ? chr(0) : $i[$_i++]; break; + case '[': + if((int)ord($d[$_d]) == 0) { + $brackets = 1; + while($brackets && $_s++ < strlen($s)) { + if($s[$_s] == '[') + $brackets++; + else if($s[$_s] == ']') + $brackets--; + } + } + else { + $pos = $_s++-1; + if(brainfuck_interpret($s, $_s, $d, $_d, $i, $_i, $o)) + $_s = $pos; + } + break; + case ']': return ((int)ord($d[$_d]) != 0); + } + } while(++$_s < strlen($s)); +} + +function brainfuck($source, $input='') { + $data = array(); + $data[0] = chr(0); + $data_index = 0; + $source_index = 0; + $input_index = 0; + $output = ''; + + brainfuck_interpret($source, $source_index, + $data, $data_index, + $input, $input_index, + $output); + return $output; +} +?> diff --git a/Task/Execute-Brain----/PicoLisp/execute-brain----.l b/Task/Execute-Brain----/PicoLisp/execute-brain----.l new file mode 100644 index 0000000000..1482aaf262 --- /dev/null +++ b/Task/Execute-Brain----/PicoLisp/execute-brain----.l @@ -0,0 +1,48 @@ +(off "Program") + +(de compile (File) + (let Stack NIL + (setq "Program" + (make + (in File + (while (char) + (case @ + (">" + (link + '(setq Data + (or + (cddr Data) + (con (cdr Data) (cons 0 (cons Data))) ) ) ) ) + ("<" + (link + '(setq Data + (or + (cadr Data) + (set (cdr Data) (cons 0 (cons NIL Data))) ) ) ) ) + ("+" (link '(inc Data))) + ("-" (link '(dec Data))) + ("." (link '(prin (char (car Data))))) + ("," (link '(set Data (char (read))))) + ("[" + (link + '(setq Code + ((if (=0 (car Data)) cdar cdr) Code) ) ) + (push 'Stack (chain (cons))) ) + ("]" + (unless Stack + (quit "Unbalanced ']'") ) + (link + '(setq Code + ((if (n0 (car Data)) cdar cdr) Code) ) ) + (let (There (pop 'Stack) Here (cons There)) + (chain (set There Here)) ) ) ) ) ) ) ) + (when Stack + (quit "Unbalanced '['") ) ) ) + +(de execute () + (let Data (cons 0 (cons)) # Create initial cell + (for (Code "Program" Code) # Run program + (eval (pop 'Code)) ) + (while (cadr Data) # Find beginning of data + (setq Data @) ) + (filter prog Data '(T NIL .)) ) ) # Return data space diff --git a/Task/Execute-Brain----/README b/Task/Execute-Brain----/README new file mode 100644 index 0000000000..147fb06371 --- /dev/null +++ b/Task/Execute-Brain----/README @@ -0,0 +1 @@ +Data source: http://rosettacode.org/wiki/Execute_Brain**** diff --git a/Task/Execute-Brain----/REXX/execute-brain----.rexx b/Task/Execute-Brain----/REXX/execute-brain----.rexx new file mode 100644 index 0000000000..430291cc36 --- /dev/null +++ b/Task/Execute-Brain----/REXX/execute-brain----.rexx @@ -0,0 +1,52 @@ +/*REXX program to implement the Brainf*ck (self-censored) language. */ +#.=0 /*initialize the infinite "tape".*/ +p=0 /*the "tape" cell pointer. */ +!=0 /* ! is the instruction pointer.*/ +parse arg $ /*allow CBLF to specify a BF pgm.*/ + /* │ No pgm? Then use default.*/ +if $='' then $=, /* ↓ displays: Hello, World! */ + "++++++++++ initialize cell #0 to 10; then loop: ", + "[ > +++++++ add 7 to cell #1; final result: 70 ", + " > ++++++++++ add 10 to cell #2; final result: 100 ", + " > +++ add 3 to cell #3; final result 30 ", + " > + add 1 to cell #4; final result 10 ", + " <<<< - ] decrement cell #0 ", + "> ++ . display 'H' which is ASCII 72 (decimal) ", + "> + . display 'e' which is ASCII 101 (decimal) ", + "+++++++ .. display 'll' which is ASCII 108 (decimal) {2}", + "+++ . display 'o' which is ASCII 111 (decimal) ", + "> ++ . display ' ' which is ASCII 32 (decimal) ", + "<< +++++++++++++++ . display 'W' which is ASCII 87 (decimal) ", + "> . display 'o' which is ASCII 111 (decimal) ", + "+++ . display 'r' which is ASCII 114 (decimal) ", + "------ . display 'l' which is ASCII 108 (decimal) ", + "-------- . display 'd' which is ASCII 100 (decimal) ", + "> + . display '!' which is ASCII 33 (decimal) " + /*(above) note Brainf*ck comments*/ + do forever; !=!+1; if !==0 | !>length($) then leave; x=substr($,!,1) + select /*examine the current instruction*/ + when x=='+' then #.p=#.p + 1 /*increment the "tape" cell by 1.*/ + when x=='-' then #.p=#.p - 1 /*decrement the "tape" cell by 1.*/ + when x=='>' then p=p + 1 /*increment the pointer by 1.*/ + when x=='<' then p=p - 1 /*decrement the pointer by 1.*/ + when x=='[' then != forward() /*go forward to ]+1 if #.P =0.*/ + when x==']' then !=backward() /*go backward to [+1 if #.P ¬0.*/ + when x=='.' then call charout ,d2c(#.p) /*display a "tape" cell.*/ + when x==',' then do; say 'input a value:'; parse pull #.p; end + otherwise iterate + end /*select*/ + end /*forever*/ +exit /*stick a fork in it, we're done.*/ +/*──────────────────────────────────FORWARD subroutine──────────────────*/ +forward: if #.p\==0 then return !; c=1 /* C is the [ nested counter.*/ + do k=!+1 to length($); z=substr($,k,1) + if z=='[' then do; c=c+1; iterate; end + if z==']' then do; c=c-1; if c==0 then leave; end + end /*k*/ +return k +/*──────────────────────────────────BACKWARD subroutine─────────────────*/ +backward: if #.p==0 then return !; c=1 /* C is the ] nested counter.*/ + do k=!-1 to 1 by -1; z=substr($,k,1) + if z==']' then do; c=c+1; iterate; end + if z=='[' then do; c=c-1; if c==0 then return k+1; end + end /*k*/