Member
Сообщений: 121
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 24.01.2003
|
Как выбрать программу для программирования -
13.03.2003, 20:43
Предлагается пофилософствовать на тему: “Почему Smalltalk, как эффективное средство реализации сложных проектов, до сих пор не стал достаточно популярным в России, и какие практические действия следует предпринять сегодня, чтобы завтра ситуация изменилась к лучшему?”
|
|
|
Member
Сообщений: 121
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 24.01.2003
|

14.03.2003, 13:40
Существует мнение, что во всем виноват по-прежнему низкий спрос на высокие информационные технологии....
|
|
|
Guest
|

23.05.2003, 03:12
Цитата:
Originally posted by SergeySS
[b]Существует мнение, что во всем виноват по-прежнему низкий спрос на высокие информационные технологии....
|
Может быть о нем мало кто знает? 
Пеклама - сильная вещь и её нельзя не принимать во внимание...
|
|
|
Member
Сообщений: 366
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 02.01.2004
|

02.01.2004, 15:30
хе хе, аж 6 русскоязычных отметилось 
что касается темы, то человек более-менее знакомый с смолтолк, наверно, уже прочитал кучу буржуйских статей и вопрос по сути риторический. будем считать, что это просто приглашение к общению Ж)
условия для эффективного использования языков позднего связывания появились не так давно, а ниша плотно занята сами понимаете чем. Чтобы смолтоком заинтерсовались (в россии), нужно чтобы гипотетическая крутизна была доказана в реальных успешных проектах, да так, чтобы у менеджеров не было сомнений: "это дейсвтвительно сила, и стоит тратить ресурсы на стартап другой технологии".
Так что остается пока расти профессионально, вдохновляясь западными орлами.
что касается людей оставивших смоллток, то думаю, из тех кто почувсвовал его вкус таких крайне немного. Я как-то умудрился выполнить за два дня работу (будучи почти полным новичком), которую ну просто бы не смог адекватно выполнить за пару недель (на с? на питоне?). С той поры я знаю, что мне надо и никуда не спешу.
|
|
|
Member
Сообщений: 366
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 02.01.2004
|

02.01.2004, 15:30
хе хе, аж 6 русскоязычных отметилось 
что касается темы, то человек более-менее знакомый с смолтолк, наверно, уже прочитал кучу буржуйских статей и вопрос по сути риторический. будем считать, что это просто приглашение к общению Ж)
условия для эффективного использования языков позднего связывания появились не так давно, а ниша плотно занята сами понимаете чем. Чтобы смолтоком заинтерсовались (в россии), нужно чтобы гипотетическая крутизна была доказана в реальных успешных проектах, да так, чтобы у менеджеров не было сомнений: "это дейсвтвительно сила, и стоит тратить ресурсы на стартап другой технологии".
Так что остается пока расти профессионально, вдохновляясь западными орлами.
что касается людей оставивших смоллток, то думаю, из тех кто почувсвовал его вкус таких крайне немного. Я как-то умудрился выполнить за два дня работу (будучи почти полным новичком), которую ну просто бы не смог адекватно выполнить за пару недель (на с? на питоне?). С той поры я знаю, что мне надо и никуда не спешу.
|
|
|
Member
Сообщений: 366
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 02.01.2004
|

02.01.2004, 15:30
хе хе, аж 6 русскоязычных отметилось 
что касается темы, то человек более-менее знакомый с смолтолк, наверно, уже прочитал кучу буржуйских статей и вопрос по сути риторический. будем считать, что это просто приглашение к общению Ж)
условия для эффективного использования языков позднего связывания появились не так давно, а ниша плотно занята сами понимаете чем. Чтобы смолтоком заинтерсовались (в россии), нужно чтобы гипотетическая крутизна была доказана в реальных успешных проектах, да так, чтобы у менеджеров не было сомнений: "это дейсвтвительно сила, и стоит тратить ресурсы на стартап другой технологии".
Так что остается пока расти профессионально, вдохновляясь западными орлами.
что касается людей оставивших смоллток, то думаю, из тех кто почувсвовал его вкус таких крайне немного. Я как-то умудрился выполнить за два дня работу (будучи почти полным новичком), которую ну просто бы не смог адекватно выполнить за пару недель (на с? на питоне?). С той поры я знаю, что мне надо и никуда не спешу.
|
|
|
Member
Сообщений: 366
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 02.01.2004
|

