On-line: гостей 1. Всего: 1 [подробнее..]
АвторСообщение
модератор




Пост N: 635
Зарегистрирован: 25.05.05
ссылка на сообщение  Отправлено: 01.11.07 16:50. Заголовок: Свершилось... Опубликованы сырцы xHarbour 1.0.0 Beta



 цитата:
The new xHarbour source code is already available:

http://sourceforge.net/project/showfiles.php?group_id=33773


Свершилось...
После длительного перерыва (декабрь 2006 - ноябрь 2007) компилятор xHarbour шагнул с версии 0.99.70 сразу на 1.0.0
Ура, товарищи!
Качаем все Но пока есть только сырцы, бинарники обещают через несколько (?) дней

/*
* $Id: ChangeLog,v 1.5752.2.2 2007/10/31 16:38:34 likewolf Exp $
*/

2007-10-31 19:35 UTC+0300 Phil Krylov <phil a t newstar.rinet.ru>
* include/hbver.h
* Changed version to 1.0.0 from 1.00.00.

2007-10-31 13:30 UTC+0300 Phil Krylov <phil a t newstar.rinet.ru>
* include/hbver.h
! Fixed "no newline at end of file" warning.
* source/debug/dbgthsh.prg
* source/debug/dbgtobj.prg
! Fixed a nasty RTE when monitoring hashes in the debugger.
Branched as Release-1-0-0-Beta1-fix because Miguel has already
committed massive RDD changes to CVS HEAD. I think some more last
minute fixes can be committed to this branch.

2007-10-30 02:10 UTC+0100 Patrick Mast <patrick/dot/mast/at/xharbour.com>
* include/hbver.h
* bin/pack_bin.bat
* bin/pack_src.bat
* Increased to 1.00.00

2007-10-30 01:30 UTC+0100 Patrick Mast <patrick/dot/mast/at/xharbour.com>
* xharbour/xharbour.spec
* changed version number to 1.00.00


Спасибо: 0 
Профиль
Ответов - 75 , стр: 1 2 3 4 All [только новые]







Пост N: 120
Зарегистрирован: 08.04.06
ссылка на сообщение  Отправлено: 28.11.07 11:34. Заголовок: Re: gfilatov


gfilatov пишет:

 цитата:
Запиши то же самое без скобок, и все заработает:

DO &proc


За ссылку спасибо, а вот насчёт "запиши..." - думаешь, у меня это в одном-единственном месте? У меня исходников на мегабайт...
Если стояла задача совместимости с Clipperом, то эта совместимость должна всё-таки быть, нет?
По поводу GETа я тут разорялся именно поэтому - так-то добавить во все GETы MEMVAR-> один раз, и всего делов, но вот беда - GETов штук 200-300 в 50-ти модулях!

Спасибо: 0 
Профиль
модератор




Пост N: 657
Зарегистрирован: 25.05.05
ссылка на сообщение  Отправлено: 28.11.07 12:19. Заголовок: Лукашевский пишет: ..


Лукашевский пишет:

 цитата:
думаешь, у меня это в одном-единственном месте? У меня исходников на мегабайт


Search & Replace рулит

Лукашевский пишет:

 цитата:
Если стояла задача совместимости с Clipperом, то эта совместимость должна всё-таки быть


Согласен, хотя бесплатный сыр знаешь где бывает?

Спасибо: 0 
Профиль
постоянный участник


Пост N: 37
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 28.11.07 12:31. Заголовок: Лукашевский, а если ..


Лукашевский, а если бы (x)Harbour-а не было, тогда что? Пришлось бы вообще заново все переписывать. Разве это лучше? А 200-300 get-ов - это немного.

Спасибо: 0 
Профиль
Администратор




Пост N: 658
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 28.11.07 12:45. Заголовок: Лукашевский пишет: ..


Лукашевский пишет:

 цитата:
Если стояла задача совместимости с Clipperом, то эта совместимость должна всё-таки быть, нет?



Стопроцентной совместимости с таким сложным коммерческим продуктом с закрытыми исходными текстами, как Клиппер, теоретически быть не может. Только 99%. Не надо требовать невозможного. Чудеса бывают только в Голливуде


Спасибо: 0 
Профиль





Пост N: 38
Зарегистрирован: 05.11.05
ссылка на сообщение  Отправлено: 28.11.07 12:56. Заголовок: Pasha пишет: продук..


Pasha пишет:

 цитата:
продуктом с закрытыми исходными текстами



