ПО, ЭВМ и АСУ из Таможенного Союза

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » ПО, ЭВМ и АСУ из Таможенного Союза » Алфор » Готовы ли мы писать на Алфор-е?


Готовы ли мы писать на Алфор-е?

Сообщений 1 страница 30 из 37

1

спрашивает MihalNik.

Где учебник для Уткина, сразу спросим мы его в ответ.

http://kolmck.ru/AL4/index_ru.htm не открывается (server not found)

0

2

Лис написал(а):

не открывается (server not found)

Но ссылка, данная самим же Лисом открывается:
исходники

0

3

MihalNik написал(а):

исходники

Это только полдела. Вот когда будет пакет для моего пакетного менеджера в Linux (у меня portage), тогда и поговорим.

Для 1Скрипт написали. Это потому что у 1Скрипт большое коммьюнити, более 100 человек.

Отредактировано Лис (2018-09-15 21:07:07)

0

4

тогда и поговорим.

Т.е. Лис не в состоянии?

Это потому что у 1Скрипт большое коммьюнити, более 100 человек.

Расскажите им про ассемблер.

Отредактировано MihalNik (2018-09-15 21:10:07)

0

5

MihalNik написал(а):

Т.е. Лис не в состоянии?

Лис не предлагает использовать Алфор.

Отредактировано Лис (2018-09-15 21:11:05)

0

6

Лис написал(а):

Лис не предлагает его использовать.

Лис предлагает Си. И вообще какой-то пакетный менеджер, т.е. говорит на непонятном языке для 90+% населения Земли, в т.ч. русскоговорящего.

Отредактировано MihalNik (2018-09-15 21:12:46)

0

7

MihalNik написал(а):

Лис предлагает Си.

Только в качестве мысленного эксперимента, для того, чтобы объяснить, почему
писать ассемблер на 1Скрипт это правильно и лучший в мире способ.

На самом деле Лис предлагает сначала написать ассемблер на 1Скрипт, а потом 1Скрипт на ассемблере (и никаких C)

Отредактировано Лис (2018-09-15 21:13:05)

0

8

Лис написал(а):

Только в качестве мысленного эксперимента

Предлагаю Лису раздел "мысленные экс-ты".

0

9

Мысленных экспериментов не бывает. Все кто отсылает к ним являются лжецами.

Отредактировано Павиа (2018-09-15 21:14:47)

0

10

В общем, MihalNik-у слабо сделать для меня пакет и для Уткина учебник,
поэтому писать на Алфор-е я не готов (думаю, что Уткин тоже).

0

11

Лис написал(а):

сделать для меня пакет

М.б. это потому что отдача не очевидна?

писать ассемблер на 1Скрипт это правильно и лучший в мире способ.

Ура!

Отредактировано MihalNik (2018-09-15 21:30:31)

0

12

MihalNik написал(а):

М.б. это потому что отдача не очевидна?

Это вы там с Будденом обсуждайте. У него такая же проблема, нет для языка Яр пакета под мою операционку.

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

0

13

Лис написал(а):

Это вы там с Будденом обсуждайте. У него такая же проблема, нет для языка Яр пакета под мою операционку.

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

Почему "мы"? У меня такой проблемы никогда не стояло.

буду продолжать грызть 1Скрипт

Ага, и ассемблер, правда, без умения сборки ПО даже под свою операционку?

Отредактировано MihalNik (2018-09-15 22:01:57)

0

14

На самом деле Лис предлагает сначала написать ассемблер на 1Скрипт, а потом 1Скрипт на ассемблере

Это просто убиться об стену как производительно. У нас же проблем больше нет :).

поэтому писать на Алфор-е я не готов (думаю, что Уткин тоже).

Да, блин. Это общая проблема, причем здесь Лис, MihalNik, Алфор и 1Скрипт? Если нет описания сложного инструмента им нельзя пользоваться. Вот и все правило. Если на Алфор нет литературы, то писать на нем проблемно. Беда только в том, что MihalNik не агитирует алфорить все и вся, что попадется ему под руку.

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

Вопрос с учебником в Вашем мире будет звучать так - Вы хотите его изучать один или создать сообщество единомышленников? Вот первая практическая задача - написать ассемблер не Вами сразу же ставит вопрос ребром - как? Ну напишите диктант на китайском не зная китайского языка. Это же есть в манифесте - мы слабы потому что нас мало. Нас мало потому что нет пиара. Нет пиара потому что нет денег и литературы (то есть источников информации - как потенциальные послушники единомышленники могут узнать о нас и наших идеях?). Вы знаете что такое мягкая сила? Это не ракеты и танки. Это глянцевые журналы, рассказывающие как хорошо жить если будешь капиталистом и буржуем.

