Delphi 2007: Что год текущий нам готовит?.. |
Из неофициальных источников появилась некоторая интересная информация по поводу развития Delphi в 2007 году.
Компания-разработчик нашего любимого RAD-средства, проанализировав пожелания Delphi-сообщества, изменила свои первоначальные планы на текущий год.
Основные моменты:
1) В марте 2007 года выйдет Delphi 2007 (win32)
Плохая новость: в мартовской версии Delphi 2007 не будет юникода;
Хорошая новость: юникод будет в середине лета!
И это не единственная хорошая новость! В мартовской версии Delphi 2007 обещают много интересных "вкусностей", в том числе DBX4 и полную поддержку VISTA.
2) В марте 2007 года должен появиться новый и очень интересный продукт — Delphi for PHP — полноценное RAD-средство для разработки на PHP.
3) Выход новых версий продуктов линейки Turbo предполагается в конце 2007 года.
4) И еще небольшой сюрприз: стоимость Turbo Delphi Pro снизилась до 250$.
Вот так, коротенько...
Елена Филиппова
Всего в теме 1215 сообщений
Добавить свое сообщение
Отслеживать это обсуждение
№ 645 12-02-2008 12:30 | |
Ответ на »сообщение 644« (Geniepro)
___________________________
Мне щас пришло в голову, что функция "вылить" может кого-то смутить...
Хорошо, определим ещё одну функцию -- "перелить" (из одной ёмкости в другую). Тогда решение будет таким: не_кипит = не . кипит
перелить откуда куда = налить куда (вылить откуда)
чашка_чаю = налить чайник вода
|> поставить (зажечь плита газ)
|> ждать_пока не_кипит
|> `насыпать` заварка
|> `перелить` чашка
|> `насыпать` сахар Вот таким вот простеньким конвейером из функций эту задачу можно решить в функциональном стиле... :о)
№ 644 12-02-2008 12:09 | |
Ответ на »сообщение 637« (Сергей Тарасов)
___________________________
>>> За чем же дело стало?
>>> Алгоритм "заварить чай" (http://festival.1september.ru/2004_2005/index.php?numb_artic=213562) из советского учебника информатики на функциональном языке - в студию :)
Неплохо было бы определиться, с какими значениями имеем дело, и какие операции для этих значений определены. То есть, составить представление о предметной области.
Исходное задание на императивном псевдоязыке: 1. Налить воду в чайник
2. Зажечь газ
3. Поставить чайник на плиту
4. Ждать, пока чайник закипит
5. Заварить чай
6. Налить чай в чашку
7. Насыпать сахар
Имеем такие сущности: вода, чайник, газ, плита, заварка, чашка, сахар, шкала_времени.
Над ними определены такие примитивные операции (используется хаскелл-подобный синтаксис): зажечь плита газ
поставить плита чайник
налить чайник вода
налить чашка чай
насыпать чайник заварка
насыпать чашка сахар
поместить шкала_времени чайник_на_плите
кипит чайник_на_плите
вылить чайник Также нам нужны некоторые дополнительные примитивы: пропускать_пока условие (x:xs) =
если (условие x) то x
иначе (пропускать_пока условие xs)
ждать_пока ф х = пропускать_пока ф $ поместить шкала_времени х
x |> f = f x
Итак, получаем: не_кипит = не . кипит
чашка_чаю = налить чайник вода
|> поставить (зажечь плита газ)
|> ждать_пока не_кипит
|> `насыпать` заварка
|> вылить
|> налить чашка
|> `насыпать` сахар
>>> М-дя... Пытаюсь представить, как будет выглядеть программа, если технологическая цепочка будет чуток подлиннее.
>>> (Geo)
>>> Вот-вот. Арктический лис...
>>> (Сергей Тарасов)
А теперь дело за вами -- представьте решение на Паскакале! Или на Лого... ;о)
№ 643 12-02-2008 11:52 | |
Ответ на »сообщение 640« (Geo)
___________________________
М-дя... Пытаюсь представить, как будет выглядеть программа, если технологическая цепочка будет чуток подлиннее.
Ну так условия изначально неравные были. Была дана готовая императивная программа (на естественном языке). Нужно было перевести дословно в функциональную.
Можно ведь и обратный пример привести. Попробуйте реализовать на Паскале Ханойские башни. Причем без рекурсии, поскольку это инструмент ФП ;-)
№ 642 12-02-2008 09:40 | |
Ответ на »сообщение 640« (Geo)
___________________________
Тогда подсветки парных скобок не было. :)
№ 641 12-02-2008 09:35 | |
Ответ на »сообщение 639« (Max Belugin)
___________________________
ЧашкаСЧаем = сНасыпанным(Сахаром, cНалитым(Чаем, Чашка))
,где
Чай = Заваренный(СухойЧай, Закипевший(ПоставленныйНа(
СЗажженымГазом(Плиту,
СНалитой(Водой, Чайник))))
Вот-вот. Арктический лис...
№ 640 12-02-2008 09:06 | |
Ответ на »сообщение 639« (Max Belugin)
___________________________
М-дя... Пытаюсь представить, как будет выглядеть программа, если технологическая цепочка будет чуток подлиннее.
Вспомнилось создание меню в борландовской TurboVision ;-)
№ 639 12-02-2008 06:28 | |
ЧашкаСЧаем = сНасыпанным(Сахаром, cНалитым(Чаем, Чашка))
,где
Чай = Заваренный(СухойЧай, Закипевший(ПоставленныйНа(
СЗажженымГазом(Плиту,
СНалитой(Водой, Чайник))))
№ 638 12-02-2008 06:19 | |
Ответ на »сообщение 637« (Сергей Тарасов)
___________________________
Чай = Насыпать(Сахар,Налить(Чашка,Заварить(ЖдатьСобытие(Кипение,Поставить(Зажечь(Плита),Налить(Чайник,Вода))))))
Наверное что то вроде того :)
Хотя лучше пусть мастера ФП ответят.
№ 637 12-02-2008 04:30 | |
Ответ на »сообщение 633« (Geniepro)
___________________________
Да, но только потому что уже со школы людям забивают голову паскалевским мышлением. Если бы Вы в школе учили ФП, то в взрослом возрасте для Вас это было бы так же естественно, как сейчас для Вас Паскаль...
За чем же дело стало?
Алгоритм "заварить чай" ( http://festival.1september.ru/2004_2005/index.php?numb_artic=213562) из советского учебника информатики на функциональном языке - в студию :)
№ 636 11-02-2008 13:17 | |
Ответ на »сообщение 633« (Geniepro)
___________________________
>>> Если бы Вы в школе учили ФП, то в взрослом возрасте для Вас это было бы так же естественно, как сейчас для Вас Паскаль...
Извините, Ваше "Вы" касается меня лично или это некая литературная форма обезличивания? ;-)
Я не учил в школе Паскаль. Более того, я вообще не учил в школе программирование. И Паскаль у меня был далеко не первым языком. Э-э-э четвертым, или даже пятым, если учесть полгода ковыряния на Си. Но Паскаль оказался наиболее подходящим языком программирования для решения широкого класса стоящих передо мной задач. Но не единственным. Есть задачи, которые я делаю на PHP, на JavaScript и даже (О, Боже!) на VBA. Мелочевку опустим. Если у меня появятся задачи, которые удобнее будет делать на ФЯ, то освою что-нибудь функциональное. Не вопрос.
А насчет сложности... нет, даже не функциональных языков, а соответствующего им мышления, я делаю вывод вовсе не по школьникам. А по взрослым людям. Серьезным людям. Они программирования вообще не знают, но зато специалисты в своей области. И зачастую имеют по два высших образования. Они быстро врубаются, когда описываешь что-то в терминах действий, но начинают пробуксовывать, когда речь заходит о понятийных моделях.
Добавить свое сообщение
Отслеживать это обсуждение
Дополнительная навигация: |
|