Add tasks for all the new languages
This commit is contained in:
parent
9dc3c2bb62
commit
bba7bfd280
13208 changed files with 134745 additions and 0 deletions
|
|
@ -0,0 +1,10 @@
|
|||
var seq = "_###_##_#_#_#_#__#__";
|
||||
var x = '';
|
||||
|
||||
loop {
|
||||
seq.tr!('01', '_#');
|
||||
say seq;
|
||||
seq.tr!('_#', '01');
|
||||
seq.gsub!(/(?<=(.))(.)(?=(.))/, {|s1,s2,s3| s1 == s3 ? (s1 ? 1-s2 : 0) : s2});
|
||||
(x != seq) && (x = seq) || break;
|
||||
}
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
class Automaton(rule, cells) {
|
||||
|
||||
method init {
|
||||
rule = sprintf("%08b", rule).chars.map{.to_i}.reverse;
|
||||
}
|
||||
|
||||
method next {
|
||||
var previous = cells.map{_};
|
||||
var len = previous.len;
|
||||
cells[] = rule[
|
||||
previous.range.map { |i|
|
||||
4*previous[i-1 % len] +
|
||||
2*previous[i] +
|
||||
previous[i+1 % len]
|
||||
}...
|
||||
]
|
||||
}
|
||||
|
||||
method to_s {
|
||||
cells.map { _ ? '#' : ' ' }.join;
|
||||
}
|
||||
}
|
||||
|
||||
var size = 10;
|
||||
var auto = Automaton(
|
||||
rule: 104,
|
||||
cells: [(size/2).of(0)..., 111011010101.digits..., (size/2).of(0)...],
|
||||
);
|
||||
|
||||
size.times {
|
||||
say "|#{auto}|";
|
||||
auto.next;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue