LINUX.ORG.RU

Zig 0.8

 , ,


2

5

После 7 месяцев работы и 2711 коммитов вышла новая версия Zig: 0.8

Zig это:

  • Современный компилятор С

  • Современный компилятор С++

  • Компилятор языка Zig

  • Сборочная система для C, C++, языка Zig

  • (Планируется) Пакетный менеджер для С, C++, языка Zig

Zig разрабатывается под лицензией MIT: https://github.com/ziglang/zig/blob/master/LICENSE

Язык Zig – это язык общего назначения, который старается быть простым. Нет макросов, скрытых аллокаций, скрытого потока управления.

Небольшая заметка, которая пытается объяснить зачем нужен Zig, когда уже есть C++, D, и Rust: https://ziglang.org/learn/why_zig_rust_d_cpp/

Даже если вам не интересен язык Zig, возможно вам будет интересен Zig как кросскомпилятор С или С++.

#include <iostream>
int main() {
    std::cout << "Hello World!\n";
    return 0;
}
$ zig c++ -o hello hello.cpp -target riscv64-linux
$ qemu-riscv64 ./hello
Hello World!

Ещё про использование zig как кросскомпилятора: https://andrewkelley.me/post/zig-cc-powerful-drop-in-replacement-gcc-clang.html

В новой версии:

  1. Обновление LLVM до LLVM 12.

  2. Поддержка arm64 macOS (aka the Apple Silicon) и также поддержка кросскомпиляции C, C++, и Zig в arm64 и x86_64 macOS.

  3. Zig также разрушает миф, что вам нужен Mac и Xcode для компиляции кода для Mac OS. Заголовочные С файлы Apple выложены под Apple Public Source License которая разрешительная.

Так что вы можете собирать бинарники для Apple из-под Linux/Windows/FreeBSD без XCode:

#include <iostream>

int main() {
   std::cout << "Hello World!\n";
}
$ zig c++ main.cpp -o test -target x86_64-macos
$ file test
test: Mach-O 64-bit x86_64 executable, flags:<NOUNDEFS|DYLDLINK|TWOLEVEL|PIE>

Подробнее: https://ziglang.org/download/0.8.0/release-notes.html#macOS-Support

и

https://github.com/ziglang/fetch-them-macos-headers

  1. Добавлена поддержка WASI libc

  2. Начальная поддержка Haiku

  3. Изменения в языке: https://ziglang.org/download/0.8.0/release-notes.html#Language-Changes

  4. Изменения в стандартной библиотеке: https://ziglang.org/download/0.8.0/release-notes.html#Standard-Library

  5. Zig поддерживает Position Independent Executables, даже когда компилируются статические бинарники

  6. Изменения в сборочной системе: https://ziglang.org/download/0.8.0/release-notes.html#Zig-Build-System

  7. Обновление musl до 1.2.2, mingw-w64 до 9.0.0, возможность нацеливания glibc 2.33

Полный список изменений: https://ziglang.org/download/0.8.0/release-notes.html

>>> Официальный сайт

★★★★★

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

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

и ты действительно Владимир, то о твоём проекте мы говорили ровно год назад и тогда по описанию он был примерно на той же ступени разработки. Что изменилось за год?

Добавился новый API, обеспечивающий эффективную работу с динамическими объектами, …
API проверен в реальных разработках.
Например с использованием его разработка подсистема «Таблица 1С».
Ведется разработка объектно-ориентированной базы данных.
Главное то, что API теперь действительно пригодно для использования в любом языке программирования и обеспечивает возможность использования динамических объектов.
Ныне как уже сказано разрабатываю API, обеспечивающее возможность использования объектных баз данных.

Что касаемо ЛОР-а, то был некий Владимир, который троллил и зафлудил весь ЛОР.
Модераторы здорово то и разбирались в том кто флудил.
А ну как за подписью Владимир было тонны грязи.
Дальше вы все знаете.
Когда модератору сказали, что Владимир зарегистрировался, он без всяких выяснений забанил и удалил все посты.
Вот так.