02.01.2004, 15:30
хе хе, аж 6 русскоязычных отметилось 
что касается темы, то человек более-менее знакомый с смолтолк, наверно, уже прочитал кучу буржуйских статей и вопрос по сути риторический. будем считать, что это просто приглашение к общению Ж)
условия для эффективного использования языков позднего связывания появились не так давно, а ниша плотно занята сами понимаете чем. Чтобы смолтоком заинтерсовались (в россии), нужно чтобы гипотетическая крутизна была доказана в реальных успешных проектах, да так, чтобы у менеджеров не было сомнений: "это дейсвтвительно сила, и стоит тратить ресурсы на стартап другой технологии".
Так что остается пока расти профессионально, вдохновляясь западными орлами.
что касается людей оставивших смоллток, то думаю, из тех кто почувсвовал его вкус таких крайне немного. Я как-то умудрился выполнить за два дня работу (будучи почти полным новичком), которую ну просто бы не смог адекватно выполнить за пару недель (на с? на питоне?). С той поры я знаю, что мне надо и никуда не спешу.
|
|
|
Member
Сообщений: 366
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 02.01.2004
|

02.01.2004, 15:30
хе хе, аж 6 русскоязычных отметилось 
что касается темы, то человек более-менее знакомый с смолтолк, наверно, уже прочитал кучу буржуйских статей и вопрос по сути риторический. будем считать, что это просто приглашение к общению Ж)
условия для эффективного использования языков позднего связывания появились не так давно, а ниша плотно занята сами понимаете чем. Чтобы смолтоком заинтерсовались (в россии), нужно чтобы гипотетическая крутизна была доказана в реальных успешных проектах, да так, чтобы у менеджеров не было сомнений: "это дейсвтвительно сила, и стоит тратить ресурсы на стартап другой технологии".
Так что остается пока расти профессионально, вдохновляясь западными орлами.
что касается людей оставивших смоллток, то думаю, из тех кто почувсвовал его вкус таких крайне немного. Я как-то умудрился выполнить за два дня работу (будучи почти полным новичком), которую ну просто бы не смог адекватно выполнить за пару недель (на с? на питоне?). С той поры я знаю, что мне надо и никуда не спешу.
|
|
|
Guest
|

10.01.2004, 20:13
Добрый день.
Если честно, я не специалист в SmallTalk. Однако то, что я прочитал о нем, меня не убедило в том, что SmallTalk чем-то кардинально отличается от других ОО языков программирования.
Есть ли еще какие-нибудь "фичи" у него, помимо удобного ОО программирования?
Для того, чтобы понять, что такие "фичи" бывают, предлагаю познакомиться с http://sys01.narod.ru/pl-new-1.htm .
Буду признателен за информацию и критику.
|
|
|
Member
Сообщений: 82
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 19.02.2003
|

11.01.2004, 03:47
Убеждать будет долго, да и нужно ли. Тем более не попробовав не поймешь.
Хотел бы сделать маленькое замечание по поводу языков.
В большинстве случаев языки программирования рассматриваются с точки зрения вычислительной математики. Также языки рассматриваются через призму аппаратуры, на которой они работают.
В то время как в коммерческой индустрии на первый план выходит социологическая составляющая языка. То, как язык уживается с человеком и его задачами.
Например, как с точки зрения вычислительной математики рассмотреть компьютерное рисование, создание музыки, набросок прототипа визуального приложения, апробацию идей шаровары, обкатку юзабилити...
Вот Smalltalk и является таким социально-направленным языком. Он для человека является карандашом для рисования, в то время как другие языки - стрелками на клавиатуре.
В нем легко оперировать с нужными тебе объектами, создавать новые объекты и приложения на их основе. От идеи до реализации проходит совсем немного времени. Язык становится минимальной прослойкой между разумом и машиной.
Истинная ценность Smalltalk, это его immediacy - непосредственность. И конечно хорошая выразительность - требуется сравнительно меньше кода.
P.S. Чисто вычислительные языки тоже нужны. Но это уже что-то из серии Haskell, Ocalm, Erlang. Такие как Java просто отпадают, потому что не решают хорошо ни одной задачи.
|
|
|
Guest
|