0

15

utkin написал(а):

Беда только в том, что MihalNik не агитирует алфорить все и вся, что попадется ему под руку.

Потому что MihalNik распределяет агитацию на ценные приёмы у разных авторов языков программирования по-русски. Пытается донести какие-то новости.

Если на Алфор нет литературы, то писать на нем проблемно.

Нет никаких если, всё для этого написано.

Спецификация. Подробное структурированное описание языка. Может использоваться как справочное и методическое руководство. Последнее обновление: 07.2018.
Краткое описание в виде набора примеров с комментариями. Позволяет быстро изучить основы языка. последнее обновление: 07.2018.

Первый же пример (там с форматированием и выделением цветом):

1. Класс есть модуль

/*                                                  //l

CLASS {Hello|_world}, UNTESTED : //abcd,j

FUNCTION Main|_hello_world :       //e,j
    << 'Hello, World!' >> .                         //fgh

END                                               //i,j

*/                                                  //l

Пояснения:
a. Любой идентификатор (кроме имени переменной цикла) должен быть либо не менее 8 символов длиной, либо через символ '|' указывается остаток длинного имени.
b. Имя класса {Hello_world}, может быть сокращено до {Hello} при ссылке на класс при его импорте (но не в операторе IMPORT).
c. Имя класса всегда начинается с прописной буквы.
d. Атрибут класса UNTESTED разрешает компиляцию класса без тестирования.
e. Единственный статический метод класса Main (полное имя в примере Main_hello_world) позволяет создать программу, содержащего этот класс.
f. Оператор << выводит в консоль строку текста (или добавляет элемент в массив или строку в накопительную строку), оператор >> ожидает ввода строки текста от оператора консоли.
g. Операторы << могут состыковываться в цепочку. Оператор >> может пристыковываться к такой цепочке справа. Например:
STR X_s|tring
<< 'Введите X:' >> X_s
REAL X|_input_value = X_s.Real
h. Точка завершает функцию.
i. Оператор END завершает класс.
j. Все ключевые слова языка записываются буквами верхнего регистра.
k. Каждый класс размещается в отдельном текстовом файле.
l. Код AL-IV всегда располагается между строками, содержащими символы конца и начала многострочных комментариев: /* и */. Обратите внимание, что символы начала и конца многострочных комментариев противоположны тем, которые используются в C-подобных языках. Это позволяет размещать код на AL-IV, и, например, C#, в одном файле.

Да, примеры для английского языка. Тем не менее:
1. Для русского тоже дано, просто мало.
2. Можно перевести код Алфор (около полусотни тыс. строк качественного кода было полгода назад) на кириллический вариант формальными методами. Почему нет? Собственно локализация там занимала у автора около тысячи строк, если не изменяет память.
3. Локализация библиотек тоже имеется и тоже протестирована. Т.е. можно вообще кучу всего получить действуя по несложной схеме.
4. Замена на кириллический вариант в спецификации вообще ерунда. Там где-то было написано что-то про автоматизацию сборки доков, возможно даже автоматически выйдет при переводе исходников на кириллицу, если примеры вставляются прямо рабочими оттуда. Но даже если нет - это немного работы. Примерно неск. десятков страниц, где в основном русский текст объяснений - на полдня. Да, надо ещё туда приложение, где кликается/добавляется свой вариант замены. Надо делать всё автоматизированно.

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

Да, у Концепта и Алфора может всего и по 1 человеку, а у 1Скрипт - сотня. Но что-то мне подсказывает, что этими двумя человеками для русского языка сделано на порядок поболее, чем той сотней.
Может это потому что я открыл неведомый мне 1Скрипт и через минуту увидел, что локализация спотыкается о пространства видимости. Может отторгает своевольное сочетание латиницы и кириллицы Среда их хоть различает? Или надо идти за этим к Денису - разработчику Яра, языка, с плохим, по мнению Лиса, "комьюнити"?. Может моё мнение и предвзято.

Отредактировано MihalNik (2018-09-16 13:56:46)

0

16

Ну вот я писал, что про Концепт я видел собственными глазами. 1Скрипт я искал из-за его активного пиара Лисом (и не нашел). Сейчас на Алфор дает информацию МихалНик.

0

17

utkin написал(а):

1Скрипт я искал из-за его активного пиара Лисом (и не нашел).

https://github.com/EvilBeaver/OneScript

