Awasunu 0.0.1
Awasunu
License
The background context for my invented language is an alternative history where the United States had a civil war between Japanese Pacific State loyalists, and French Atlantic State loyalists. The United State had just collapsed under the election of Donald J Trump, with France purchasing territories that once belonged to it. A neo-imperial Japan took over the western seaboard, and taking all territories to the left of the rocky mountains. Containment Man was about a mad scientist that experimented on war prisoners during this interwar, until retiring to become an animator after the death of his half Japanese and half French wife.
Any use of aspects of my constructed language, control flow logic provided herein is subject to the condition that it remain coupled with my original historical critique. Recontextualizing these assets into commercial games, comics, and other services without my express permission is in contravention. This includes reverse engineering.
Pre Built Interpreter
This is for the interpreter portion.
line = 0
system("clear")
puts "Awasunu 0.0.1 ( main ) [ crystal ] on linux"
loop do
print " >>> "; keyword = gets
if keyword == "encrire"
print "..."; token_set = gets.not_nil!.chomp
system("./bin/encrire/encrire '#{token_set}'")
elsif keyword == "parle grammaire"
print "..."; token_set = gets.not_nil!.chomp.split(" ")
system("./bin/lists/parle_grammaire '#{token_set[0]}' '#{token_set[1]}' '#{token_set[2]}'")
elsif keyword == "baguette"
print "..."; token_set = gets.not_nil!.chomp.split(" ")
system("./bin/vos/baguette '#{token_set[0]}' '#{token_set[1]}'")
elsif keyword == "coupe"
print "..."; token_set = gets.not_nil!.chomp.split(" ")
system("./bin/vos/coupe '#{token_set[0]}' '#{token_set[1]}'")
elsif keyword == "cuicre"
print "..."; token_set = gets.not_nil!.chomp.split(" ")
system("./bin/vos/cuicre '#{token_set[0]}' '#{token_set[1]}'")
elsif keyword == "guillotine"
print "..."; token_set = gets.not_nil!.chomp.split(" ")
system("./bin/vos/guillotine '#{token_set[0]}' '#{token_set[1]}'")
elsif keyword == "livretude"
print "..."; token_set = gets.not_nil!.chomp.split(" ")
system("./bin/vos/livretude '#{token_set[0]}' '#{token_set[1]}' '#{token_set[2]}' '#{token_set[3]}' '#{token_set[4]}'")
elsif keyword == "mange"
print "..."; token_set = gets.not_nil!.chomp.split(" ")
system("./bin/vos/mange '#{token_set[0]}' '#{token_set[1]}'")
elsif keyword == "parlons"
print "..."; token_set = gets.not_nil!.chomp.split(" ")
system("./bin/vos/parlons '#{token_set[0]}' '#{token_set[1]}' '#{token_set[2]}' '#{token_set[3]}' '#{token_set[4]}' '#{token_set[5]}'")
elsif keyword == "tete de crescent"
print "..."; token_set = gets.not_nil!.chomp.split(" ")
system("./bin/vos/tete_de_crescent '#{token_set[0]}' '#{token_set[1]}'")
elsif keyword == "cls"
system("clear")
elsif keyword == "exit"
abort
else
puts "\nErno Unrecognized keyword"
end
line = line + 1
end
Orchestrated Meta-Compiler
./auto_parser 3 :baguette "def baguette(verb, subject)
v = verb
s = subject
%Q(Baguette #{verb} #{subject}.)
end
print %Q(BIANCA: )
puts baguette(ARGV[0], ARGV[1])" :tete_de_crescent "def tete_de_crescent(verb, subject)
v = verb
s = subject
%Q(Tete Du Crescent #{verb} #{subject}.)
end
print %Q(BIANCA: )
puts tete_de_crescent(ARGV[0], ARGV[1])" :kosan "bot_name = %Q(BIANCA)
sore_kosan = Proc(Float64, Float64, String).new { | x, probability |
x > probability ? %Q(#{bot_name}: #{x} has reached the highest limit in probability.) : %Q(#{bot_name}: #{x} has not reached the highest limit in probability.)
}
shikashi_kosan = Proc(Float64, Float64, String).new { | x, probability |
x < probability ? %Q(#{bot_name}: #{x} has reached the lowest limit in probability.) : %Q(#{bot_name}: #{x} has not reached the lowest limit in probability.)
}
matawa_kosan = Proc(Float64, Float64, Float64, String).new { | x, first_probability, second_probability |
x > first_probability && x < second_probability ? %Q(#{bot_name}: #{x} is floating around medium probability.) : (#{bot_name}: #{x} is not floating around medium probability.)
}
puts sore_kosan.call(ARGV[0].to_f, ARGV[1].to_f)
puts shikashi_kosan.call(ARGV[2].to_f, ARGV[3].to_f)
puts matawa_kosan.call(ARGV[4].to_f, ARGV[5].to_f, ARGV[6].to_f)"
Tactical Dialogue Engine
You can find the tactical dialogue engine that came out of this here: Roll For Initiative
Awasunu
- 0
- 0
- 0
- 0
- 0
- 20 days ago
- May 31, 2026
Thu, 04 Jun 2026 22:30:20 GMT