Короче жуть и адок …

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

Что касаемо ЛОР-а, то был некий Владимир, который троллил и зафлудил весь ЛОР.

Троллил все мои посты. Жуть …

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

Ныне как уже сказано разрабатываю API, обеспечивающее возможность использования объектных баз данных.

Это API очень емкое /индексы, …, …, … / …

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

Меня за результат прямо в этой теме назвали наркоманом (если я правильно расшифровал), а тебя в какой-то другой теме местным юродивым.

Да на ЛОР это запросто.
На кого не вылили две тонны помоев и не оскорбили 52357 раз, тот не форумчанин.
А вам, что за дело «ПРИШИЛИ»?

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

Когда модератору сказали, что Владимир зарегистрировался, он без всяких выяснений забанил и удалил все посты.

А это ты регистрировался или нет? Тот регистрант был редкостный идиот, правильно его забанили.

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

Тот регистрант был редкостный идиот, правильно его забанили.

Разработчик Python сказал, что он благодарен короновирусу …
Я с горяча сказал, что у всех IT-шников «бинарная логика».
Добрый человек капнул модераторам, что вот мол всех материт.
Были посты где в разных тредах Бога шельмовали и так просто это оставить не имел право …
Если у меня были плохие посты, то почему же сравнительно быстро у меня scor перевалил за 50?

Не логично

Были посты по C++ в которых высказывал свое отношение к стандартам.

Переходов на личности ни в одном посте не было.

На ЛОР всех идиотами без исключения называют.
Это фича такая форума …

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

Я тя умоляю, какие деньги? Речь сейчас идет о том, чтобы можно было хотя бы просто работать. Речь об устойчивой и безопасной творческой мотивации.

Могу поделиться своими наблюдениями за 10+ лет. От занятия opensource огромная польза, даже если это писанина «в стол». Дело в том, что подавляющее большинство доступной работы технологически отсталая. В одной относительно крупной конторе на Манхэттене мне перед интервью похвастались, что они используют git, postgresql и kafka. И это — нормально! Потому что далеко не всем нужен bleeding edge, и кто-то еще на AngularJS сидит и доволен. Поэтому, pet projects — это нормальный способ быть на острие прогресса, если очень хочется.

Далее. Русские (бСССР) программисты довольно пассионарные в повпросах инжиниринга и стиля кода, что часто тупо конвертируется в токсичную атмосферу на работе («мы не разрешим тебе хранить вот эти файлы настроек IDE в репозитарии, потому что никто так не делает»). Свои проекты — это возможность иметь эмоциональную отдушину и делать так, как считаешь нужным, а не так, как считает правильным коллектив или как развивается логика бизнеса (функционал в приоритете перед техническим долгом). Pet projects дают возможность работать работу на работе за деньги. Что работодатели, на самом деле, очень любят.

Тянуть свои проекты на полном самофинансировании — это совершенно нормально. Так много людей делает. Очень часто работодатели смотрят косо, когда ты даже просто донаты за это получаешь на гитхабе. Конфликт интересов, да.

Делать проекты в одиночку — это нормально. Это минимализирует как легальные риски, так и трудозатраты на взаимодействие с сообществом. Люди всякие бывают.

Делать проекты «годами» и не использовать их «в продакшене» — это тоже нормально. Использование накладывает определенные обязательства, которые ты можешь и не потянуть по разным причинам. Или не захочешь тянуть. Production-proof на самом деле не значит ничего. Что-то значит покрытие тестами и вообще пайплайн валидации кода.

Ну, и последнее (здесь), это то, что сам процесс просто офигенен. Работа ни в какое сравнение не идет. Даже «работа-мечта». Так что, ребята, начинайте свои проекты, присоединяйтесь к существующим (Zig), несмотря на весь потенциальный негатив, который с этим может быть связан. Позитива на много больше.

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

Добрый человек капнул модераторам, что вот мол всех материт.