А вроде выложили исходники Клиппера.

Спасибо: 0 
Профиль





Пост N: 124
Зарегистрирован: 28.06.05
ссылка на сообщение  Отправлено: 28.11.07 13:13. Заголовок: Лукашевский пишет: ..


Лукашевский пишет:

 цитата:
так-то добавить во все GETы MEMVAR-> один раз



ВСЕ переменные надо описывать.
LOCAL, PRIVATE, MEMVAR и т.д.
К полям БД обращаться через квалификаторы ( <ALIAS> )-> или <ALIAS>-> или FIELD->
Вроде азбука.
Я бы начал с добавления компиллятору ключиков /w2 /es2
Убить хинты и варнинги в мегабайте исходников = работа на пару дней, но она того стоит.
Устойчивость программы к внешним раздражителям повысится многократно.
Упсехов в освоении.

Спасибо: 0 
Профиль
Администратор




Пост N: 659
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 28.11.07 13:24. Заголовок: rvu пишет: А вроде ..


rvu пишет:

 цитата:
А вроде выложили исходники Клиппера.



Очень небольшую часть, только prg-код, который любой может получить с помощью валькирии из clipper.lib и extend.lib
Все остальное закрыто

Спасибо: 0 
Профиль





Пост N: 121
Зарегистрирован: 08.04.06
ссылка на сообщение  Отправлено: 28.11.07 13:41. Заголовок: Re: Pasha


Pasha пишет:

 цитата:
Не надо требовать невозможного.


Если обнаружилась ошибка или неточность, исправить её - это ты называешь невозможным? По-моему, это называется программированием :-) Не помню, сколько там процентов от создания программы обычно занимает её отладка, но факт что больше 50%
Ну и по крайней мере если в моей программе обнаруживается ошибка, я её ВСЕГДА исправляю. Может, кто-то и оставляет их для коллекции, но юзвери обычно таких вещей не понимают - это факт!

Спасибо: 0 
Профиль
Администратор




Пост N: 660
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 28.11.07 15:09. Заголовок: Лукашевский пишет: ..


Лукашевский пишет:

 цитата:
Если обнаружилась ошибка или неточность, исправить её - это ты называешь невозможным? По-моему, это называется программированием :-) Не помню, сколько там процентов от создания программы обычно занимает её отладка, но факт что больше 50%
Ну и по крайней мере если в моей программе обнаруживается ошибка, я её ВСЕГДА исправляю. Может, кто-то и оставляет их для коллекции, но юзвери обычно таких вещей не понимают - это факт!



Когда ты выложишь свою программу в OpenSource и будешь ставить ее бесплатно своим юзерам, тогда получишь право так рассуждать
А сейчас у тебя такого права нет

Спасибо: 0 
Профиль
Администратор




Пост N: 661
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 28.11.07 16:16. Заголовок: Вскрытие показало, ч..


Вскрытие показало, что пациент умер от вскрытия :)

Оказывается, в клиппере тоже команда GET не учитывает ключ компилятора /v, и всегда рассматривает переменную как Memvar
Только в клиппере приоритетным является Memvar, а в харборе - Field

Этот приоритет можно изменить так:
source\rtl\tgetint.prg - надо поменять порядок обработки Field и memvar

FUNCTION __GET( bSetGet, cVarName, cPicture, bValid, bWhen )

LOCAL oGet

IF bSetGet == NIL
IF Left( cVarName, 3 ) == "M->"
cVarName := SubStr( cVarName, 4 )
bSetGet := {|_1| IIF( _1 == NIL, __MVGET( cVarName ), __MVPUT( cVarName, _1 ) ) }
ELSEIF FieldPos( cVarName ) > 0
// "{|_1| IIF( _1 == NIL, FIELD->&cVarName, FIELD->&cVarName := _1 )"
bSetGet := &( "{|_1| IIF( _1 == NIL, FIELD->" + cVarName + ", FIELD->" + cVarName + " := _1 ) }" )
ELSEIF __MVEXIST( cVarName )
// "{|_1| IIF( _1 == NIL, M->&cVarName, M->&cVarName := _1 )"
bSetGet := {|_1| iif( _1 == NIL, __MVGET( cVarName ), __MVPUT( cVarName, _1 ) ) }
ELSE
bSetGet := &( "{|_1| IIF( _1 == NIL, " + cVarName + ", " + cVarName + " := _1 ) }" )
ENDIF
ENDIF

oGet := Get():New( , ,bSetGet, cVarName, cPicture )

