О Разделении Подпрограмм И Данных

NLP

Member
24.02.2014
5
0
#1
var y = function() { var x = 0 }

организм чувствует некоторый подвох в этом операторе - какой то он не отогональный чтоли
(может ктонибудь мне обяснит что это за зверь такой: и зачем он нужен при возможности динамичного объявления свойств: как и delete зачем нужен если есть сборщик мусора который придуман то для того чтобы не задумываться о добавлении и удалении памяти - короче я подозреваю что как то не всё складно в родном жаваскрипте)

внутри функции он создает локальные переменные которые используемые и видимые только порождающей функцией

а внутри глобального объекта он создает непонятные неудаляемые переменные

также организм отвергает замыкания и прочую трудную хрень - душа просит нормального структурного программирования с ооп

отсюда вопрос - что если совсем отказаться от создания локальных переменных функции и например использовать функции только как методы объектов, методы которые используют для своей работы свойства-переменные своего объекта - то есть ограничиться такой упрощенной ооп архитектурой: когда есть только объекты и их методы и их свойства, то есть когда всегда есть разделение данных и подпрограмм внутри объекта при этом есть глобальный объект и его методы и глобальные переменные для данных используемых глобальными методами

это получается некое упрощенное подмножество жаваскрипта, без упора на замыкания
- жизнеспособен ли такой воображаемый диалект?

языки делятся ли по этому признаку - по разделенности подпрограмм от структур данных ?
ну это как разделение структуры от оформления и от логики...

есть ли в природе такие ЯП в которых есть такое разделение