Здравствуйте, Федор Тюленев, Вы писали:
ФТ>Рекурсия сложна для реализации.
Да ладно.
ФТ>Есть стек вызовов и гораздо проще сделать его статичным.
Зачем?
ФТ>И если не будет постоянной и острой необходимости рисовать фракталы, то можно им и обойтись.
Без рекурсии жизни нет.
ФТ>В принципе, все, что для этого нужно — прикрутить динамическое выделение памяти под стек вызовов — как под переменные и всего делов.
Я думаю тебе просто необходимо ознакомиться с вычислительной моделью схемы.
ФТ>А он вообще не ругливый.
Это очень плохо.
О всех ошибках нужно сообщать пользователю.
ФТ>Если что-то не так, он просто не будет работать. В данном случае при анализе обратной польской записи выражения интерпретатор решил что м,н — ошибочная десятичная дробь и пошел дальше.
Ахринеть!
Кстати, а почему у меня весит штук 20 профтов?
Каждый из которых сожрал 14 метров памяти?
Благо process explorer умеет прибивать дерево процессов целиком.
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, MikePetrichenko, Вы писали:
ФТ>>Думаете стоит сделать?
MP>Думаю нет. Мое мнение в данном вопросе однозначно — продукт (я еще раз подчеркну, как самостоятельная среда разработки (программирования)) не выдерживает никакой критики.
MP>С другой стороны — если переделать это продукт как специализированную систему с встроенным скриптовым языком (я тут выше писал) — то тогда рекурсия действительно не нужна (хотя, зависит от того, для чего система предназначена).
Здравствуйте, WolfHound, Вы писали:
WH>Здравствуйте, Федор Тюленев, Вы писали:
ФТ>>Рекурсия сложна для реализации. WH>Да ладно.
Я вообще когда его делал, у меня интернета не было — только букварь (без шуток). Поэтому если чего-то не знал — сам придумывал.
ФТ>>Есть стек вызовов и гораздо проще сделать его статичным. WH>Зачем?
Я уж и не помню. Не было практической необходимости. А ВУЗ я в 2000 году закончил и уже подзабыл что там и как "положено" делать.
ФТ>>И если не будет постоянной и острой необходимости рисовать фракталы, то можно им и обойтись. WH>Без рекурсии жизни нет.
Да сказал же, сделаю!
WH>Ахринеть!
Точно.
WH>Кстати, а почему у меня весит штук 20 профтов? WH>Каждый из которых сожрал 14 метров памяти? WH>Благо process explorer умеет прибивать дерево процессов целиком.
А это потому, что там как на блок-схеме. Если есть Начало, должен быть и Конец.
Мой последний пример следов не оставляет.
Здравствуйте, Федор Тюленев, Вы писали:
ФТ>Я вообще когда его делал, у меня интернета не было — только букварь (без шуток). Поэтому если чего-то не знал — сам придумывал.
И что рекурсия не придумалась?
ФТ>Я уж и не помню. Не было практической необходимости. А ВУЗ я в 2000 году закончил и уже подзабыл что там и как "положено" делать.
Гм. Я думал это должны на зубок знать все кто пытается делать языки.
Я вот периодически языки изобретаю. Правда у меня тут все совсем цинично... одни демоны программы пишут, а другие исполняют.
ФТ>Да сказал же, сделаю!
Не надо нервничать.
WH>>Ахринеть! ФТ>Точно.
Что точно? Срочно фиксить.
Иначе это даже в качестве курсовой нормальный профессор не примет.
ФТ>А это потому, что там как на блок-схеме. Если есть Начало, должен быть и Конец.
Просто звиздец. Я думал с использованием блоксхем только в школе на уроках информатики программируют.
ФТ>Мой последний пример следов не оставляет.
Если вышли за приделы первой процедуры то все. Конец.
Я думаю это сделать даже проще чем рекурсию.
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, WolfHound, Вы писали:
WH>Здравствуйте, Федор Тюленев, Вы писали:
ФТ>>Рекурсия сложна для реализации. ФТ>>Есть стек вызовов и гораздо проще сделать его статичным. ФТ>>И если не будет постоянной и острой необходимости рисовать фракталы, то можно им и обойтись. ФТ>>В принципе, все, что для этого нужно — прикрутить динамическое выделение памяти под стек вызовов — как под переменные и всего делов. ФТ>>А он вообще не ругливый. ФТ>>Если что-то не так, он просто не будет работать. В данном случае при анализе обратной польской записи выражения интерпретатор решил что м,н — ошибочная десятичная дробь и пошел дальше.
Здравствуйте, Mr.Cat, Вы писали:
WH>> Просто звиздец. Я думал с использованием блоксхем только в школе на уроках информатики программируют. MC>Но-но! Между прочим, ГОСТ 19.701-90 (ИСО 5807-85). MC>
Я не понял. Там что прописано что программа профт должна висеть пока не вызовут "Конец."?
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Здравствуйте, WolfHound, Вы писали:
ФТ>>Мой последний пример следов не оставляет. WH>Если вышли за приделы первой процедуры то все. Конец. WH>Я думаю это сделать даже проще чем рекурсию.
Вообще-то так и происходит. Как правило.
Короче ладно, я все понял.
Вот если бы эту программу пинали вот так по делу, да понемногу, может за 4 года чего-нибудь дельное и получилось.
Пойду дорабатывать.
Здравствуйте, Федор Тюленев, Вы писали:
ФТ>Вообще-то так и происходит. Как правило.
А почему они у меня висели?
ФТ>Короче ладно, я все понял. ФТ>Вот если бы эту программу пинали вот так по делу, да понемногу, может за 4 года чего-нибудь дельное и получилось.
Для того чтобы эта программа у профессионалов не вызывала гомерический хохот нужно не дорабатывать, а изучить хотябы схему и склонировать ее рантайм.
Нужна сборка мусора (простой мусорщик делается довольно легко), continuations (при наличии мусорщика делаются легко), оптимизация хвостовой рекурсии (при наличии continuations делается очень легко).
ФТ>Пойду дорабатывать.
Тут полностью переделовать надо.
... << RSDN@Home 1.2.0 alpha rev. 745>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
SR>Что общего между этим "кодом" и "Увеличивать диаметр круга на 10 единиц, каждый раз отрисовывая экран, пока диаметр круга 1 меньше ширины квадрата 1"? SR>И точка в конце оператора прямо насовсем к месту и по-русски...
Ну точку, в конце могли бы заменить на ; А так все вполне нормально и переключать раскладки по тыщу раз не надо.
SR>Сначала глаза сломаешь, потом язык, а потом и до мозга очередь дойдёт.
В голове стериотипы сначала надо сломать и все будет нормально.
Здравствуйте, Федор Тюленев, Вы писали:
ФТ>Здравствуйте, Аноним, Вы писали:
А>>Ну лады. Все ясно. Надо посоветовать авторам ехать в АнадЫрь и не парить мозги своим русским языком.
ФТ>Спасибо за приглашение в АнадЫрь, но нам и здесь плохо.
Здравствуйте, Федор Тюленев, Вы писали:
ФТ>Здравствуйте, 3tone, Вы писали:
3>>Здравствуйте, Федор Тюленев, Вы писали:
ФТ>>>Так что если есть что сказать по существу, то пожалуйста, сначала скачайте и посмотрите что можно сделать на ПРОФТе, 3>>а почему оно поставилось в %system32%\proft ? хотя честно обещало ставится в %ProgramFiles%? 3>>Я ярлык в "Пуске" вообще считает папкой запуска "F:\Program Files\PROFT5\"... 3>>1ое апреля вроде уже нескоро...
ФТ>В папку %system32%\proft ставится интерпретатор proft5.exe. В папку F:\Program Files\PROFT5\ ставятся ПРОФТ-программы с расширением v. Они регистрируются в системе и запускаются через систему этим интерпретатором. Теперь любую ПРОФТ-программу можно запускать как ЕХЕшник.
Я патологически не переношу программы, которые устанавливаются куда-то еще, кроме заданного каталога. А тем более в %SystemRoot% и иже с ним. Так что ф топку.
Здравствуйте, Closer, Вы писали:
C>У меня такой вопрос: расскажите немного о себе. Страна должна знать своих героев! Сколько вам лет например, где учились, сколько "нобелевских" уже срубили?
Здравствуйте, Федор Тюленев, Вы писали:
M>>Какой электронной таблицей? Какого формата? Как в нее импортировать, из нее экспортировать данные? Завтра запросы увеличатся, как перейти на более мощные СУБД?
ФТ>Собственной. С прямым вводом-выводом. На крайняк — экспорт в Ексель. Переписать собственную СУБД. Но пока запросы вряд ли увеличатся.
Нда дядя Федор... Ждем тогда еще собственную ОС.
ФТ>>>2. Работать с данными самым простым и очевидным образом — действия Установить и Получить. M>>Слишком мало. Как искать зависимости между таблицами, например?
ФТ>Так это я для примера, там полный лист всяких действий. И что значит зависимости? Я ж тупой. Со мной на разговаривать попроще.
ФТ>>>3. Действия ВыбратьГде... Позволяющие самым простым и очевидным образом сделать запрос к таблице. M>>У меня есть таблица Пользователь, таблица Товар и таблица Пользователь-Товар. Как получить отчет Пользователь-Товар одним запросом?
ФТ>Не у нас в деревне двойных таблиц нетути. Есть Пользователи, есть Товары. По логике должна быть таблица, например Покупки, где записано кто и что покупал.
А деревня как называется? Простоквашино?
ФТ>Тогда если мы хотим узнать, что конкретный чувак покупал, пишем так:
ФТ>
ФТ>ПокупкиПользователя Это Модуль ("Таблица").
ФТ>Покупки:ВыбратьГдеЧисло("Пользователь"; "="; ЗаданныйИД; ПокупкиПользователя).
ФТ>
ФТ>"Пользователь" — имя поля.
ФТ>А если мы хотим узнать сколько он купил помидоров пишем так:
ФТ>
ФТ>ПокупкиПользователя:ВыбратьГдеЧисло("Товар"; "="; ИДПомидора; КупленныеПомидоры).
ФТ>НуИСкока = КупленныеПомидоры:Количество. // Количество - имя поля родной таблицы
ФТ>
ФТ>И так несколько запросов по порядку. Одним запросом желаемое получить нельзя. ФТ>Наивно? Да. Смешно? Может быть. Однако работает. И из базы в десятки тысяч строк запросы выполняются за секунды.
Афигеть
Рекомендую подумать над использованием в качестве движка полноценной СУБД с языком SQL. А не изобретать собсвенный, куцый, проблемно масштабируемый велосипед.
Здравствуйте, Федор Тюленев, Вы писали: ФТ>И все это от флакона неотделимо. Вот и ходят люди вот с такими огромными бутылями. ФТ>Нет уж спасибо. Уж слишком большая зависимость. ФТ>Так в общем, что получается. Куча всего, все это совместить, чтоб вместе работало, да если еще нужна лицензионность, то все это еще и купить нужно на клиентские места. Или может лицензионный MS SQL SERVER уже бесплатный стал, я честно говоря, не слежу за событиями?
Да-да, Федор, вы совершенно не следите за событиями.
100% бесплатных реализаций SQL — пруд пруди. Вы за всю жизнь не напишете аналога банального MS SQL Server Express Edition, ни по функциональности, ни по качеству.
В общем, вы продаете воздух.
ФТ> Это тоже не надо упускать из виду. Нужен был лицензионно чистый программный продукт не требующий приобретения доп. программ на клиентские компьютеры. ФТ>В общем, Вы меня запутали. То бери, это бери. Вот вы мне скажите ОДИН инструмент, чтоб я не нем быстренько написал финансовую программу. И чтоб на клиента ничего не моего не устанавливать (framework'и и офисы всякие, даже библиотека VB6 не проходит).
Уже упомянутый Windows Scripting Host. Насчет неустановки на клиента — не надо лукавить, ваш профт вон вовсе в system32 ставится, а без него программы на нем — всего лишь набор букв.
... << RSDN@Home 1.2.0 alpha rev. 677>>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Здравствуйте, Mr.Cat, Вы писали:
MC>Здравствуйте, Федор Тюленев, Вы писали:
ФТ>>Хоть куда-то я попал. Так этож Express! Кто ж его использует! MC>Как кто? Те, кому нужна СУБД и кого не пугают ограничение на 4ГБ для одной БД (вроде так), отсутствие полнотекстового поиска (fulltext search — далеко не всем нужен) и Management Studio (графическое средство администрирования).
Ну, это как бы теоретический предикат. На практике его применяют очень много где — благодаря разрешению на редистрибуцию, типичное решение для современных приложений — тащить с собой экспресс. И при установке давать пользователю выбор — создать базу в существующем сервере, или поставить новый экземпляр експресса.
MC>Ну и? Эра дискет и HDD на 200Мб прошла. Единственное — если ПО распространяется через инет. Но и в этом случае выкачать один раз 30Мб (для java и python — несколько меньше) — не проблема. К тому же Вы забываете, что функциональность означенных фреймворков В РАЗЫ выше, чем у ПРОФТА.
Скажешь тоже — в разы!
Речь идет про несколько десятичных порядков.
Просто автор обладает чудовищно узким кругозором.
Если бы он попробовал сделать какую-нибудь банальную вешь на своем профте — например, написать клиента к API fotolia.com, то быстро бы понял, что трехсоткилобайтные фреймворки перестали интересовать народ лет 15 уж как. В наше время немодно писать вручную разбор HTTP, base64 и xml.
MC>И когда ПРОФТ достигнет сходной функциональности — вот тогда и посмотрим, сколько он будет весить.
Боюсь, не дождемся.
... << RSDN@Home 1.2.0 alpha rev. 677>>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Здравствуйте, <Аноним>, Вы писали:
А>Что вы об этом скажете?
Скажу то, что думаю.
А думаю я то, что идея заменить программирование на английском языке программированием на русском — симптом некомпетентности, граничащей с идиотизмом.
На всякий случай поясняю: программирования на английском языке не существует и в ближайшее время не предвидится. Серъезно обсуждать вопросы омонимии ключевого слова set в контексте литературного английского может только крайне далекий от программирования человек.
... << RSDN@Home 1.2.0 alpha rev. 677>>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Здравствуйте, Федор Тюленев, Вы писали:
ФТ>Пытаетесь написать глубокий рекурсивный алгоритм на языке в котором рекурсия в принципе запрещена и в справке вы о ней ни слова не найдете. Если Вы обратили внимание, факториал вычислялся тоже без рекурсии. Учитывая что в ПРОФТе нет даже безусловного перехода (так это называлось на МК-61 ), то рекурсия — не самая страшная потеря.
Прошу прощения, но не могу не спросить, вы к этому