Rambler's Top100
"Knowledge itself is power"
F.Bacon
Поиск | Карта сайта | Помощь | О проекте | ТТХ  
 Базарная площадь
  
О разделе

Основная страница

Группы обсуждений


Тематический каталог обсуждений

Архив

 
 К н и г и
 
Книжная полка
 
 
Библиотека
 
  
  
 


Поиск
 
Поиск по КС
Поиск в статьях
Яndex© + Google©
Поиск книг

 
  
Тематический каталог
Все манускрипты

 
  
Карта VCL
ОШИБКИ
Сообщения системы

 
Форумы
 
Круглый стол
Новые вопросы

 
  
Базарная площадь
Городская площадь

 
   
С Л С

 
Летопись
 
Королевские Хроники
Рыцарский Зал
Глас народа!

 
  
ТТХ
Конкурсы
Королевская клюква

 
Разделы
 
Hello, World!
Лицей

Квинтана

 
  
Сокровищница
Подземелье Магов
Подводные камни
Свитки

 
  
Школа ОБЕРОНА

 
  
Арсенальная башня
Фолианты
Полигон

 
  
Книга Песка
Дальние земли

 
  
АРХИВЫ

 
 

Сейчас на сайте присутствуют:
 
  
 
Во Флориде и в Королевстве сейчас  18:32[Войти] | [Зарегистрироваться]
Обсуждение темы:
Оберон-технология: особенности и перспективы


Тематика обсуждения: Оберон-технология. Особенности, перспективы, практическое применение. 

Количество сообщений на странице

Порядок сортировки сообщений
Новое сообщение вверху списка (сетевая хронология)
Первое сообщение вверху списка (обычная хронология)

Перейти на конкретную страницу по номеру


Всего в теме 6256 сообщений

Добавить свое сообщение

Отслеживать это обсуждение

Обсуждение из раздела
Школа ОБЕРОНА

<<<... | 1656—1647 | 1646—1637 | 1636—1627 | ...>>>
Всего сообщений в теме: 6256; страниц: 626; текущая страница: 462


№ 1646   11-01-2007 00:07 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1641« (pepper)
___________________________

Хм... Интересно, что общего между динамически типизированным интерпретируемым языком и статически типизированным компилируемым языком? Неужели "модули"? :)

Вопрос о раскрутке Python с повестки дня тем временем товарищем pepper был тихо снят. Теперь будем разбираться в его технических деталях на форуме по Оберону? Ok.

Цитата из воспоминаний Guido van Rossum:

I had extensive experience with implementing an interpreted language in the ABC group at CWI, and from working with this group I had learned a lot about language design. This is the origin of many Python features, including the use of indentation for statement grouping and the inclusion of very-high-level data types (although the details are all different in Python).

I had a number of gripes about the ABC language, but also liked many of its features. It was impossible to extend the ABC language (or its implementation) to remedy my complaints -- in fact its lack of extensibility was one of its biggest problems. I had some experience with using Modula-2+ and talked with the designers of Modula-3 and read the Modula-3 report. Modula-3 is the origin of the syntax and semantics used for exceptions, and some other Python features.

I was working in the Amoeba distributed operating system group at CWI. We needed a better way to do system administration than by writing either C programs or Bourne shell scripts, since Amoeba had its own system call interface which wasn't easily accessible from the Bourne shell. My experience with error handling in Amoeba made me acutely aware of the importance of exceptions as a programming language feature.

It occurred to me that a scripting language with a syntax like ABC but with access to the Amoeba system calls would fill the need. I realized that it would be foolish to write an Amoeba-specific language, so I decided that I needed a language that was generally extensible.

During the 1989 Christmas holidays, I had a lot of time on my hand, so I decided to give it a try. During the next year, while still mostly working on it in my own time, Python was used in the Amoeba project with increasing success, and the feedback from colleagues made me add many early improvements.


Еще одна цитата все того же автора языка Python, которая проясняет источники идей (ABC, C, Modula-3, Algol-68, Icon):
ABC was a major influence, of course, since I had been working on it at CWI. It inspired the use of indentation to delimit blocks, which are the high-level types and parts of object implementation. I'd spent a summer at DEC's Systems Research Center, where I was introduced to Modula-2+; the Modula-3 final report was being written there at about the same time. What I learned there showed up in Python's exception handling, modules, and the fact that methods explicitly contain ``self'' in their parameter list. String slicing came from Algol-68 and Icon. C is a second influence, second only to ABC in importance. Most of Python's keywords, such as break, continue and others, are identical to C's, as are operator priorities. C also affected early extension modules; many of them, such as the socket and POSIX modules, are simply the corresponding UNIX C functions translated into Python, with some modifications to make programming more comfortable. For example, errors raise exceptions rather than return a negative value, and sockets are objects.


№ 1645   10-01-2007 17:26 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1644« (Илья Ермаков)
___________________________

Ответ на »сообщение 1638« (Владимир Лось)
___________________________
В том и дело, что через w сборщик мусора не проследит ссылку, т.к. она - целое, а не указатель. В этом и смысл слабой ссылки, что она не является якорем. Сборщик мусора зануляет все слабые ссылки, объекты которых не доступны по указателям.


Вот это мне и непонятно (может, я "туплю"): как сборщик мусора обнуляет все слабые ссылки, если он их не может проследить?
 AVC