Тебя забанили за твои гомофантазии и флуд.

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

Тебя забанили за твои гомофантазии и флуд.

Какие гомофантазии?
Очередной троль похоже «правду матку» режет …
М-да, ЛОР в своем репертуаре.
Начинается поливание третьей тонной …
Троллям на ЛОР

Верят

PS: Хватит врать уже троль …
У меня ни одного гнусного поста на ЛОР ни когда не было.

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

Да по вашей «походочке» сразу понял с кем имею дело …
Вы лишь подтвердили догадку.

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

Эти «уколы» в равной степени относятся и ко мне, и к ещё некоторым разработчикам на форуме

Sorry если обидел.
Просто на форуме часто и густо льют помои.
Вообщем sorry /сорвался/.

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

Это мое дело, о чем мне фантазировать …

Это ваше право.
Если не секрет зачем вы уже несколько лет меня троллите?

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

А вам, что за дело «ПРИШИЛИ»?

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

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

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

Не знаю даже, что и сказать.
Для меня это вообще не проблема.
Какие планы по разработке компилятора?
Может быть и другие проекты начали?

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

Пытаюсь GUI одолеть. Так как проект должен быть предельно независим от моды, то нельзя использовать фреймворки, типа Qt или gtk, которые завтра могут сильно поменяться или исчезнуть. Приходится использовать примитивный SDL, у которого в базовой библиотеке даже вывода текста нет. Есть дополнительная библиотека для векторных шрифтов, но она требует таскания вместе с приложением файла шрифта. SDL тоже может исчезнуть, но его будет проще заменить.

Что касается компилятора, то можно было бы попробовать транслировать в LLVM IR, например, ради проверки независимости синтаксиса и вообще идеи от C++, но пока мне лень.

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

Если ты откажешься от Gtk/Qt то незрячие не смогут пользоваться твоими приложениями, тема будет отличаться от системной, могут возникнуть проблемы с HiDPI, итд.

С SDL2 уже проблемы есть, они в рендере что то поменяли и теперь отрисовка через SDL_Renderer на некоторых видеокартах глючит до черного экрана.

Попробуй nuklear или nuklear_cross (используется в метапроге).

MOPKOBKA ()
Последнее исправление: MOPKOBKA (всего исправлений: 2)
Ответ на: комментарий от Kogrom

нельзя использовать фреймворки, типа Qt или gtk, которые завтра могут сильно поменяться или исчезнуть

Это ты высасываешь риски из пальца, создавая себе дополнительную работу на ровном месте.

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

Попробуй nuklear или nuklear_cross (используется в метапроге).

Да, я читал про nuklear. Идея у проекта неплохая. Даже если не внедрять прямо эту библиотеку, то можно смотреть как на образец.

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

Это ты высасываешь риски из пальца, создавая себе дополнительную работу на ровном месте.

Я смотрю на старших товарищей. C++ или Rust не включают в стандартную библиотеку GUI, C# включает, но у них штат большой, а кроме того они всё время что-то выдумывают. Вначале был Windows.Forms, потом WPF, теперь ещё что-то. Есть ещё Tcl, но и он не использует gtk или Qt.

С другой стороны хочется иметь какие-то минимальные возможности по работе с графикой в стандартной библиотеке, типа модуля graph в Паскале. Также интересен подход OpenCV HighGUI:

While OpenCV was designed for use in full-scale applications and can be used within functionally rich UI frameworks (such as Qt*, WinForms*, or Cocoa*) or without any UI at all, sometimes there it is required to try functionality quickly and visualize the results. This is what the HighGUI module has been designed for.

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

С SDL2 уже проблемы есть, они в рендере что то поменяли и теперь отрисовка через SDL_Renderer на некоторых видеокартах глючит до черного экрана.

Ссылочку бы почитать. По мотивам некоторых ваших тем появляется у меня сильное подозрение, что это вы с метапрогом не осилили SDL.

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