oGet:PreBlock := bWhen
oGet:PostBlock := bValid

RETURN oGet


Спасибо: 0 
Профиль





Пост N: 122
Зарегистрирован: 08.04.06
ссылка на сообщение  Отправлено: 28.11.07 16:27. Заголовок: Re: gfilatov


gfilatov пишет:

 цитата:
Прямая ссылка на Harbour Devel build 1.1-1 Intl.


Чем ты паковал этот архив? У меня не распаковывается (Unknown pack method)... нельзя было чем попроще запаковать?
И в какой либе для Harbour лежат функции Clipper Tools? Я думал в libct.lib, но там не оказалось ни Expand(), ни DiskFree(), ни ShowTime(), ни многих других функций...

Спасибо: 0 
Профиль
Администратор




Пост N: 662
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 28.11.07 16:29. Заголовок: К слову Такое повед..


К слову

Такое поведение клиппера - это баг или фича ?
И если бы кто нибудь борзый попробовал бы покачать права у Nantucket или CA, что бы он услышал в ответ ?
На моей памяти один чел, купивший за немаленькие деньги Borland Deplpi. как-то попробовал поразговаривать по душам с Borland. Какой результат был вы догадываетесь...
А с OpenSource проектом можно и пошуметь


Спасибо: 0 
Профиль





Пост N: 123
Зарегистрирован: 08.04.06
ссылка на сообщение  Отправлено: 28.11.07 16:35. Заголовок: Re: PSP


PSP пишет:

 цитата:
если бы (x)Harbour-а не было, тогда что? Пришлось бы вообще заново все переписывать.


Если бы (x)Harbour-а не было, я бы давно уже всё под FoxPro переписал!... наверное... И не так уж сильно это было бы и "заново" (знаю, работал когда-то, FoxPro 2.6 у меня даже официяльная имеется).
Восторгов-то было по поводу Harbour - не передать! Ну я и думал, что всё будет по уму сделано...

Спасибо: 0 
Профиль
модератор




Пост N: 658
Зарегистрирован: 25.05.05
ссылка на сообщение  Отправлено: 28.11.07 17:01. Заголовок: Лукашевский пишет: ..


Лукашевский пишет:

 цитата:
Чем ты паковал этот архив?


