Category:Raku: Difference between revisions
SqrtNegInf (talk | contribs) m (→Useful links: raku.org is live) |
(additional online evaluator) |
||
(5 intermediate revisions by 2 users not shown) | |||
Line 16: | Line 16: | ||
{{language programming paradigm|generic}} |
{{language programming paradigm|generic}} |
||
{{infobox_begin}}Can't install Raku locally?<br>Try Raku on-line!<br> |
{{infobox_begin}}Can't install Raku locally?<br>Try Raku on-line!<br> |
||
⚫ | |||
[https://tio.run/#perl6 Try Raku on tio.run].<br> |
[https://tio.run/#perl6 Try Raku on tio.run].<br> |
||
[https://glot.io/new/ |
[https://glot.io/new/raku Try Raku on glot.io].<br> |
||
[https://repl.it/languages/raku Try Raku on repl.it].<br> |
|||
⚫ | |||
[https://ideone.com/fork/685KSI Try Raku on ideone].<br> |
|||
[https://fglock.github.io/Perlito/perlito/perlito6.html Try Raku with Perlito].<br> |
|||
[http://rakudist.raku.org/play/ (RakuPlay is currently down)].<br> |
|||
[https://ato.pxeger.com/run?1=m72kKDG7dMGCpaUlaboWaBSUBgA Try Raku on Attempt This Online].<br> |
|||
{{infobox_end}} |
{{infobox_end}} |
||
Raku is a member of the Perl family of programming languages. |
Raku is a member of the Perl family of programming languages. |
||
Line 42: | Line 47: | ||
==A Note on the Renaming== |
==A Note on the Renaming== |
||
The renaming of "Perl 6" as "Raku" occurred in October 2019. Since the old name has been in use for many years, it will take some time for the new designation to propagate widely. Expect to see both names in use for some time, but understand that they refer to exactly the same underlying idea. |
The renaming of "Perl 6" as "Raku" occurred in October 2019. Since the old name has been in use for many years, it will take some time for the new designation to propagate widely. Expect to see both names in use for some time, but understand that they refer to exactly the same underlying idea. As of March 14, 2020, all of the existing "Perl 6" tasks have been renamed to "Raku". There are still many mentions of Perl 6 throughout the site, and likely will be for the foreseeable future. |
||
<br clear=right><!-- Stop the category list and infobox from overlapping --> |
<br clear=right><!-- Stop the category list and infobox from overlapping --> |
Latest revision as of 16:25, 5 July 2023
![Language](http://static.miraheze.org/rosettacodewiki/thumb/2/27/Rcode-button-language-crushed.png/64px-Rcode-button-language-crushed.png)
This programming language may be used to instruct a computer to perform a task.
Official website |
---|
Garbage collected: | Yes |
---|---|
Parameter passing methods: | By reference, By value |
Type safety: | Safe, Unsafe |
Type strength: | Gradual |
Type compatibility: | Nominative, Duck |
Type checking: | Dynamic, Static |
Lang tag(s): | raku,perl6 |
See Also: |
|
Try Raku on-line!
Try Raku on tio.run.
Try Raku on glot.io.
Try Raku on repl.it.
Try Raku on 6pad.
Try Raku on ideone.
Try Raku with Perlito.
(RakuPlay is currently down).
Try Raku on Attempt This Online.
Raku is a member of the Perl family of programming languages. Though it resembles previous versions of Perl to no small degree, Raku is substantially a new language. By design, it isn't backwards-compatible with Perl 5. The first official release was at Christmas of 2015.
Damian Conway described the basic philosophy of Raku as follows:
The Perl 6 (now Raku) design process is about keeping what works in Perl 5, fixing what doesn't, and adding what's missing. That means there will be a few fundamental changes to the language, a large number of extensions to existing features, and a handful of completely new ideas. These modifications, enhancements, and innovations will work together to make the future Perl even more insanely great -- without, we hope, making it even more greatly insane.
Major new features include multiple dispatch, declarative classes, grammars, formal parameters to subroutines, type constraints on variables, lazy evaluation, junctions, meta-operators, and the ability to change Perl's syntax at will.
The definition of Raku is specified entirely by a test suite, so we could in theory have multiple implementations. The current version of the language is 6.d, as defined by the test suite known as "roast" (Repository Of All Spec Tests). Compiler releases have date-based versions, and these are typically used in Rosetta Code entries for the "works with" fields. The only compiler implementing the full test suite, Rakudo, currently runs on either of two backends, MoarVM or JVM. Subsequent language revisions are planned for release on a roughly yearly cycle.
Useful links
A Note on the Renaming
The renaming of "Perl 6" as "Raku" occurred in October 2019. Since the old name has been in use for many years, it will take some time for the new designation to propagate widely. Expect to see both names in use for some time, but understand that they refer to exactly the same underlying idea. As of March 14, 2020, all of the existing "Perl 6" tasks have been renamed to "Raku". There are still many mentions of Perl 6 throughout the site, and likely will be for the foreseeable future.
Subcategories
This category has the following 3 subcategories, out of 3 total.
Pages in category "Raku"
The following 200 pages are in this category, out of 1,623 total.
(previous page) (next page)M
- Make a backup file
- Make directory path
- Man or boy test
- Mandelbrot set
- Map range
- Marching squares
- Markov chain text generator
- Mastermind
- Matrix chain multiplication
- Matrix digital rain
- Matrix multiplication
- Matrix transposition
- Matrix with two diagonals
- Matrix-exponentiation operator
- Maximum difference between adjacent elements of list
- Maximum triangle path sum
- Mayan calendar
- Mayan numerals
- Maze generation
- Maze solving
- McNuggets problem
- MD4
- MD5
- MD5/Implementation
- Median filter
- Meissel–Mertens constant
- Memory allocation
- Memory layout of a data structure
- Menu
- Merge and aggregate datasets
- Mersenne primes
- Mertens function
- Metallic ratios
- Metaprogramming
- Metered concurrency
- Metronome
- Mian-Chowla sequence
- Middle three digits
- Miller–Rabin primality test
- Mind boggling card trick
- Minesweeper game
- Minimal steps down to 1
- Minimum multiple of m where digital sum equals m
- Minimum number of cells after, before, above and below NxN squares
- Minimum numbers of three lists
- Minimum positive multiple in base 10 using only 0 and 1
- Minimum primes
- Minkowski question-mark function
- Modified random distribution
- Modular arithmetic
- Modular exponentiation
- Modular inverse
- Modulinos
- Monads/List monad
- Monads/Maybe monad
- Monads/Writer monad
- Monte Carlo methods
- Montgomery reduction
- Monty Hall problem
- Morse code
- Mosaic matrix
- Most frequent k chars distance
- Motzkin numbers
- Mouse position
- Move-to-front algorithm
- Multi-base primes
- Multi-dimensional array
- Multidimensional Newton-Raphson method
- Multifactorial
- Multiline shebang
- Multiple distinct objects
- Multiple regression
- Multiplication tables
- Multiplicative order
- Multiplicatively perfect numbers
- Multisplit
- Multiton
- Munchausen numbers
- Munching squares
- Musical scale
- Mutex
- Mutual recursion
- Möbius function
N
- N'th
- N-body problem
- N-grams
- N-queens minimum and knights and bishops
- N-queens problem
- N-smooth numbers
- Named parameters
- Names to numbers
- Naming conventions
- Narcissist
- Narcissistic decimal number
- Native shebang
- Natural sorting
- Nautical bell
- Negative base numbers
- Neighbour primes
- Nested function
- Nested templated data
- Next highest int from digits
- Next special primes
- Nice primes
- Nim game
- Nimber arithmetic
- Non-continuous subsequences
- Non-decimal radices/Convert
- Non-decimal radices/Input
- Non-decimal radices/Output
- Non-transitive dice
- Nonoblock
- Nonogram solver
- Nth root
- Null object
- Number names
- Number reversal game
- Numbers divisible by their individual digits, but not by the product of their digits.
- Numbers in base 10 that are palindromic in bases 2, 4, and 16
- Numbers in base-16 representation that cannot be written with decimal digits
- Numbers k such that the last letter of k is the same as the first letter of k+1
- Numbers which are not the sum of distinct squares
- Numbers which are the cube roots of the product of their proper divisors
- Numbers whose binary and ternary digit sums are prime
- Numbers whose count of divisors is prime
- Numbers with equal rises and falls
- Numbers with prime digits whose sum is 13
- Numbers with same digit set in base 10 and base 16
- Numeric error propagation
- Numeric separator syntax
- Numerical and alphabetical suffixes
- Numerical integration
- Numerical integration/Adaptive Simpson's method
- Numerical integration/Gauss-Legendre Quadrature
- NYSIIS
O
- O'Halloran numbers
- Object serialization
- Odd and square numbers
- Odd squarefree semiprimes
- Odd word problem
- Odd words
- Old lady swallowed a fly
- Old Russian measure of length
- One of n lines in a file
- One-dimensional cellular automata
- One-time pad
- One-two primes
- OpenGL
- OpenGL/Utah teapot
- OpenWebNet password
- Operator precedence
- Optional parameters
- Orbital elements
- Order by pair comparisons
- Order disjoint list items
- Order two numerical lists
- Ordered partitions
- Ordered words
- Ormiston pairs
- Ormiston triples
- Overloaded operators
- Own digits power sum
P
- P-Adic numbers, basic
- P-value correction
- Padovan n-step number sequences
- Padovan sequence
- Pairs with common factors
- Palindrome dates
- Palindrome detection
- Palindromic gapful numbers
- Palindromic primes
- Palindromic primes in base 16
- Pan base non-primes
- Pancake numbers
- Pandigital prime
- Pangram checker
- Paraffins
- Parallel brute force
- Parallel calculations
- Parameterized SQL statement
- Parametric polymorphism
- Parse an IP Address
- Parse command-line arguments
- Parse EBNF
- Parsing/RPN calculator algorithm
- Parsing/RPN to infix conversion
- Parsing/Shunting-yard algorithm
- Partial function application
- Particle fountain
- Particle swarm optimization
- Partition an integer x into n primes
- Partition function P
- Pascal matrix generation
- Pascal's triangle
- Pascal's triangle/Puzzle
- Password generator
- Pathological floating point problems
- Peaceful chess queen armies
- Peano curve
- Pell numbers
- Garbage collection/Yes
- Parameter passing/By reference
- Parameter passing/By value
- Typing/Safe
- Typing/Unsafe
- Typing/Gradual
- Typing/Compatibility/Nominative, Duck
- Typing/Checking/Dynamic
- Typing/Checking/Static
- Programming Languages
- Programming paradigm/Dynamic
- Programming paradigm/Imperative
- Programming paradigm/Procedural
- Programming paradigm/Reflective
- Programming paradigm/Functional
- Programming paradigm/Object-oriented
- Programming paradigm/Generic