Что «Любое приложение с отрисовкой через SDL_Renderer, хоть примеры с офф.сайта.»?

Я не собираюсь рыскать по сайту и пытаться понять, что вы имели в виду. Дайте пример, который у вас лично

глючит до черного экрана.

или ссылку на багрепорт.

Siborgium ★★★ ()
Последнее исправление: Siborgium (всего исправлений: 1)
Ответ на: комментарий от Kogrom

Я смотрю на старших товарищей. C++ или Rust не включают в стандартную библиотеку GUI

Они еще много чего не включают, что хотелось бы иметь. А не включают, потому что это титаническая работа, которая не окупится. В JVM огромная стандартная библиотека, но мы всё равно используем сторонние либы, потому что они лучше, чем то, что Sun в свое время напихала в библиотеку, а теперь вынуждена десятилетиями тянуть за собой.

Тот же Vcpkg прекрасно с этим всем справляется. Там есть и Qt, и Gtk. И еще много чего.

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

Пытаюсь GUI одолеть. Так как проект должен быть предельно независим от моды, то нельзя использовать фреймворки, типа Qt или gtk, которые завтра могут сильно поменяться или исчезнуть.

После разработки API для работы с объектно-ориентированными базами скорее все начну GUI с scratch разрабатывать.
Какие успехи у вас в разработке GUI?

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

Для @fernandos.

На форуме часто форумчане переходят на личности /оскорбляют друг друга/.
Это и называю помоями.
Не против конструктивной критики, но ее то часто и нет …

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

Для @fernandos. На форуме часто форумчане переходят на личности /оскорбляют друг друга/.

Вовочка себе нового покровителя нашел?

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

Какие успехи у вас в разработке GUI?

Успехи минимальные. Я потихоньку добавляю возможности, ожидая когда система ограничений, наложенная на мой DSL, лопнет. Таким образом, разработка GUI нужна не для удобства воображаемого пользователя, а для тестирования системы.

Я уже показывал игрушку с цветными кнопками и индикаторами состояния объектов: https://www.youtube.com/watch?v=YZUAp45pT8Q . Здесь система начала трещать по швам, но ещё выдержала. Но GUI здесь совсем примитивный. Значит надо проект сложнее. Например, простенький графический редактор. Тем более, что и GTK этим путём создавалась.

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

Я потихоньку добавляю возможности, ожидая когда система ограничений, наложенная на мой DSL, лопнет. Таким образом, разработка GUI нужна не для удобства воображаемого пользователя, а для тестирования системы.

С Богом!

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

К фаангу на интервью не попасть, если ты не в сша.

У гугла ведь офисы не только в штатах?

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

Я потихоньку добавляю возможности, ожидая когда система ограничений, наложенная на мой DSL, лопнет.

struct вам нужно разработать такой, чтобы он был === struct Си. Иначе «удачи не ведать» …

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

Я потихоньку добавляю возможности, ожидая когда система ограничений, наложенная на мой DSL, лопнет.

Добавьте в DSL /с использованием начального и конечного тега/ вкрапление С++ кода.
Сразу функциональность вашего DSL возрастет …

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

Шутка

В крайнем случае сможете любой C++ заключить в теги.
И все!

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

Добавьте в DSL /с использованием начального и конечного тега/ вкрапление С++ кода.

У меня можно подключить файлы с кодом на C++ как модули. Я думаю, что это лучше, чем смешивать в одном модуле два языка.

Ограничения языка связаны с управлением памятью. Память в куче выделяется только неявно через массивы и словари. Указателей нет, а ссылки есть только в параметрах процедур. Таким образом, в одной структуре не может быть указателя/ссылки на другую структуру. Это упрощает код, но усложняет конструирование каких-нибудь двусвязных списков, деревьев. Думаю, можно выкрутиться через идентификаторы, либо подключением кода на C++.

Кстати, насколько я понял, в синтаксисе Zig тоже нет средств для выделения памяти в куче. Для этого надо использовать аллокаторы из стандартной библиотеки. Хотя указатели в синтаксисе есть.

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