Архиватор 7-Zip Игоря Павлова (http://www.7-zip.org)

Лукашевский пишет:

 цитата:
в какой либе для Harbour лежат функции Clipper Tools? Я думал в libct.lib


Так и есть

Лукашевский пишет:

 цитата:
там не оказалось ни Expand(), ни DiskFree(), ни ShowTime()


Функции Expand() и ShowTime() там есть, a для DiskFree() есть аналогичная Харбор-функция diskspace(cDisk, HB_DISK_FREE)

Просто добавь в проект:

 цитата:
#include "fileio.ch"

Function DiskFree(cDisk)
Return diskspace(cDisk, HB_DISK_FREE)






Спасибо: 0 
Профиль





Пост N: 124
Зарегистрирован: 08.04.06
ссылка на сообщение  Отправлено: 28.11.07 18:36. Заголовок: Re: gfilatov


gfilatov пишет:

 цитата:
Функции Expand() и ShowTime() там есть


Ну да, в новой есть, а в июньском варианте - не было
Осталось ещё три вопроса: DISKREADYW() из CTOOLS, OL_ISNT из OSLIB и функция копирования текста в буфер обмена (хотя на SETWCLIPBOARD() линкер вроде не ругается - она и есть?).

Спасибо: 0 
Профиль





Пост N: 125
Зарегистрирован: 08.04.06
ссылка на сообщение  Отправлено: 28.11.07 18:50. Заголовок: Re: Pasha


Pasha пишет:

 цитата:
А сейчас у тебя такого права нет


А тут вопрос не в праве, а в ответственности. Если было сказано - будет совместимость, значит - надо её делать. Или не надо было говорить о совместимости...
И поскольку я всегда стараюсь делать то что говорю (нет, конечно, бывает форс-мажор или там просто забыл :-), то на тему ответственности говорить имею полное право.
К тому же, Pasha, это камень в общем-то наверное не в твой огород...

Спасибо: 0 
Профиль





Пост N: 126
Зарегистрирован: 08.04.06
ссылка на сообщение  Отправлено: 28.11.07 20:31. Заголовок: Re: Pasha


Pasha пишет:

 цитата:
Этот приоритет можно изменить так:
source\rtl\tgetint.prg - надо поменять порядок обработки Field и memvar

FUNCTION __GET( bSetGet, cVarName, cPicture, bValid, bWhen )


Pasha, а точно нужно изменить только эту функцию? Я её воткнул в программу как просто функцию - и никакого эффекта. Или так не сработает?
И ещё - у меня вместо русской "р" вводится латинская "h" - что в поле, что в переменную. Я помню, в Faq об этом было для gtwin.lib, но указанного там www.xharbour.nm.ru вроде как уже не существует?.. Откуда брать?

Спасибо: 0 
Профиль
постоянный участник


Пост N: 80
Зарегистрирован: 13.10.05
ссылка на сообщение  Отправлено: 24.12.07 10:21. Заголовок: xHarbour Compiler bu..


xHarbour Compiler build 1.1.0 (SimpLex)

При работе с ADS какие-то неувязки.Библиотеку с contrib пересобрал. Программу компилирую без замечаний.
Но при запуске Операционка выдает ошибку на всю программу.
В сборке 1.0.0 таких вопросов не было

Спасибо: 0 
Профиль
Администратор




Пост N: 670
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 24.12.07 10:36. Заголовок: В этой функции надо ..


В этой функции надо просто поменять местами последовательность обработки Memvar и Field
Поставить сначала Field

FUNCTION __GET( bSetGet, cVarName, cPicture, bValid, bWhen )

LOCAL oGet

IF bSetGet == NIL
IF FieldPos( cVarName ) > 0
// "{|_1| IIF( _1 == NIL, FIELD->&cVarName, FIELD->&cVarName := _1 )"
bSetGet := &( "{|_1| IIF( _1 == NIL, FIELD->" + cVarName + ", FIELD->" + cVarName + " := _1 ) }" )
ELSEIF Left( cVarName, 3 ) == "M->"
cVarName := SubStr( cVarName, 4 )
bSetGet := {|_1| IIF( _1 == NIL, __MVGET( cVarName ), __MVPUT( cVarName, _1 ) ) }
ELSEIF __MVEXIST( cVarName )
// "{|_1| IIF( _1 == NIL, M->&cVarName, M->&cVarName := _1 )"
bSetGet := {|_1| iif( _1 == NIL, __MVGET( cVarName ), __MVPUT( cVarName, _1 ) ) }
ELSE
bSetGet := &( "{|_1| IIF( _1 == NIL, " + cVarName + ", " + cVarName + " := _1 ) }" )
ENDIF
ENDIF

oGet := Get():New( , ,bSetGet, cVarName, cPicture )

oGet:PreBlock := bWhen
oGet:PostBlock := bValid

RETURN oGet



Спасибо: 0 
Профиль





Пост N: 127
Зарегистрирован: 08.04.06
ссылка на сообщение  Отправлено: 25.12.07 17:54. Заголовок: Re: Pasha


Pasha пишет:

 цитата:
В этой функции надо просто поменять местами последовательность обработки Memvar и Field
Поставить сначала Field

FUNCTION __GET( bSetGet, cVarName, cPicture, bValid, bWhen )

LOCAL oGet

IF bSetGet == NIL
IF FieldPos( cVarName ) > 0



Это ещё зачем???
У меня сработал такой вариант:

FUNCTION __GET( bSetGet, cVarName, cPicture, bValid, bWhen )
LOCAL oGet

IF bSetGet == NIL
IF Left( cVarName, 3 ) == "M->" .AND. ATrue( cVarName := SubStr( cVarName, 4 ) ) ;
.OR. __MVEXIST( cVarName )
bSetGet := {|_1| IIF( _1 == NIL, __MVGET( cVarName ), __MVPUT( cVarName, _1 ) ) }
ELSEIF FieldPos( cVarName ) > 0
bSetGet := &( "{|_1| IIF( _1 == NIL, FIELD->" + cVarName + ", FIELD->" + cVarName + " := _1 ) }" )
ELSE
bSetGet := &( "{|_1| IIF( _1 == NIL, " + cVarName + ", " + cVarName + " := _1 ) }" )
ENDIF
ENDIF

oGet := Get():New( , ,bSetGet, cVarName, cPicture )

oGet:PreBlock := bWhen
oGet:PostBlock := bValid

RETURN oGet

И кстати, не подскажешь, что всё-таки творится с русской "р"?
А то я ввожу "Питер", а получаю "Питеh"!

Спасибо: 0 
Профиль
Ответов - 75 , стр: 1 2 3 4 All [только новые]
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 105
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет