В смысле Visual Studio? У меня как и в .bat, C:\Program Files (x86)\Microsoft Visual Studio\
, но в этой папке только 1 файл - C:\Program Files (x86)\Microsoft Visual Studio\COMMON\IDE\IDE98\ASP.TLB
, и папок кроме COMMON
, IDE
и IDE98
нету. Больше отсутствующих путей не нашёл в .bat файле (я не проверял файлы с PABC в названии).
Ищите папку, в которой у Вас устанолена Visual Studio 2017. И перепропишите пути в bat-файле. Если Вы этого не сможете сделать, то дальше двигаться нельзя
У меня через bat давно не получалось, так что просто открываю Visual Studio, выбираю проект pabcnetc.sln, компилирую, закрываю, открываю PascalABCNET.sln, компилирую, потом выхожу из Studio и запускаю PascalABCNET.exe. Можно ещё перед компиляцией Debug на Release заменить.
Надо разобраться чтобы получалось
Ладно тогда как то в другой раз, я сейчас оптимизацией 3D графики голову забиваю так что в студию устанавливать и разбираться не буду лучше… Ну если кто то для меня файл установщика кинет - я протестирую с радостью. Вот изменённый PABCSystem.
Изменения рассматриваются и принимаются только через пулл-реквесты.
Студия не установлена
Это да, но сначала надо же протестировать, а я не могу собрать релиз с изменением, с этим загвоздка. Или вы бы приняли не протестированный? Всм добавить изменения и если что откатить?
Ну, ставьте Community-студию и тестируйте. Без студии никуда…
Увидел, что в сборке 1602 от 28.12.2017 наконец-то закрыли issure по поводу введения синонима ** для Power(). Увидел также перегрузки для . Но пока что не удалось воспользоваться этой операцией. Выражение Writeln(210) напрочь бракуется компилятором c выдачей сообщения “Встречено ‘*’, а ожидалось выражение”. Я что-то неверно понял?
Похоже, что в сборку 1602 попало не все, что сейчас отмечено исправленным на ГитХаб. В самом деле, там изменения датированы даже 30.12.2017. Собственно, это то, о чем уже не раз говорилось: когда выходит новая сборка, очень непросто понять, что в ней нового или исправленного по сравнению с предыдущей сборкой.
закрыли только вчера, а вчера было 29-е
Да вот купился на то, что новая версия от 28-го появилась 30-го. Непринципиально, что пока нет **, главное - вопрос полуторагодичной давности решился)))
Странно, а я вроде раньше её скачать смог… Насчёт реализации - для всех ** было использовано обычное Power(real,real):real
. Может стоит для integer
сделать Power(integer,integer):int64
? Я мог бы реализовать 1 из быстрых алгоритмов для целочисленного возведения в степень и сделать пулл реквест. Есть какие то принципиальные возражения почему это не подходит паскалю?
Это нельзя сделать, так как степень может быть отрицательная. А ограничителей where T: integer and T > 0 у нас нет.
Главное, чтобы появилась операция **, а уж перегрузить её, если что, можно и самостоятельно. Конечно, приятнее, привычнее и короче было бы видеть не , а ^, но уж коль Н.Вирт закрепил за ^ указатели - тут уж не попляшешь. У меня вот чешутся руки на возведение в степень матриц и простых дробей, потому что через Power() некрасиво смотрится. Ведь тогда можно определить для матрицы a(-1) как операцию нахождения обратной матрицы и это куда ближе к принятой в линейной алгебре нотации, чем a.Inv или Inv(a).
Ну да действительно… Кстати новая версия только что вышла.
Ну, были тут обсуждения:
Julbin считает, что это затратно. А у нас эффективный компилятор
В таком случае может сделать директиву на это?
Ну да: Вы сделаете, а мы - директиву