0

18

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

0

19

utkin написал(а):

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

В 1С у тебя больше опыта, чем у меня. Тебе виднее, какие там библиотеки и синтаксис. Отличия перечислены на сайте. Задать вопросы можно в коммьюнити.

0

20

В 1С у тебя больше опыта, чем у меня.

Он у меня больше поверхностный и теоретический, чем реальное программирование.

0

21

Оказывается в июле доки переехали:
Обновлено:
Ссылка на док-цию в т.ч. уроки (см. AL-IV doks, news, etc.) есть на sourceforge:
https://sourceforge.net/projects/al-iv/

Отредактировано MihalNik (2021-04-11 08:05:25)

0

22

Я правильно понимаю, что:
1) там всё на латинице и перевод рассматривается только как "мысленный эксперимент"?
2) под мой линукс это никто не опакетил, потому что "отдача не очевидна"?

0

23

Лис написал(а):

1) там всё на латинице и перевод рассматривается только как "мысленный эксперимент"?

Там более тысячи строк перевода для ключевых слов и сообщений компилятора и тестовые программы имеются.
Явная поддержка локализации - файл в 600 строк кода. Надо бы глянуть в исходник основного модуля компилятора, для ответа на мой вопрос, там 3 тыс. строк.

2) под мой линукс это никто не опакетил, потому что "отдача не очевидна"?

Под линукс, как понял, сейчас можно v90.8 либо без граф. форм:

30.07.2018 - версия 0.90.9
Изменения:

Платформы / языки:

Поддержка компиляции в языки программирования C++, Java, Python приостановлена. Предыдущая версия 0.90.8 будет оставаться доступной для скачивания;
Добавлена поддержка компиляции Pascal-кода компилятором Free Pascal (консольные приложения + поддержка русского языка).

14.09.2018 - новая версия 0.91.4
Изменения:

Free Pascal + LINUX:

Компилятор может быть откомпилирован для работы в LINUX;
И позволяет в LINUX компилировать код ALIV, используя компилятор fpc;

На данный момент успешно компилируются и работают в LINUX практически все консольные текстовые проекты. За исключением: Test_db; А так же простейшее оконное приложение Test_empty_form;

Отредактировано MihalNik (2018-09-18 22:14:08)

0

24

21.09.2018 - новая версия 0.91.5
Изменения:

Free Pascal + LINUX:

LINUX: компилируются и запускаются с FPC визуальные проекты;
LINUX: Работает графика {Canvas}, включая трансформации.
LINUX: {Paint_lines} - обеспечивается симулируемая каретка (в Linux нет функционала каретки).
LINUX: {Tray_icon} - работает.
LINUX: {OpenGL} - работает.

Прямо всё для Лиса
:rolleyes:

Отредактировано MihalNik (2018-09-24 22:30:58)

0

25

Начал читать, пока прямо вот уважаю:
1 оператор - 1 строка. Это прямо вот моё, В-1 и В-2 :). Ограничение на качество кода.
Авторы явно курят что-то похоже на тоже что и я. Что-то похожее на Паскаль (не Дельфи, на канонический типа Оберона).
Но учебника по-прежнему не нашел. Хотя и есть общее описание, что конечно радует.

ЗЫ. Ссылка битая, правильная ссылка: http://kolmck.000webhostapp.com/AL4 На данном сервисе это возможно просто потому что человек не продлил домен.

Отредактировано utkin (2018-09-25 08:11:59)

0

26

Авторы явно курят что-то похоже на тоже что и я.

Автор явно один.

Но учебника по-прежнему не нашел. Хотя и есть общее описание, что конечно радует.

Есть вводные стати, примеры и спецификация. Читается лучше вначале статьи и спецификация. Примеры написаны в неудобном стиле с нумерацией для послед. комментариев, спецификация намного лучше.
Опыт написания книг у него имеется - руководство по KOL на пару сотен страниц, кажется. Ещё рано :)

1 оператор - 1 строка. Это прямо вот моё

Допускается нарушение операторами ввода/вывода (удобно), выходом из функции (норм) и постфиксными ++/--. Последнее ай-ай-ай.

Отредактировано MihalNik (2018-09-25 09:49:17)

0

27

Лис написал(а):

как это переписать по-русски неясно и не задокументировано,
нужно смотреть на код РусЛуа, чтобы понять.

Зато в AL-IV документировано. И для файлов, включая текстовые, даже что-то там переведено.

