LINUX.ORG.RU

Вышел SmartEiffel 1.2r7 (Transitional)


0

0

SmartEiffel -- это компилятор GNU для языка Eiffel. Основная цель, преследуемая разработчиками -- создание полного, хотя небольшого и очень быстрого компилятора Eiffel. Текущая сборка включает компилятор из Eiffel в C, инструментарий для документации, форматировщик исходных кодов для печати, и различные другие инструменты, включая отладчик Eiffel. Он также включает большую библиотеку классов, распространяемую по лицензии MIT/X Consortium. Eiffel -- это объектно-ориентированный язык программирования, делающий упор на проектирования высококачественного и повторно используемого ПО.

Изменения: некоторые изменения для совместимости с версией 2.2 (особенно касательно библиотеки и чувствительности к регистру). Изменения, касающиеся совместимости с MSVC++ 2005 в качестве back-end. Мелкие исправления ошибок.

Домашняя страница

Скачать можно отсюда.

>>> Подробная история изменений

★★★★★

Проверено: Shaman007 ()

Ответ на: комментарий от KRoN73

Да нет такого в С, нет. нужно использовать ассемблерные вставки (а их в k&r C не было ЕМНИП).

Begemoth ★★★★★
()
Ответ на: комментарий от KRoN73

>покажи код манипулирования регистрами процессора
>> А я всегда думал, что в _прикладном_ программировании оно является огромным недостатком :D ... Ну, с твоим подходом самый выразительный язык - это ассемблер :D

суть в том что задача С как раз в этом ....
asm не подходит
нужно еще и хороший уровень переносимости

yeolahim
()
Ответ на: комментарий от Begemoth

500$
куплю лисп машину без монитора и тп
можно бу
.... продай - не шучу - предложение действительно три дня

когда куплю
публично в этом форуме признаю - лисп лучше C
до этого момента - не бзди - люди кругом

yeolahim
()
Ответ на: комментарий от yeolahim

> покажи код манипулирования регистрами процессора и выделения освобождения страничной памяти на языках: ... Lisp (58),

Показать, увы, не смогу, но некоторое время назад пришлось пообщаться с одним из бывших сотрудников LMI (которая Lisp Machines, Inc.). С его слов, в их ОС для K-machine (последняя разработка LMI) ручного кодирования потребовали всего несколько очень узких вещей --- вход/выход из прерывания, и т.п. Но управление виртуальной памятью и "сборщик мусора" (причем реального времени) были написаны прямо на Лиспе, правда, с ограничением используемых конструкций теми, которые не вызовут GC или page fault.

А еще в патенте Symbolics на ее архитектуру приводился код на Лиспе, программирующий ПЛМки (или ПМЛ --- все время их путаю :-) --- прошивка описывается в виде лог. функций, оптимизируется и генерируется собственно карта соединений. Код этот был составной частью инструментальной системы, включающей компилятор микрокода, эмулятор и что-то еще (давно смотрел, не помню). И все это было красиво интегрировано благодаря архитектуре лисп-систем, поощряющей разработку DSL.

--

SVK

anonymous
()
Ответ на: комментарий от yeolahim

манипулирование реигстрами процессора и переносимость понятия несовместимые. И, повторюсь, в С такого нет. Так что хватит бздеть.

anonymous
()
Ответ на: комментарий от anonymous

Последнее сообщение мое. Забыл залогиниться.

Begemoth ★★★★★
()
Ответ на: комментарий от yeolahim

>нужно еще и хороший уровень переносимости

Нет, ты уже определись, регистры процессора тебе нужны, или переносимость. Если регистры - то ты уже к процессору привязан. И тебе прямая дорога в ассемблер :) Если переносимость... то Си/Си++ тут ой, как неидеален... Засадишь ты, вот, char по нечётному адресу - и мучайся потом на PDP :D

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

> Засадишь ты, вот, char по нечётному адресу - и мучайся потом на PDP :D

эт как? С каких пор в С можно непосредственно адрес задавать? Не лезь куда не просят - будет нормально.

Begemoth ★★★★★
()
Ответ на: комментарий от KRoN73

>> Засадишь ты, вот, char по нечётному адресу - и мучайся потом на PDP :D

а как в
Smalltalk (71), APL (62), Simula (62), Prolog (72), Lisp (58),
ML (73)

писать/читать только по выравненным адресам ?
без привлечения с или ассемблера ?
как сказать что участок памяти от 4096 до 8192 отдать этому процессу ?

>> Засадишь ты, вот, char по нечётному адресу - и мучайся потом на PDP :D
> эт как? С каких пор в С можно непосредственно адрес задавать? Не лезь куда не просят - будет нормально.

нифига себе ....
бегомот ты с перепою что-ли ?

