Update:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
use strict;
use warnings;
require "Constraint.pm";
my $var1 = Constraint::Var::Number->new;
my $var2 = Constraint::Var::Number->new;
my $var3 = Constraint::Var::Number->new;
my $var4 = Constraint::Var::Number->new;
my $var5 = Constraint::Var::Number->new;
my $var6 = Constraint::Var::Number->new;
my $evaluator = Constraint::Evaluator->new;
$evaluator->connect([$var1, '='], ['+', $var2], ['+', $var3]);
$evaluator->connect([$var2, '='], ['+', $var4], ['#', $var6]);
$evaluator->connect([$var3, '='], ['+', $var5], ['#', $var6]);
$var4->set(5);
$var5->set(9);
$var6->set(2);
$evaluator->eval;
print $var1->get;
\n\n
<!--EDIT|esskar|1113509304-->