Pascal

Использование и разработка софта (преимущественно на ПЦ)

Moderator: Shaos

User avatar
Error404
Maniac
Posts: 269
Joined: 05 Oct 2006 04:45
Location: Moscow

Post by Error404 »

Mac Buster wrote:
Error404 wrote:то найти ошибки или вставить свои дополнения в такой код без применения спец. редакторов не сможет даже ас этого языка, не говоря уже о "людях с улицы".
См. выше - язык и архитектура не имеют значения.
Это заблуждение. Точно такое же, как и то, что чтобы эффективно управлять любым предприятием, достаточно управлять финансами.
Либо речь идет о структурном программировании в жестко формализованном базисе, для которого вообще не нужно быть программистом, а нужно только элементарно понимать алгоритмы, т.е. уметь абстрактно мыслить. В этом случае согласен.

Лет десять назад в Сети проводился конкурс на самую короткую по размеру исходного кода программу шахмат. Победила программа на С исходный код которой составлял около 8кб. Сократили размер кода там за счет применeния #define где только можно, сокращения всех пробелов и переводов строк, свертывания кода до нечитаемых конструкций (типа таких как выше приводил HardwareMan с присвоениями/сравнениями/инкрементами, но на пару порядков сложнее), сокращения назвний переменных и функций.
В результате листинг на просмотр имел вид примерно такой же, как если открыть файл такого же размера, представляющий собой набор символов, сгенерированный при помощи randomize(). Распутать его, пожалуй, мог только компилятор (отчасти поэтому я и не сохранил исходники, к сожалению). Хотел бы я видеть эксперта (да еще и не знающего С), который при помощи одного лишь notepad (и за обозримое время) продвинулся бы в модификации такого кода.
Всем добра!
User avatar
Shaos
Admin
Posts: 24080
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Соглашусь с тем, что "универсальных" программистов скорее не существует, ибо кроме обычной алгоритмистики есть "специфика языка", которую надо просто знать и понимать - причём понимание приходит как правило после 1-3 лет АКТИВНОГО использования конкретного языка.
P.S. у С++ (не путать с си) в последней реинкарнации специфики сильно больше чем обычный человек может переварить за разумное количество лет, поэтому я его и не люблю...
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
CHRV
God
Posts: 1101
Joined: 29 Dec 2003 01:00
Location: Москва

Post by CHRV »

Shaos wrote:P.S. у С++ (не путать с си) в последней реинкарнации специфики сильно больше чем обычный человек может переварить за
разумное количество лет, поэтому я его и не люблю...
Ну не обязательно использовать все на свете, если программа пишится достаточно надежно, то зачем использовать излишний инструментарий. Хотя фишки типа темплайтов весьма удобные. Я чистым си практически не пользуюсь - уж больно он "багогенеристый", хотя если неграмотно писать на плюсах то это вообще жесть :).
Московский филиал NedoPC http://www.nedopc.com
User avatar
cr0acker
God
Posts: 1078
Joined: 03 Feb 2003 13:53

Post by cr0acker »

Однажды ваш покорный судья получил диплом и взял на себя смелость вести в интернет общий фотоальбом в котором будут размещатся все фотографии снфтые со всех фотоаппоратов. Популярный сервис принимает фотки сжаты в зип архиве, но большой архив размером в 3 Гб за ноч так и не загрузился. Фотографии ручками таскать было лениво и он написал такую программу:

Code: Select all

Program mail_uploader;
uses
	dos;
var
	s: SearchRec;
	name_of_f:array of string;
	name_of_z,param: string;
	i,e,z,x: integer;
begin
	writeln('Hello world');
	FindFirst('*.JPG',AnyFile,s);
	i:=0;
	while DosError = 0 do
		begin
			with s do
				writeln(Name:12,Size:12);
			FindNext(s);
			i:=i+1;
		end;
	writeln(i);
	SetLength(name_of_f,i);
	writeln(Length(name_of_f));
	i:=0;
	FindFirst('*.JPG',Anyfile,s);
	while DosError = 0 do
		begin
			with s do
			name_of_f[i]:=s.Name;
			FindNext(s);
			i:=i+1;
		end;
	e:=0;	
	for e:=0 to (Length(name_of_f)-1) do
		begin
			writeln(name_of_f[e]);
		end;
	e:=0;
	z:=0;
	i:=0;
	str(z,name_of_z);	
	while e<Length(name_of_f) do
		begin   param:=' '+name_of_z+'.zip '+name_of_f[e];
			exec('/usr/bin/zip',param);
			writeln(e);
			writeln(param);
			e:=e+1;
			i:=i+1;
			if (i-100)=0 then
				begin
					i:=i-100;
					z:=z+1;
					str(z,name_of_z);
				end;
		end;			
end.
Image
Формат конференции позволяет сказать то что я действительно думаю о проблемах...
(с) Путин
User avatar
HardWareMan
Banned
Posts: 2139
Joined: 20 Mar 2005 13:41
Location: От туда

Post by HardWareMan »