не один язык не может быть стандартизирован для управления определенной машиной
но в С можно стандартизировать некое ядро
а непосредственно управление вынести наружу
не так уж и много языков 1970 года позволяло это
-- задач таких не стояло
из-за такой своей особенности С и стал популярным языком системного программирования

yeolahim
()
Ответ на: комментарий от Begemoth

>> Засадишь ты, вот, char по нечётному адресу - и мучайся потом на PDP :D

>эт как? С каких пор в С можно непосредственно адрес задавать? Не лезь куда не просят - будет нормально.

Begemoth ты точно с перепою - аж шокировало :)))

*(char*)123456 = 'a'
....

yeolahim
()
Ответ на: комментарий от Begemoth

>С каких пор в С можно непосредственно адрес задавать?

Вот, блин, проснулся... Открой любую программу времён DOS :)

Или конструкция (long*)0xA000000 в Си была изначально запрещена, да?

KRoN73 ★★★★★
()
Ответ на: комментарий от yeolahim

> но в С можно стандартизировать некое ядро а непосредственно управление вынести наружу

точно также можно и для других языков > не так уж и много языков 1970 года позволяло это -- задач таких не стояло

это особенности реализации языка.

Begemoth ★★★★★
()
Ответ на: комментарий от yeolahim

У многих диалектов Лиспа, заточенных под низкоуровневое кодирование такие фичи есть.

А вообще у тебя очень своеобразное представление о "выразительности" языка. С твоими заморочками самым выразительным языком будет SQL - он лучше всех других адекватен своей узенькой цели. Но пока мы говорим про языки общего назначения - не смей аргументацию такого уровня применять. Всем наплевать на такую "выразительность" си в не-системных приложениях. Даже как абстракция универсальной регистровой машины (2Бегемот: ну ты то как мог лажануться с этим?!?) - не канает, плохая из него абстракция, у C-- с этим много лучше.

anonymous
()
Ответ на: комментарий от yeolahim

Бздишь - ты. Сейчас любая машна - Лисп-машина. Современное железо содержит все фичи, которые от Лисп-машины нужны, и эффективность Лиспа сейчас более чем достойная на массовом железе. Просто ты - дурак. Малограмотный, упёртый и самоуверенный. Самая худшая разновидность дурака. Перестань позориться, в конце концов!

anonymous
()
Ответ на: комментарий от Begemoth

>глюкнул, нормальные люди так не пишут (в прикладном ПО, по-крайней мере).

Долгое время это был единственный стиль. Как ты в DOS обратишься к видеопамяти?

KRoN73 ★★★★★
()
Ответ на: комментарий от Begemoth

>> но в С можно стандартизировать некое ядро а непосредственно управление вынести наружу
>>точно также можно и для других языков > не так уж и много языков 1970 года позволяло это -- задач таких не стояло

>это особенности реализации языка.

как бы Вам сказать - это не особенности реализации ...
это как раз особенности самого языка, как есть

извините, но мне складывается устойчивое представление
что Вы __совершенно__ не знакомы с С
не кажется ли вам моветоном хайть совершенно не знакомый Вам язык ?

yeolahim
()
Ответ на: комментарий от anonymous

>> А вообще у тебя очень своеобразное представление о "выразительности" языка. С твоими заморочками самым выразительным языком будет SQL - он лучше всех других адекватен своей узенькой цели.

Да - самым выразительным языком будет SQL - лучше всех других адекватен своей узенькой цели
Да - самым выразительным языком будет С - лучше всех других адекватен своей узенькой цели
Да - самым выразительным языком будет Lisp - лучше всех других адекватен своей узенькой цели

у каждого языка есть круг задач для описания которых он предназначен
наиболее выразителен тот язык который наилучшим образом достигает поставленной перед ним цели

>> Но пока мы говорим про языки общего назначения - не смей аргументацию такого уровня применять.

Видите-ли спор начался с того что нейкий человек начал утверждать
что С очень не выразительный язык
Единственное что я утверждал - что у каждого языка есть набор преимуществ который делает его наиболее приемлимым (выразительным) для некоторого круга задач
и привел пример круга задач в котором С нет равных

yeolahim
()
Ответ на: комментарий от yeolahim

Вот как раз этого то ты и не сделал - не привел задач которые составляли бы нишу языка Цэ.

Тем более что разговоры разговаривались за очень даже общее применение цэ, вне пределов этой узенькой ниши.

anonymous
()
Ответ на: комментарий от anonymous

>Вот как раз этого то ты и не сделал - не привел задач которые составляли бы нишу языка Цэ.
>Тем более что разговоры разговаривались за очень даже общее применение цэ, вне пределов этой узенькой ниши.

и такие люди запрещают мне ковырятся в носу ....

yeolahim
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.