The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Выпуск Pharo 10, диалекта языка Smalltalk

12.04.2022 08:08

Предоставлен выпуск проекта Pharo 10, развивающего диалект языка программирования Smalltalk. Pharo является ответвлением от проекта Squeak, в разработке которого принимал участие Алан Кей, автор Smalltalk. Помимо реализации языка программирования, Pharo также предоставляет виртуальную машину для выполнения кода, интегрированную среду разработки, отладчик и набор библиотек, включая библиотеки для разработки графических интерфейсов. Код проекта распространяется под лицензией MIT.

Из изменений в новом выпуске выделяется чистка кода - удалён устаревший код (Glamour, GTTools, Spec1, поддержка устаревшего байткода) и переписаны утилиты, зависящие от устаревшего кода (Dependency Analyser, Critique Browser и т.п.). Внесены изменения, нацеленные на повышение модульности проекта и предоставление возможности формирования образов минимального размера. Проведена работа по повышению производительности и уменьшению размера образов (размер базового образа сокращён с 66 до 58 МБ). В виртуальной машине улучшен код, связанный с асинхронным вводом/выводом, обработкой сокетов и FFI ABI.

  1. Главная ссылка к новости (https://pharo.org/news/pharo10...)
  2. OpenNews: Squeak 4.1 и Pharo 1.0 - новые версии реализаций языка Smalltalk
  3. OpenNews: Проекты по компиляции кода на языках Clojure и Pascal в JavaScript-представление
  4. OpenNews: Выпуск языка программирования Ceylon 1.0.0, развиваемого Red Hat в качестве альтернативы Java
  5. OpenNews: Языку программирования LISP исполнилось 60 лет
  6. OpenNews: Выпуск языка программирования Ruby 3.1
Автор новости: vvm13
Лицензия: CC-BY
Тип: Программы
Короткая ссылка: https://opennet.ru/57005-pharo
Ключевые слова: pharo, smalltalk
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (49) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Брат Анон (ok), 08:54, 12/04/2022 Скрыто модератором [﹢﹢﹢] [ · · · ]
  • +1 +/
     
     
  • 2.2, RC (?), 09:04, 12/04/2022 Скрыто модератором
  • +11 +/
     
     
  • 3.3, Жироватт (ok), 09:50, 12/04/2022 Скрыто модератором
  • +/
     
     
  • 4.5, Аноним (5), 09:52, 12/04/2022 Скрыто модератором
  • –1 +/
     
     
  • 5.6, Жироватт (ok), 09:56, 12/04/2022 Скрыто модератором
  • +5 +/
     
     
  • 6.10, Аноним (10), 10:12, 12/04/2022 Скрыто модератором
  • +3 +/
     
  • 5.16, Аноним (16), 11:41, 12/04/2022 Скрыто модератором
  • +/
     
  • 4.7, Аноним (7), 10:01, 12/04/2022 Скрыто модератором
  • –2 +/
     
  • 4.9, ZloySergant (ok), 10:11, 12/04/2022 Скрыто модератором
  • +4 +/
     
     
  • 5.29, Аноним84701 (ok), 16:48, 12/04/2022 Скрыто модератором
  • +/
     
  • 4.15, Аноним (15), 11:31, 12/04/2022 Скрыто модератором
  • +/
     
  • 4.18, freehck (ok), 12:47, 12/04/2022 Скрыто модератором
  • –1 +/
     
  • 3.4, Аноним (5), 09:51, 12/04/2022 Скрыто модератором
  • +1 +/
     
     
  • 4.17, Аноним (16), 11:44, 12/04/2022 Скрыто модератором
  • +1 +/
     
  • 3.22, барыга (?), 14:32, 12/04/2022 Скрыто модератором
  • +/
     
  • 2.8, Аноним (8), 10:11, 12/04/2022 Скрыто модератором
  • –1 +/
     
     
  • 3.11, Аноним (11), 10:45, 12/04/2022 Скрыто модератором
  • +3 +/
     
  • 3.12, Аноним (12), 11:02, 12/04/2022 Скрыто модератором
  • +/
     
     
  • 4.13, Аноним (10), 11:08, 12/04/2022 Скрыто модератором
  • +1 +/
     
  • 4.14, Аноним (14), 11:15, 12/04/2022 Скрыто модератором
  • –1 +/
     
  • 3.20, Брат Анон (ok), 13:46, 12/04/2022 Скрыто модератором
  • +/
     
  • 2.21, Брат Анон (ok), 13:47, 12/04/2022 Скрыто модератором
  • +/
     
     
  • 3.32, Аноним (32), 20:59, 12/04/2022 Скрыто модератором
  • +/
     

     ....ответы скрыты модератором (22)

  • 1.19, CudaText user (?), 13:39, 12/04/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Зачем этот язык, то есть какая у него ниша? если она есть вообще. Вот мой Паскаль. У него есть ниша. Например удобно UI по бьстрому. Или для микроконтроллеров. А у СмалТолк?
     
     
  • 2.23, Ag (ok), 14:52, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Междельмашевцы его в 90-е очень любили, в "кговавом ынтерпрайсе".
    Получил я помню от них CD-диск со средой разработки под OS/2, пришел домой, воткнул... шуршит...шуршит... и ничего не происходит. Грохнул процесс, заглянул - мама мия, а там экзешник установщика за 200Мб! Для RAM 64Мб действительно тяжко. Так и не приобщился в итоге.
     
     
  • 3.39, vvm13 (?), 07:40, 13/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Ныне он (VisualAga Smalltalk) ощущается как безумно быстрый и маленький. Да, главным образом потому, что железо другое. Тем не менее, он и стартует практически мгновенно, и GUI отзывчивее, чем у Java, на одном и том железе.

    Экзешник, правда, никак не мог быть за 200. Я вполне нормально работал и под OS/2; установка, разработка были уже тогда быстрыми. У такой вещи, когда код меняешь, как сохраняешь метод, так он мгновенно компилируется, программа сразу готова к работе и отладке (при запуске из IDE).
    Правда, упаковка (подготовка имиджа для поставки конечному пользователю) была для меня страданием.

     
  • 2.24, Аноним (24), 14:58, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    На SmallTalk удобно бизнес-логику в прод по быстрому чтобы десятилетиями не отваливалась.
     
  • 2.26, Яяя (?), 15:07, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Он божественен для всего куда засунули Джаву, ибо он не искажает концепций которыми пользуется, жаль что вместо него прорвалась эта Джава.
     
  • 2.27, adolfus (ok), 15:53, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Когда-то лет двадцать пять назад IBM выпустил Visual Age for Smalltalk -- единственную в своем роде визуальную среду программирования. Потом еще был VAC -- Visual Age for C++. Вместе с Clarion это три единственных в мире полноценных языка визуального программирования. Все остальное с набором букв "Visual" никакого отношения к визуальному программированию не имело ни тогда не имеет и сегодня. Просто слово из словаря.
     
     
  • 3.43, Аноним (-), 19:02, 13/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    А как же интегрированная система Мастер для ПЭВМ?
     
     
  • 4.51, adolfus (ok), 16:52, 20/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > А как же интегрированная система Мастер для ПЭВМ?

    Вы меня развеселили.

     
  • 2.30, user90 (?), 18:24, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Нормальные люди пишут на лиспе.
     
     
  • 3.33, Аноним (32), 21:02, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Common lisp'е
     
  • 3.35, Аноним (35), 00:54, 13/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Первые версии SmallTalk были больше похожи на лисп, чем на современный (если можно так выразиться) Smalltalk.

    Прув: www.esug.org data/HistoricalDocuments/Smalltalk72/Smalltalk72Manual.pdf

     
     
  • 4.36, funny.falcon (?), 02:30, 13/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Мало того, они написаны были на LISP. Собственно, идею с «живым окружением» смолтолк взял из лиспа непосредственно, как нюанс первых реализаций.
     
  • 2.37, vvm13 (?), 07:29, 13/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Smalltalk должен был быть там, где сейчас Python, JavaScript и т.п. Это они заняли его нишу.

    Были, есть и пока не собираются помирать три очень интересных коммерческих Smalltalk'а - VisuaAge Smalltalk, Cincom VisualWorks и GemStone/S (СУБД). Если бы вы были знакомы с ними, то у вас не возникало бы вопросов, "для чего это", а удивлялись бы, почему "эти уродцы" (Python, JavaScript, Java...) существуют на свете.

    Но вот с бесплатными почему-то очень-очень сильно не повезло. Хотя, как игрушки они очень интересны. Видел бы Squeak поклонник TurboPascal! Узнал бы, что такое настоящия "визуальность". Его челюсть бы пришлось долго отковыривать от пола. Но у тех комьюнити совершенно "не деловые" интересы. Pharo был затеян с идеей это изменить. Но даже так, threaded FFI появился там только-только (в коммерческих - более 30 лет как есть).

     
  • 2.40, Аноним (40), 10:09, 13/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    SmallTalk считается одним из самых влиятельных языков программирования Он попул... большой текст свёрнут, показать
     

  • 1.31, Аноним (-), 20:16, 12/04/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    По Алану Кею, а также согласно строгому определению ООП, в языке не должно быть присваивания. В Pharo есть разрушающее присванивание?
     
     
  • 2.34, adolfus (ok), 23:35, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > По Алану Кею, а также согласно строгому определению ООП, в языке не
    > должно быть присваивания. В Pharo есть разрушающее присванивание?

    Вот когда этот Алан Кей изобретет антиТюринг-процессор, который не будет ничего записывать на ленту памяти, ее при этом разрушая, тогда пусть и открывает свой ООП-рот. А пока пусть молчит в тряпочку. И да, пусть в ООП-парадигме напишет хотя бы простой софт для калькулятора в четыре действия со скобками.


     
     
  • 3.42, Аноним (42), 16:25, 13/04/2022 [^] [^^] [^^^] [ответить]  
  • –2 +/
    И тут бы тебе выступить с Большой Идеей как оно всё должно быть на самом-то деле, просветить массы, закнуть за пояс этого щёголя Алана Кея, но вместо этого ты коммент на опеннете оставил как обычный балабол. Эх, ты…
     
     
  • 4.48, adolfus (ok), 16:44, 20/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > И тут бы тебе выступить с Большой Идеей как оно всё должно
    > быть на самом-то деле, просветить массы, закнуть за пояс этого щёголя
    > Алана Кея, но вместо этого ты коммент на опеннете оставил как
    > обычный балабол. Эх, ты…

    Без меня просветителей достаточно. ООП -- это серебряная пуля для стрельбы себе в ногу. Она не годится даже для нормального GUI. Не спорю, что-то простое в этой теме, используя ООП, можно написать быстро,  однако этим и исчерпываются все преимущества ООП. Зато крайне сложно написанное поддерживать и развивать. Любая ошибка проектирования, допущенная в начале работы, к тому времени, как она становится проблемой, уже оказывается высеченной в граните и большей частью не может быть исправлена иначе, как способом "тришкин кафтан". Только полный рефакторинг, причем не кода, а проекта целиком, устраняет проблему. Но есть и альтернатива -- ничего не развивать и не чинить, а просто "переставлять кровати", меняя обои, светлую тему на темную, иконки, расположение кнопок и пунктов меню.
    Примеров вокруг уйма. Один из них -- staropenlibreoffice. В самом начале этапа проектирования writer'а был допущен ряд серьезных ошибок, которые уже никогда исправлены не будут. Причем, если в версиях 5 и 6 были какие-то попытки что-то исправить из просочившихся в очередной выпуск регрессов, то в нынешней 7-й версии на это забили вообще. Аналогичная ситуация и с draw.

     
  • 2.38, vvm13 (?), 07:30, 13/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Это Smalltalk. Там 40 лет синтаксис почти не менялся. И не нужно.
     
     
  • 3.41, Аноним (-), 11:21, 13/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    А зачем менять то, что уже совершенно.
     
     
  • 4.44, Vacu923ek (ok), 21:53, 13/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Лукавите, милейший! Смоллток пошёл по пути "зачем %некий символ% если и так логически понятно, что это %логическое действие%". Но мозг чела таков, что всё же лучше избыток информации, чем недостаток! И так понятно, что огромный хобот - это скорее всего слон. Но лучше видеть всего слона, чем его самую важную часть.
    С ЯП аналогично: когда в Си мы пишем "if (a == 7)" избыток скобок позволяет быстро выделить именно логическую часть.

    Так что Смоллток вещь крайне забавная (особ. в свете свой незатейливой парадигмы %всё есть объект%), но вот в реале он проигрывает многим языкам в визуализации алгоритма.

     
     
  • 5.49, adolfus (ok), 16:46, 20/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > С ЯП аналогично: когда в Си мы пишем "if (a == 7)"
    > избыток скобок позволяет быстро выделить именно логическую часть.

    Неправильно. Правильно писать "if (7 == a)".

     
  • 2.45, Neon (??), 06:54, 15/04/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Он совсем больной, этот Алан Кей ? Впрочем, каждый сходит с ума по своему
     
  • 2.46, Аноним (40), 10:05, 15/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Я не знаю где вы взяли этот бред, но в собрании того, что Алан Кей говорил об ООП этого нет:

    https://wiki.c2.com/?AlanKaysDefinitionOfObjectOriented

     

  • 1.47, Аноним (47), 07:32, 17/04/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Отсутствие присваивания это идея из языков ФП типа erlang. Но это плохо сочетается с ООП.
     
     
  • 2.50, adolfus (ok), 16:48, 20/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Отсутствие присваивания это идея из языков ФП типа erlang. Но это плохо
    > сочетается с ООП.

    Это плохо сочетается с архитектурой всех существующих цифровых компьютеров. Не более, чем академические изыскания.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2022 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру