Задан формат файлов .vars:
file1.vars
a = 10
b = 15
c = a
кроме декларации переменных есть поддержка импорта из других файлов, в этом случае можно будет обращаться к переменным, заданным в импортированном файле:
file2.vars
import file1
d = 40
e = a
foo = c
как вы можете заметить в file2.vars использовались переменные a и b из файла file1.vars.
Файл file2.vars можно импортировать в другом файле итд:
file3.vars
import file2
a3 = e
b3 = d
foo3 = foo
Являются ли импорты транзитивными, то есть доступны ли переменные a, b, c в файле `file3.vars - остается на ваше усмотрение.
В файле может быть больше одного импорта.
Задача написать на языке Scala приложение, которое при передаче ему на вход имени файла будет выводить значения всех объявленных в нем переменных, или ошибку, если что-то пошло не так.
Ошибки могут быть связаны с использованием нигде не объявленных переменных, конфликтах в объявлении переменных, циклических зависимостях и т.д.
Важно чтобы в случае ошибки выводилось понятное пользователю сообщение о том в каком файле и в чем ошибка.