MinaCoding2025_Imitate

1 min read
Table of contents

ConcreteChars
For MinaCoding2025 Prompt 27: Imitate , ConcreteChars coded in Ruby is inspired by Nick Montfort’s Concrete Perl: https://nickm.com/poems/concrete_perl/ as well as the 256 bytes poemes. Instead of using Perl, the ruby code will be making concrete poems.
Poems
ac
["an", "ak", "s"]
["e", "af", "an", "n", "ae"]
["bb", "ac", "az", "ba", "u", "aw", "y"]
["ac", "a", "d", "g", "ay"]
awiap
bb
b
["w", "m", "a"]
["am", "j", "ao", "g", "aw"]
["bb", "ba", "az", "al", "ai", "aw", "ay"]
["b", "s", "al", "v", "k"]
awarb
bb
q
["ab", "y", "af"]
["m", "aj", "av", "a", "b"]
["ac", "as", "ae", "v", "ad", "x", "d"]
["q", "am", "ac", "f", "ax"]
xbban
ac
af
["as", "bb", "ba"]
["ay", "p", "c", "b", "aq"]
["ae", "p", "y", "ay", "ak", "ab", "az"]
["af", "x", "az", "m", "i"]
abalap
ae
Images
Ruby Code
use_random_seed Time.now.to_i / 2
x = ('a'..'bb').to_a.shuffle.reverse
y = ('a'..'bb').to_a.shuffle.reverse
#Output to a file
#.center(40) aligns the code to follow Form
File.open("filename", "w+") do |f|
f.puts("#{x[0].center(40)}\n")
f.puts("#{y.last(3)}\n".center(40))
f.puts("#{x.last(5)}\n".center(40))
f.puts("#{y.first(7)}\n".center(40))
f.puts("#{x.first(5)}".center(40))
f.puts("#{y[5]+y[10]+y[12]}".center(40))
f.puts(y[0].center(40))
end
0
Subscribe to my newsletter
Read articles from Kofi / Illestpreacha directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