Объектные базы можно использовать вместо: xml /и его разновидностей/, json, ini, dbf, xls, doc, jpeg, png, mp3, любая СУБД, …
Почему так?
Потому что объекты может быть любой сложности.
Конечно при этом должны быть разработаны конверторы для форматов данных в объект.

Для xml такой конвертер разработал.
Ныне придется разработать конвертер для Firebird /кстати non problem/.
Все пока ok!

Слава Святому Господу Отцу Небесному!
Слава Святому Господу Иисусу Христу!
Слава Святому Господу Святому Духу!
Слава ВсеСвятой Владычице Нашей Богородице!
Слава Царице Небесной!
Слава Царице Милости!
Слава Святому Животворящему Кресту Господа Нашего!

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

Если ты занимаешься базами данных, то тебе нужно думать не в терминах объектов, а в терминах данных, т.е. кодировок информации в заданной модели памяти. Вот тебе пример. Объекты — это логическая модель представления данных. Тогда как все характеристики твоей системы зависят от физической модели представления данных.

Обычно языки программирования представляют объекты в виде наборов последовательно расположенных байтов в памяти. Это подходит для модели автоматов, к которым сводятся объекты, так как всё состоятние объекта хранится в связном участке памяти, что дружественно для кэша.

Но это не подходит для аналитики, например, обхода объектного графа, так как приходится «скакать» по памяти, впустую расходуя её пропускную способность. А вообще, любой специалист по базам данных должен знать вот это.

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

Если ты занимаешься базами данных, то тебе нужно думать не в терминах объектов, а в терминах данных, т.е. кодировок информации в заданной модели памяти. Вот тебе пример.

Улыбнул весь ваш пост.  

Неужели вы не поняли о чем API и для чего?

Хорошо еще раз.
Вот скажем есть 1С, код которой содержит более 60000 классов и который предоставляет функциональность 831 объекта и …

Теперь рассмотрим иной проект.
Он предоставляет функциональность 10831 объекта и …, но для реализации этой функциональности классы вовсе не использовались.
Вместо них использовались динамические объекты и динамический код.

Так понятно?

Вот поэтому то и «улыбнул» ваш пост …

PS: Старался помягче вам объяснить, чтобы вас не обидеть.

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

Вот тебе пример.

Идея тут понятна, но код примеров, мягко говоря, странный, так как не важно, пиксели у нас или воксели, точка будет из R, G, B (A), а не из x, y, z типа float. И получать нам надо цвет или какую-то его компоненту в определённой координате. То есть функция будет Color get_point(int x, int y, int z). А уже R, например, можно хранить в отдельном массиве или в структуре пикселя.

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

PS: Старался помягче вам объяснить, чтобы вас не обидеть.

Не переживай. Обидеть меня, конечно, можно. Но это получится далеко у каждого. Что касается дискуссий в интернетах, то я еще помню золотые времена LORа с Irsi, Ogr и blueseman, когда тут было еще принято говорить правду в лицо, а треды легко досигали 1000 сообщений. Мы тут вот, хоть в топ и вышли, но до 500 не дотягиваем.

Неужели вы не поняли о чем API и для чего?

Когда люди говорят про API, то имеют в виду программный интерфейс к данным. Хороший API многого стоит, и в случае БД его проектирование делается по-особенному (ввиду высокой сложности). Но в центре внимания всё равно данные и то, как ты их организуешь. А организация данных зависит от задачи, которую ты решаешь. Например, объекты хороши для представления активных или реактивных сущностей (пользовательский интерфейс), но как минимум «так себе» для представления разнообразных фактов. И уж тем более не годятся для представления знаний. Объектно-ориентированные БД не взлетели за исключением нескольких узких областей.

Вот тебе еще пример. Есть у тебя графовая модель данных. И ты решаешь, какую БД для неё использовать. Если твоя задача сводится к traversal (кратчайший путь, например), то ты выберешь ссылочную модель представления графа в оперативной памяти.

