Войти
ФлеймФорумПроЭкты

Ü (Programmiersprache) (38 стр)

Страницы: 134 35 36 37 38 39 Следующая »
#555
12:48, 17 окт. 2019

entryway
Соболезную.


#556
11:42, 3 ноя. 2019

Пишу потихоньку документацию. В процессе осознаю, как же много всего уже содержит язык и как одно переходит в другое.
Думаю, на составление полной документации у меня уйдёт ещё много времени, месяц или два, а может даже и больше.

#557
22:35, 3 ноя. 2019

Вот ещё вариант лого:
logo-Gebrochene-Grotesk | Ü (Programmiersprache)

Норм? Или слишком готично?

#558
22:42, 3 ноя. 2019

Panzerschrek[CN], отлично.

#559
22:45, 3 ноя. 2019

Panzerschrek[CN]
Мне нравится. Классно смотрится.

#560
23:19, 3 ноя. 2019

Теперь Ü код надо будет писать так:
Изображение

#561
(Правка: 0:13) 0:13, 4 ноя. 2019

Panzerschrek[CN], осталось сделать ключевые слова на немецком.

klasse
öffentliche
importieren
и тд
#562
1:13, 4 ноя. 2019

нихт ферштейн...

#563
(Правка: 3:18) 3:14, 4 ноя. 2019

Джек Аллигатор

Hände hoch
Nicht schießen
Jawohl
Halt
Diese
#564
11:12, 4 ноя. 2019

Джек Аллигатор
> осталось сделать ключевые слова на немецком
Макросы есть, через них для части ключевых слов можно создать псевдонимы.

Alikberov
> Halt
Есть такое.

#565
17:07, 4 ноя. 2019

Panzerschrek[CN]
> Пишу потихоньку документацию.
Ü-теранство! 95 тезисов правильной разработки софта!

+ публикация документации
#566
17:39, 4 ноя. 2019

skalogryz
Надо будет как-нибудь придти к дверям гомитета стандартизации C++ и прибить к ним свои 95 тезисов.

#567
17:07, 9 ноя. 2019

Решил я тут ради интереса собрать программу на Ü под WebAssembly.

----начало прохладной истории-----

Для начала надо было собрать кодогенератор для WebAssembly. Попытался я это сделать - ошибка сборки. Как оказалось, в llvm-3.7.1 этот генератор ещё был экспериментальным. Видимо, придётся взять llvm посвежее.
Скачал llvm-9.0.0. Понятно дело, с ним ничего не собралось. Кое-где поломали интерфейсы, надо было исправлять. Какое-то время я исправлял код под новые интерфейсы.
Таки собрал компилятор с новым llvm и с кодогенератором WebAssembly. Сгенерировал какой-то объектник. Нашёл в сети пример, как на богомерзком JavaScript запустить код  на WebAssembly с божественным Ü. Пытаюсь загрузить исходник на WebAssembly - получаю ошибку безопасности браузера. Как оказалось, грузить динамически файлы из локальной директории вот так вот просто нельзя. Чтобы эту хрень обойти, поставил расширение для Хромого, которое бы поднимало локальный веб-сервер.
Таки загрузил свой WebAssembly модуль. Но почему-то в нём не находятся функции - таблица экспорта пуста. Долго гугля (безрезультатно) и всматриваясь в код кодогенератора, я обнаружил, что почему-то функции не записываются в таблицу экспорта. Я офигел - как так-то, как всё без этого работает? На коленке пропатчил код кодогенератора в llvm и о чудо - экспорты появились, и функции на  Ü стали запускаться в браузере.
Начал расследовать, в чём же тут дело. Залез на github и нашёл коммит, которым отломали экспортирование функций. Начал немножко проклинать автора этого коммита. Поискал в bugzilla, нет ли на это бага - не нашёл.
Поразмыслив, я понял, что на самом деле кто-то где-то добавляет функции в таблицу экспорта, как-то же у всех работает сборка под WebAssembly. Начал гуглить, в процессе узнал о такой штуке, как wasm-ld. Как оказалось,  с какого-то момента всю логику по построению таблиц экспорта и много чего ещё вынесли именно в неё. При этом фактический формат WebAssembly файлов остался тем же и браузер спокойно переваривал то, что эквивалентно нативному объектному файлу.
Запустил таки wasm-ld для файла, полученного из Ü исходника, и о чудо - таблица экспорта появилась.

----конец прохладной истории-----

#568
(Правка: 20:00) 19:32, 9 ноя. 2019

wabt ещё предлагает интерпретатор webassembly, чтобы с браузером не возиться.
но интепретатор убогий

таблицы экспортов в объектных файлах им не нужны, тк они ставят описание символов в доп секцию (которая не является стандартом webassembly)
wasm-ld, как порядочный компоновщик, читает символы, и результат уже компонует в файл с таблицей экспорта

#569
22:20, 9 ноя. 2019

skalogryz
> webassembly
> чтобы с браузером не возиться

WebAssembly как раз мне нужен, чтобы с браузером возиться. Если бы мне не надо было возиться с браузером, за WebAssembly я не взялся бы.

Сейчас вот надо придумать, как бы сделать так, чтобы всякие функции сишной стандартной библиотеки были доступны из браузера. Думаю, без emscripten тут не обойтись.

Страницы: 134 35 36 37 38 39 Следующая »
ФлеймФорумПроЭкты