Почему оно тогда померло? Или не померло, а что-то нишево-дорогое? Если про dbase я слышал(именно что слышал, даже наверное не трогал никогда и никак), то про Clipper, даже ни краем уха.
Почему оно тогда померло? Или не померло, а что-то нишево-дорогое?
Потому что не SQL. Мода прошла. Как на UNIX. Или на NFS.
Если про dbase я слышал(именно что слышал, даже наверное не трогал никогда и никак), то про Clipper, даже ни краем уха.
Это одно и то же. DBase/Clipper/Foxbase/Foxpro. А дальше Microsoft решил, что ему неинтересно (так как конкуренция с MS SQL и MS Access) и 64-разрядной версии Foxpro уже не существует.
У smbfs, которую всюду пихают вместо неё проблем гораздо больше.
У xbase тоже «серьёзная проблема в дизайне»: не SQL, нет серверной части (программы-клиенты работают с файлами), как следствие регламентные действия типа восстановления индексов приходится делать из пользовательской программы. Про контроль доступа я уж не говорю. Всё это легко обходилось через создание сервера приложений (клиенты соединяются к нему, а уже он — к базе), но тут уже играла роль лень программистов и то, что в таком режиме приходится пользовательский интерфейс писать самому, а не использовать встроенный (для файлового режима программу типа складского учёта можно было за сотню строк кода наваять).
Туплю, проблема была не в nfs, а в интерфейсе vfs до какой-то 2.x версии ядра, просто связанно это было с реализацией NFS в юзерспейсе (GaneshaNFS). Проблема была в том, что нельзя было зарезолвить список ссылок по inode, поэтому inode нельзя было использовать как stateless хэндл. Вспомнил что ступал на грабли, возле протокола, но не вспомнил сразу на какие именно :)
А кто нибудь знает ,как называется эта или похожая фишка в этом языке [я никак не могу найти ] - Можно вызвать функцию с несколькими аргументами ( каждая из них ф-ция) и если первая возвращает true , то следующие ф-ции не вызываються ?
Тут как с X Window. Для своей ниши решение было идеальное, но надо «модно». Теперь в X Window гоняются гламурные картинки вместо окон и положили на xrdb, а в XBase++ есть http://www.sqlexpress.net/sqlxpp/index.htm, который позволяет писать на SQL.
Потому что не SQL. Мода прошла. Как на UNIX. Или на NFS.
Если про dbase я слышал(именно что слышал, даже наверное не трогал никогда и никак), то про Clipper, даже ни краем уха.
Это одно и то же. DBase/Clipper/Foxbase/Foxpro
не SQL
Ага-ага. Только в FoxPro (которое Foxbase+) чот вполне SQL-ный язычок запросов с индексами и транзакциями, который правильно дергать надо чтоб работали рашмор-оптимизации, который просто прям одно и то же с Clipper в котором есть похожая команда USE для открытия таблицы — и прост колонки мапятся в гуй :)
Today, implementations of the dBase language have expanded to include many features targeted for business applications, including object-oriented programming, manipulation of remote and distributed data via SQL
И в статье про DBase чот SQL упоминается и «внутре у ней» RDBMS-пихло, т.к. базейка реляционная в отличие от хиповых плоских «носкулей» (мода на которые уже проходила когда-то))), хотя и хранится в dbf файле, а не на сервере БД... Ну так в корпоративной среде это до 2005-го года вполне себе решалось файл-серверами NetWare :) И еще: насчет «мода прошла» — это в 2005-м году FoxPro 2.6a под досом с подключенными дисками с файлами на файл-сервере NetWare было уже пережитком. Гордые обладатели сокровенных знаний, тихонько изучали PL/SQL и T-SQL, т.к. немного уже превозмогали под накопленными объемами данных. И c Novell какая-то фигня происходила — потому что NetWare, на котором гордые сертифицированные админы пальцевали на собеседованиях, тоже че-т стремительно переставал быть модным :)
Только в FoxPro (которое Foxbase+) чот вполне SQL-ный язычок запросов с индексами и транзакциями
В foxpro запихнули всё, что можно. Это тоже FoxPro:
use tariff
nRecCount = reccount() &&Количество записей
for i = 1 to nRecCount
goto i &&Идем к i-й записи
if tro=0
display &&Печатаем строку
endif
endfor
use
базейка реляционная
Не особо. ACID нету. Транзакции блокируют таблицу целиком.
в отличие от хиповых плоских «носкулей» (мода на которые уже проходила когда-то)
История движется по спирали: BDB, dBase, SQL, redis... Теперь вот к носкулям колонки прикручивают, скоро переизобретут dBase. Но в Docker'е и с Javascript'ом в качестве API.
И еще: насчет «мода прошла» — это в 2005-м году FoxPro 2.6a под досом с подключенными дисками с файлами на файл-сервере NetWare было уже пережитком.
1С 7.7 на dbf файлах, Парус на FoxPro до сих пор много где используется. Причём в случае 1С падение скорости при отказе от dbf очень наглядно. Расчёт амортизации по паре тысяч основных средств на 1С 7.7 занимает пару секунд, на 1С 8 (с MS SQL) - около 3 минут.
Не особо. ACID нету. Транзакции блокируют таблицу целиком.
/0 реляционность (отношения между таблицами, которые таки в наличии), «крутые аббревиатурки» и транзакционность — все трое ортогональны, как векторный базис :)
Ну протокол OSI тоже красив на бумаге, а z/OS (которая OS/360) и NT сертифицированные юниксы (c необходимыми оговорками :)) А реляционность и ACID таки ортогоняльны. SET RELATION TO есть? Есть :)
А реляционность и ACID таки ортогоняльны. SET RELATION TO есть? Есть :)
Надо использовать термины всё-таки в общепринятых значениях. Иначе можно считать MS DOS многозадачной операционной системой, так как в ней возможны резидентные программы, а Windows — таки юниксом.
Но общепринято многозадачная ОС должна позволять запускать произвольную программу в фоновом режиме, а юникс — соответствовать SUS, а не POSIX.
Можно ссылку? Насколько я помню, у Windows NT был только POSIX и FIPS. z/OS и macOS — действительно UNIX. Так там действительно UNIX: оболочка есть, утилиты есть, работать можно как в любом UNIXе.
А хадупная носкуль база тогда тоже никакая не dBase :)
Это разумеется. Также как монга - не Berkeley DB. Это хипстерски переосмысленная модная реализация старых технологий. Также как broadway (GTK3+HTML5) не являются X Window протоколом, но позиционируются как его «модная» «удобная» замена. «display those PHP-written desktop apps in a browser using HTML5 Canvas ... bandwidth-efficient remote desktop via browser; no special client software necessary».
Можно ссылку? Насколько я помню, у Windows NT был только POSIX и FIPS
Сорь, да я тралел :) Думаешь я все эти списки занесунов бабла консорциумам помню. Норм стало только когда Interix «ембрейснули», а он по SUS не сертифицирвался.
https://github.com/harbour/core/ 100% совместим с Clipper и более того:
- поддерживает ООП;
- даже замыкания поддержаны;
- перед компиляцией *.prg код переводит в C;
- хорошая VM;
- грамотно реализованный core;
- в prg можно использовать ограниченный C;
- ...
Не использую https://github.com/harbour/core/ по прямому назначению.
Перевел его на C++, произвел рефакторинг, много чего добавил, ... и использую его API /не для работы с DBF/.
Вообщем использую как одну из library /и не жалею/.
Написал об этом в подкрепление предыдущего message.
А как используешь ? и плиз по этому вопросу есть мысли
А кто нибудь знает ,как называется эта или похожая фишка в этом языке [я никак не могу найти ] - Можно вызвать функцию с несколькими аргументами ( каждая из них ф-ция) и если первая возвращает true , то следующие ф-ции не вызываються ?
Иногда замечания делают, что подпись нужно делать в конце текста.
Но ведь у меня статус «anonymous».
Решил, что своё name уместней помещать в первой строке /ИМХНО - не принципиально/.
Ну вот смотрите, меня зовут Владимир.
А за логин могу сказать - «Мы же не собаки и кошки у которых имен нет».