Если же тебе надо искать подграфы в графах (pattern matching), то выберешь RDF-подобную модель с реализацией на B-trees. Если и то, и то, то придется иметь две реплики графа с разной базовой структурой.

Умный API такие вещи может скрыть от кода. Но без структур данных API не имеет смысла.

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

Например, объекты хороши для представления активных или реактивных сущностей

API решает задачу разработки динамического объекта любой сложности и предоставляет программисту функциональность для возможности работы с объектами /тоже самое можно применить к динамическому коду/.

Поэтому, когда вы говорите, что разрабатываю СУБД, то это совсем «не о том».

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

А уже R, например, можно хранить в отдельном массиве или в структуре пикселя.

Это уже как угодно. На практике мы используем какую-то комбинацию SoA и AoS, распределяя данные по памяти так, чтобы максимизировать эффективность использования кэша на заданном множестве алгоритмов.

Структуры данных подбираются под задачу, поэтому для эффективного языка крайне важно предоставлять в этом плане высокую гибкость. С++ здесь более-менее хорош. С — никакой из-за отсутствия мономорфного обобщенного программирования. А Java — вообще отстой из-за прибитой гвоздями к рантайму объектной модели памяти на основе списковых структур (AoS).

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

API решает задачу разработки динамического объекта любой сложности

Что ты понимаешь под сложностью объекта?

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

Что ты понимаешь под сложностью объекта?

Далее не много утрирую …

Сложный объект - массив, каждый из элементов, которого содержит ссылку на разные объекты.
Например первый элемент содержит ссылку на список, каждый из элементов, которого ссылается на дерево, каждый node из которых «сложный объект» …

Можно и по другому сказать.
Скажем программист разработал, 1000 сложных объектов, которые как то там взаимно увязаны.

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

Далее не много утрирую …

А вы говорите - «разрабатываете» СУБД …

Обидно, понимаешь ли ... /текст из "Кавказская пленница"/
anonymous ()
Ответ на: комментарий от anonymous

Сложный объект - массив, каждый из элементов, которого содержит ссылку на разные объекты.

Ну окей. Дескриптивная сложность, это называется. Само по себе годно, но тебе стоит знать об этом деле больше...

Вот из твоей области. Скажем, ты — главный программный архитектор в твоей епархии. Бухгалтерию на 1С уже всю автоматизировали и на кого-то снизошла во время Великого поста благодатная мысль автоматизировать само богослужение. А что? Цифровой век же, киберпространство, виртуальная реальность и всё такое. Если есть какая-то реальность, Церковь должна в ней присутствовать. И вот перед тобой встает задача — как представить благодать в виде объекта в твоем API. Богословский спор на пикничке за когорчиком разгорелся нешуточный. Одна сторона (иподьякон Петя) утверждает, что благодать принципиально непредставима в виде объектов, потому что она вообще невыразима. На что другая сторона (хитрый пономарь Вася) говорит о том, что раз мы о благодати вообще можем что-то говорить, то по крайней мере в виде объекта можно представить то, что мы о ней говорим, т.е. наш вербальный отчет о переживании.

И вот тут ты такой со своим API. Сдюжишь? (true story, кстати).

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

И вот тут ты такой со своим API. Сдюжишь?

Все объекты 1С 7.7 и частично 1С 8.x у меня - набор динамических объектов.
Так вот к примеру API, позволяет динамически загрузить архитектуру всех объектов 1С и использовать их.
Например динамически сформировать шаблон mxl и использовать его для формирования скажем результата запроса к данным.

И это не хвастовство.
Все функционирует ok!

Только просьба не делать вывода, что разрабатываю 1С.

Опера НЕ О ТОМ ВОВСЕ
anonymous ()
Ответ на: комментарий от anonymous

Только просьба не делать вывода, что разрабатываю 1С.

Оторвись ты от своей 1С. Твой API потянет задачу сделать поиск по содержимому картинок?

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