view 1-Ruby/logic.rb @ 44:6347bacb3be7

Add more notes about the DSL while I think about it Note: Several things don't make sense
author IBBoard <dev@ibboard.co.uk>
date Mon, 18 Sep 2017 20:53:36 +0100
parents e5b84cc7bc29
children
line wrap: on
line source

#! /usr/bin/env ruby

x = 4

# "if" block is "if… end" - no "then" required
if x == 4
	puts "x equals 4"
end

# Python- and Perl-like following logic also works
puts "x equals 4" if x == 4
puts "x equals 4" unless x != 4

# Negation has many forms.
# Simple logic:
if x != 5
	puts "x not equal 5"
end

# Two options on negation
if !(x == 5)
	puts "x not equal 5"
end

if not x == 5
	puts "x not equal 5"
end

# "unless" blocks instead of "if"
unless x != 4
	puts "x equal 4"
else
	puts "x not equals 4"
end

# "then" is optional, except in single line statement
if x == 4 then puts "x equal 4" end
if x == 4 then
	puts "x equal 4"
end
if x == 4
	puts "x equal 4"
end
# The following line gives:
#   logic.rb:…: syntax error, unexpected tIDENTIFIER, expecting keyword_then or ';' or '\n'
#   if x == 4 puts "x equal 4" end
#
# if x == 4 puts "x equal 4" end