14.01.2004, 00:06
Цитата:
Убеждать будет долго, да и нужно ли. Тем более не попробовав не поймешь.
|
Убеждать долго не нужно поскольку вопрос более или менее конкретный.
Цитата:
Хотел бы сделать маленькое замечание по поводу языков.
В большинстве случаев языки программирования рассматриваются с точки зрения вычислительной математики. Также языки рассматриваются через призму аппаратуры, на которой они работают.
В то время как в коммерческой индустрии на первый план выходит социологическая составляющая языка. То, как язык уживается с человеком и его задачами.
Например, как с точки зрения вычислительной математики рассмотреть компьютерное рисование, создание музыки, набросок прототипа визуального приложения, апробацию идей шаровары, обкатку юзабилити...
|
В этом я совершенно с Вами согласен. Это одна из причин, почему у меня возникает желание разработать новый язык программирования.
Цитата:
Вот Smalltalk и является таким социально-направленным языком. Он для человека является карандашом для рисования, в то время как другие языки - стрелками на клавиатуре.
|
Вот это уже интересно. Я сам по специальности физик и работаю с системами аналитических вычислений. У меня сразу же возникло несколько вопросов:
1) Использовался ли Smalltalk в области аналитических вычислений (это вычисления, в которых оперируют мат. формулами и мат. объектами)?
2) Сложно ли "подстроить" Smalltalk для той области знаний, в которой пользователь работает? Например, для той же математики.
|
|
|
Member
Сообщений: 366
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 02.01.2004
|

14.01.2004, 13:24
Цитата:
Убеждать долго не нужно поскольку вопрос более или менее конкретный.
|
видимо, все-таки, не так уж и конкретен если вы сопоставив характеристики Smalltalk (название пишется только с одной прописной буквой) , характеристиками других языков и собственными требованиями к языку, сделали быстрый вывод ("кроме удобного ОО ничего такого нет").
Возмем ваши критерии на страничке и соотнесем их, например, с работой в современной среде Squeak Smalltalk. Я сразу оговорюсь, что не эксперт в Squeak и не всегда уверен в том, что вы подразумевали написав то или иное требование. Однако попробуем:
Продуманный интерфейс взаимодействия человека и программы (и, программы и программы).
Smalltalk грубо можно считать родиной удобных инерфейсов (см. историю его появления). Для Squeak: http://minnow.cc.gatech.edu/squeak/4
Система накопления фактов и знаний.
Не совсем понял, что имеется в виду, но все что делается идет в image и Smalltalk обладает рефлексией, - информацию о системе быстро выуживать. Рефлексия Smalltalk очень глубока
Оптимизация.Знания + мета-знания = оптимальная программа
Тоже не очень понятно. Но есть такое правило: "сделай правильно, а потом сделай быстро" (гибкость Smalltalk легко позволяет модифицировать код, хоть в его процессе работы приложения)
Надъязыковой подход..
Не очень понятно. Стандратный подход в Smalltalk(да и не только) - создание предметной модели с определенной семантикой. Метауровень нужен больше для рефлексии самой системы - использование его для прикладных задач не рекомундуется (усложняет восприяте).
Версионность.
Версии методов в Squeаk сохраняются и доступны для просмотра и отката. Кроме того есть и другие средства поддержки .
Слияние текста программы и кода.
Возможность внесения изменений в программы после компиляции. Нужна Версионность.
В Smalltalk доведено до предела. В программу можно вносить изменения на этапе выполнения (фактически если брать Smalltalk в целом, то так происходит всегда).
Автоматическое определение качества программы.
Есть пакет Slint который проверяет код на наличие распространненных косяков. Ничто не мешает его дополнять.
Использование статистических методов.
Все доступно (рефлексия)
Ну, например,
Код:
(Array allInstances select: [:a | a size < 10 ] ) size
Выдаст количество массивов в image размером меньше 10 (36874 в моем случае). Как и что анлизировать - вопрос надобности и вкуса.
Автоматическая проверка правиль*ности программ
Распространенная в наше время технология (Test Driven Development) - сначала пишутся тесты. Пришла из XP и Smalltalk. Пакет SUnit.
Далее у вас, что-то совсем абстрактно.
Цитата:
В этом я совершенно с Вами согласен. Это одна из причин, почему у меня возникает желание разработать новый язык программирования.
|
А вы хорошенько осмотрели другие языки? И вы думаете это легко? Оставьте...
Цитата:
... и работаю с системами аналитических вычислений. У меня сразу же возникло несколько вопросов:
1) Использовался ли Smalltalk в области аналитических вычислений (это вычисления, в которых оперируют мат. формулами и мат. объектами)?
2) Сложно ли "подстроить" Smalltalk для той области знаний, в которой пользователь работает? Например, для той же математики.
|
Может быть и использовался - Smalltalk большой и старый(как и Lisp в котором тоже есть много всего). Может и basic использовался.
В Smalltalk очень легко программировать, но это не избавляет от необходимости все-таки программировать. Подстроить несложно, а вот чтобы написать соответсвующую модель, нужны глубокие знания в предметное области.
|
|
|
Guest
|