№ 1644   10-01-2007 17:06 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1638« (Владимир Лось)
___________________________
В том и дело, что через w сборщик мусора не проследит ссылку, т.к. она - целое, а не указатель. В этом и смысл слабой ссылки, что она не является якорем. Сборщик мусора зануляет все слабые ссылки, объекты которых не доступны по указателям.
В стеке же сборщик в ББ работает консервативно и по целым тоже "привяжет" объект.
Впрочем, код все равно не защищал от неатомарности первого присваивания и смысла теперь уже не имеет...


№ 1643   10-01-2007 16:11 Ответить на это сообщение Ответить на это сообщение с цитированием
на 4 года раньше своего конкурента - PHP Расмуса Лердорфа
По-моему они если и конкуренты, то только в сфере веб-приложений. История создания PHP совсем другая - он вырос из библиотеки, написанной на C для CGI-приложений.
http://phpclub.ru/detail/article/2002-10-30
И долгое время не претендовал на большее, нежели быть языком web-программирования и, насколько я могу судить, в общем и целом таким языком и остается по сей день.
А Python - это и популярный язык оболочки никсов и графические интерфейсы на нем вовсю пишут (ипользуя QT GTK и др.)и т.д.

Извиняюсь за оффтопик.


№ 1642   10-01-2007 16:00 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1641« (pepper)
___________________________
Хм... Интересно, что общего между динамически типизированным интерпретируемым языком и статически типизированным компилируемым языком? Неужели "модули"? :)
Траву свежую завезли? Что б никого не обижать - спишем на достаточно позднее время... :о)))))


№ 1641   10-01-2007 15:20 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1634« (Снегурочка)
___________________________

Автор языка, Гвидо ван Россум, работал в группе по созданию Amoeba в Национальной исследовательском центре в Амстердаме. Он имел опыт работы с Modula-2+ и беседовал с разработчиками Modula-3 (языка, вышедшего из экспериментов с Modula-2+) из DEC Systems Research Center. Вдохновленный идеями Modula-3, Гвидо ван Россум загорелся желанием реализовать их на уровне интерпретируемого языка для конкретной задачи работы с Amoeba, где возможности "местного" языка ABC были явно недостаточны. Так примерно в 1990-1991 гг. (на 4 года раньше своего конкурента - PHP Расмуса Лердорфа) и возник Python.


Хм... Интересно, что общего между динамически типизированным интерпретируемым языком и статически типизированным компилируемым языком? Неужели "модули"? :)


№ 1640   10-01-2007 15:07 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1638« (Владимир Лось)
___________________________

Ответ на »сообщение 1637« (Илья Ермаков)
___________________________
Вообще-то. Илья. я хоть и давненько в КП не программил. но мне кажется при всех раскладах с якорем не нужно возиться. Сборщик мусора не уберёт объект. пока на него ссылка есть. А она по-любому прослеживается через w (если конечно это не простая безтаговая несобираемая запись...).


Судя по коду, w.adr -- значение целого типа, а не указатель.
Поэтому сборщик мусора его проигнорирует (его смещение не перечислено в дескрипторе типа WeakPointer), если только оно не находится в стеке. Вот, видимо, поэтому Илья и копирует (копировал?) его в стек.
 AVC


№ 1639   10-01-2007 14:57 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1637« (Илья Ермаков)
___________________________
"Проверка" была от меня


№ 1638   10-01-2007 14:51 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1637« (Илья Ермаков)
___________________________
Вообще-то. Илья. я хоть и давненько в КП не программил. но мне кажется при всех раскладах с якорем не нужно возиться. Сборщик мусора не уберёт объект. пока на него ссылка есть. А она по-любому прослеживается через w (если конечно это не простая безтаговая несобираемая запись...).


№ 1637   10-01-2007 14:34 Ответить на это сообщение Ответить на это сообщение с цитированием
Ответ на »сообщение 1636« (Илья Ермаков)
___________________________
Впрочем, это старый код, его можно и порезать. В текущей версии ядра АББ сборщик мусора консервативно маркирует и регистры всех потоков.


<<<... | 1656—1647 | 1646—1637 | 1636—1627 | ...>>>
Всего сообщений в теме: 6256; страниц: 626; текущая страница: 462


Добавить свое сообщение

Отслеживать это обсуждение

Дополнительная навигация:
Количество сообщений на странице

Порядок сортировки сообщений
Новое сообщение вверху списка (сетевая хронология)
Первое сообщение вверху списка (обычная хронология)

Перейти на конкретную страницу по номеру
  
Время на сайте: GMT минус 5 часов

Если вы заметили орфографическую ошибку на этой странице, просто выделите ошибку мышью и нажмите Ctrl+Enter.
Функция может не работать в некоторых версиях броузеров.

Web hosting for this web site provided by DotNetPark (ASP.NET, SharePoint, MS SQL hosting)  
Software for IIS, Hyper-V, MS SQL. Tools for Windows server administrators. Server migration utilities  

 
© При использовании любых материалов «Королевства Delphi» необходимо указывать источник информации. Перепечатка авторских статей возможна только при согласии всех авторов и администрации сайта.
Все используемые на сайте торговые марки являются собственностью их производителей.

Яндекс цитирования