/*
['RU']
КЛАСС {Файловые_функции}, ПЕРЕВОД {File_path} :

ФУНКЦИИ:
        Exists = Существует\_файл(Путь_к_файлу)
        Delete_file = Удалить_файл(Путь_к_файлу)
        Rename = Переименовать\_файл(Путь_к_файлу, Новое_имя\_или_путь)
        Move_file = Переместить_файл(Путь_к_файлу, Новый_путь)
        Copy_file = Копировать\_файл(Путь_к_файлу, Целевой_путь)

        Directory_exists = Существует_дир\ектория(Путь_к_директории)
        Create_dir = Создать_дир\екторию(Путь_к_новой_директории)
       
        Catalog = Каталог\_директории( Путь_к_директории, Массив_имен[])
        .
         
ПЕРЕЧИСЛЕНИЯ:
        {file_attr} = {файловые_атр\ибуты} :
            'READONLY' = 'ТОЛЬКО_ЧТЕНИЕ',
            'HIDDEN' = 'СКРЫТЫЙ\_ФАЙЛ',
            'SYSTEM' = 'СИСТЕМНЫЙ',
            'DIRECTORY' = 'ДИРЕКТОРИЯ',
            'ARCHIVE' = 'АРХИВНЫЙ',
            'NORMAL' = 'НОРМАЛЬНЫЙ',
            'TEMPORARY' = 'ВРЕМЕННЫЙ',
            'COMPRESSED' = 'СЖАТЫЙ\_ФАЙЛ',
            'OFFLINE' = 'АВТОНОМНАЯ_КОПИЯ' ;
        .
       
ЗАПИСИ:       
        {file_info} = {файловая_инфо\рмация} :
            Attrib = Атрибуты[]
            Size = Размер\_в_байтах
            Creation = Создание\_файла
            Modified = Изменение\_файла
            Accessed = Обращение\_к_файлу ;
        .
       
ФУНКЦИИ:       
        Detailed_catalog = Детальный_каталог\_директории(
            Путь_к_директории, Имена_файлов\_и_поддиректорий[],
            Детальная_информация[])

        Change_ext = Сменить_расш\ирение(Исходный_путь, Новое_расширение)
       
        Extract_path = Извлечь_путь(Полный_путь_к_файлу)

        Extract_file_name = Извлечь_имя_файла(Путь_к_файлу)
    .   
   
КОНЕЦ
*/

/*
['RU']
КЛАСС {Текст_файл}, ПЕРЕВОД {Text_file} :

ПОЛЯ:
    Path = Путь|_к_текстовому_файлу
    Encoding = Кодировка
    .

МЕТОДЫ:
    Load = Загруз|ить(Строки|_массив[])
    Save = Сохран|ить(Строки|_массив[])
    .

ФУНКЦИИ:
    Text_load = Текст_загруз|ить(Путь|_к_текстовому_файлу, Строки|_массив[] )
    Text_save = Текст_сохран|ить(Путь|_к_текстовому_файлу, Строки|_массив[] )
    .

КОНЕЦ
*/

{файловая_инфо\рмация} - в сокращении "о" не соч. с ж.р.

Отредактировано MihalNik (2018-10-24 20:12:36)

0

28

MihalNik написал(а):

Зато в AL-IV документировано.

это отличное известие для пользователей Алфор.
Однако MihalNik не горит идеей написать парсер машкода и ассемблер (не подтверждает наличие такой цели, не заключает соглашений о совместном её достижении), поэтому нет смысла на Алфор отвлекаться.

0

29

Лис написал(а):

не горит идеей написать парсер машкода и ассемблер

А при чём тут вообще MihalNik? Инструменты отдельно, люди отдельно.
Я, напомню, что ассемблер и Лису не нужен, почему тогда он нужен другим?

Отредактировано MihalNik (2018-10-24 21:17:28)

0

30

MihalNik написал(а):

Инструменты отдельно, люди отдельно.

Верно, у меня есть 1Скрипт, в котором с УТФ-8 всё хорошо.

MihalNik написал(а):

А при чём тут вообще MihalNik?

Он предлагает переходить на Алфор.

MihalNik написал(а):

ассемблер и Лису не нужен

Лису нужен был машкод, но теперь Лис уже согласен просто на перекодировщик из одной кодировки в другую (т.е. и машкод не нужен).

Это не значит, что они (машкод и ассемблер) не нужны совсем, они не нужны в текущий момент.

Отредактировано Лис (2018-10-24 21:46:56)

0


Вы здесь » ПО, ЭВМ и АСУ из Таможенного Союза » Алфор » Готовы ли мы писать на Алфор-е?