14.01.2004, 14:35
Цитата:
Originally posted by Andrey1
[b]<div class='quotetop'>Цитата
|
Цитата:
Вот Smalltalk и является таким социально-направленным языком. Он для человека является карандашом для рисования, в то время как другие языки - стрелками на клавиатуре.
|
Вот это уже интересно. Я сам по специальности физик и работаю с системами аналитических вычислений. У меня сразу же возникло несколько вопросов:
1) Использовался ли Smalltalk в области аналитических вычислений (это вычисления, в которых оперируют мат. формулами и мат. объектами)?
2) Сложно ли "подстроить" Smalltalk для той области знаний, в которой пользователь работает? Например, для той же математики.[/quote]
По правде говоря Smalltalk не самый лучший инструмент для решения численных задач. В этой области обычно доминируют функциональные языки. Они позволяют эффективно создавать и верифицировать алгебраические типы. Есс-но в Smalltalk все это также можно проделать, но с некоторыми ограничениями.
Но также у него есть преимущества. Обычная разработка выглядит как серия корректных трансформаций исходного кода, после чего программа может быть проверена. Может пройти достаточно много времени при переходе из одного корректного состояния в другое (хотя бы для того, чтобы скомпилировать). В это время разработчик не имеет никакой обратной связи от программы, кроме того, что имеет в голове и видит исходный код.
В Smalltalk изменения можно делать на микро уровне, не заботясь о глобальной корректности. Причем это можно делать по ходу выполнения программы. И когда управление дойдет до места, где программа выполняется некорректно, будет выдана ошибка, после чего можно проделать следующее микро-изменение и продолжить выполнее, и так далее.
Хоть у Smalltalk нет никакой вычислительной семантики, но благодаря мощной конструкции посылки сообщения можно удачно моделировать практически любую семантику.
Допустим, есть библиотеки, которые отображают стандартный протокол взаимодействия с классами коллекций на реляционную алгебру SQL.
Т.е.
Код:
Customers select: [:each | each firstName = 'John']
может быть динамически преобразовано в SQL вида
Код:
select * from Customers where FirstName = 'John'
и результат завернут в коллекцию объектов и возвращен в программу.
Этот же эффект можно применить и для математичких задач.
Например, можно создать решатель уравнений в виде:
Код:
[(x * x) = (x + a)] asEquation
unknown: #x;
known: #a value: 5;
solve
В качестве примера можно привести пакет Cassowary. Его реализация на Smalltalk позволяет задавать ограничения в виде выражений на самом языке, эквивалентных математической записи.
|
|
|
Guest
|

15.01.2004, 02:13
Цитата:
Originally posted by Anonymous+-->
Цитата:
По правде говоря Smalltalk не самый лучший инструмент для решения численных задач.
|
Вычисления в системах компьютерной алгебры принципиально отличаются от численных вычислений: в первом случае оперируют сложными мат. объектами, а во втором - числами.
<!--QuoteBegin-Anonymous
[b]
В этой области обычно доминируют функциональные языки. Они позволяют эффективно создавать и верифицировать алгебраические типы. Есс-но в Smalltalk все это также можно проделать, но с некоторыми ограничениями.
|
Не до конца понимаю, что Вы называете "алгебраическими типами". Мат. объект может иметь сложную структуру, даже не описываемую списком из более простых мат. объектов.
Цитата:
Originally posted by Anonymous
[b]
Но также у него есть преимущества. Обычная разработка выглядит как серия корректных трансформаций исходного кода, после чего программа может быть проверена. Может пройти достаточно много времени при переходе из одного корректного состояния в другое (хотя бы для того, чтобы скомпилировать). В это время разработчик не имеет никакой обратной связи от программы, кроме того, что имеет в голове и видит исходный код.
|
Это интересно.
|
|
|
Member
Сообщений: 82
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 19.02.2003
|

15.01.2004, 11:29
Цитата:
Цитата:
По правде говоря Smalltalk не самый лучший инструмент для решения численных задач.
|
Вычисления в системах компьютерной алгебры принципиально отличаются от численных вычислений: в первом случае оперируют сложными мат. объектами, а во втором - числами.
|
Тут я естественно имел ввиду применение компьютерной алгебры.
Цитата:
В этой области обычно доминируют функциональные языки. Они позволяют эффективно создавать и верифицировать алгебраические типы. Есс-но в Smalltalk все это также можно проделать, но с некоторыми ограничениями.
|
Не до конца понимаю, что Вы называете "алгебраическими типами". Мат. объект может иметь сложную структуру, даже не описываемую списком из более простых мат. объектов.
[/quote]
Ну если вам нужны настолько более сложные математические объекты, то нужно брать либо специлизированный язык, либо найти соответствующую библиотеку.
|
|
|
Опции темы |
|
Опции просмотра |
Линейный вид
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
|