cr0acker wrote:Однажды ваш покорный судья получил диплом и взял на себя смелость вести в интернет общий фотоальбом в котором будут размещатся все фотографии снфтые со всех фотоаппоратов. Популярный сервис принимает фотки сжаты в зип архиве, но большой архив размером в 3 Гб за ноч так и не загрузился. Фотографии ручками таскать было лениво и он написал такую программу:
Прикольно, но конструкции типо "i:=i+1" я бы заменил на "inc(i)".
SfS
Doomed
Posts: 491
Joined: 16 Apr 2005 22:35
Location: Томск

Post by SfS »

В тему. А под Linux есть свободный Lazarus, который могёт всасывать проекты на Дельфи. Визуален по самое не хочу.
Самое то для дельфийцев, которые хотят на линух перелезть.
User avatar
cr0acker
God
Posts: 1078
Joined: 03 Feb 2003 13:53

Post by cr0acker »

SfS wrote:В тему. А под Linux есть свободный Lazarus, который могёт всасывать проекты на Дельфи. Визуален по самое не хочу.
Самое то для дельфийцев, которые хотят на линух перелезть.
Угу FPC рулит, хотя я подумыю перелезть на модулу-2:)
Image
Формат конференции позволяет сказать то что я действительно думаю о проблемах...
(с) Путин
User avatar
Shaos
Admin
Posts: 24080
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Паскаль давно умер - хватит мучать бездыханный труп :roll:

P.S. Читаю про создание первого Макинтоша - аппловцы писали ось и системные проги для него на Паскале (как я понял и для Лизы тоже) - было это в конце 70-х начала 80-х ...
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
cr0acker
God
Posts: 1078
Joined: 03 Feb 2003 13:53

Post by cr0acker »

Виндовс 1.0 тоже была написанно на паскале. У нортеля всесь сфот пишутся на своем внутреннем языке(помесь паскаля и и модулы), которы потом транслируется в Си а зетем компилится ГЦЦ. И вообще Сишарп калька с Зонона и компонент паскаля(смотри имена авторов), а Джей Шарп калька с объектного паскаля (Сморти имена авторов), короче цюрихская языковая Школя живет и побеждает.
Image
Формат конференции позволяет сказать то что я действительно думаю о проблемах...
(с) Путин
User avatar
cr0acker
God
Posts: 1078
Joined: 03 Feb 2003 13:53

Post by cr0acker »

Shaos wrote:Паскаль давно умер - хватит мучать бездыханный труп :roll:

P.S. Читаю про создание первого Макинтоша - аппловцы писали ось и системные проги для него на Паскале (как я понял и для Лизы тоже) - было это в конце 70-х начала 80-х ...
Эпловци испльзовали PUSD Pascal, который мало того, что паскаль так ещё и ось и интерпритатор машинонезависимого кода, кстати при разработки атари СТ, Лиза выступала в качестве мула для отладки ПО.
Image
Формат конференции позволяет сказать то что я действительно думаю о проблемах...
(с) Путин
User avatar
cr0acker
God
Posts: 1078
Joined: 03 Feb 2003 13:53

Post by cr0acker »

Вот ещё интересная статейка http://www.computerworld.com.au/index.p ... 47371;pp;1
Image
Формат конференции позволяет сказать то что я действительно думаю о проблемах...
(с) Путин
User avatar
cr0acker
God
Posts: 1078
Joined: 03 Feb 2003 13:53

Post by cr0acker »

В догонку, оказывается CVSup был написан М3. А вот интересное сравнение языков программирования по скорости о объюму:
http://shootout.alioth.debian.org/
Скажу сразу все тесты не смотрел, но в языках выиртовской группы, че то СИ везде отстает.
Image
Формат конференции позволяет сказать то что я действительно думаю о проблемах...
(с) Путин
User avatar
CHRV
God
Posts: 1101
Joined: 29 Dec 2003 01:00
Location: Москва

Post by CHRV »

cr0acker wrote:Скажу сразу все тесты не смотрел, но в языках выиртовской группы, че то СИ везде отстает.
Это зависит от того как тесты писать :)
Московский филиал NedoPC http://www.nedopc.com
User avatar
cr0acker
God
Posts: 1078
Joined: 03 Feb 2003 13:53

Post by cr0acker »

CHRV wrote:
cr0acker wrote:Скажу сразу все тесты не смотрел, но в языках выиртовской группы, че то СИ везде отстает.
Это зависит от того как тесты писать :)
Ну я вообще в шоке, тектсы там представленны.
Image
Формат конференции позволяет сказать то что я действительно думаю о проблемах...
(с) Путин
User avatar
CHRV
God
Posts: 1101
Joined: 29 Dec 2003 01:00
Location: Москва

Post by CHRV »

cr0acker wrote:
CHRV wrote:
cr0acker wrote:Скажу сразу все тесты не смотрел, но в языках выиртовской группы, че то СИ везде отстает.
Это зависит от того как тесты писать :)
Ну я вообще в шоке, тектсы там представленны.
Да ничего удивительного посмотрел я опции компилера, если на С++ отключить RTTI и поддержку ексепшенов, то он сделать по идее должен и в хвост и в гриву, а так он тащит при выделении памяти кучу проверок не нужного гамна...
Чесный тест был бы если выделение памяти было переопределено и делалось единым алгоритмом и на Ц и на П.
Московский филиал NedoPC http://www.nedopc.com