Not Quite Perl - это облегченная среда для виртуальных машин, подобная Perl 6.
1 ответ

Получение QAST файла Perl 6 из другой программы

Это связано с вопросом о доступе к POD, но это еще не все. Вы можете легко получить доступ к абстрактному синтаксическому дереву программы Perl 6, используя: perl6 --target=ast -e '"Þor is mighty!".say' Это напечатает все дерево абстрактного синтакс…
17 дек '18 в 09:51
1 ответ

"Отсутствует или неверная версия зависимости" после перекомпиляции nqp

Я пытаюсь научиться отлаживать rakudo и nqp. Итак, это моя первая попытка: cd $HOME/debug git clone https://github.com/rakudo/rakudo.git cd rakudo perl Configure.pl --gen-moar --gen-nqp --backends=moar make make install # installs into ./install/bin…
25 янв '19 в 19:43
0 ответов

Анализ ролей NQP

Из этого вопроса в Stackru я обнаружил Type.^roles, который включает в себя все роли, которые составлены в тип. Он работает везде, но не может печатать, если где-то есть роли NQP: say Cursor.^roles# OUTPUT: «No such method 'gist' for invocant of typ…
20 янв '19 в 09:46
0 ответов

Получение модуля модуля без явного его экспорта

Документация в программах на Perl 6, использующих Pod 6 DSL, фактически анализируется как часть кода; это делает эту документацию доступной внутри программы, так как $=pod переменная. Однако мне бы хотелось иметь доступ к этой переменной, чтобы обр…
05 дек '18 в 14:12
1 ответ

Как определить разницу между типами итераторов nqp

В nqp вы можете создать итератор по хешу nqp или по списку nqp. Я хотел бы иметь возможность выяснить, выполняет ли данный итератор nqp итерацию по хешу или списку. Увы, я не нашел способ сделать это. Кажется, они даже имеют одно и то же имя: use nq…
18 мар '19 в 15:07
1 ответ

В чем разница между `nqp::if` и`if` в файле.nqp?

Из World.nqp, строка 3602: nqp::if( nqp::istype(nqp::atpos($task,3),$!Block), QAST::Op.new( :op<call>, QAST::WVal.new(:value(nqp::atpos($task,3))), $self, $getattr ), nqp::if( nqp::iseq_i($code,5), QAST::IVal.new(:value(nqp::atpos($task,3))), …
11 мар '19 в 17:25
0 ответов

Ошибки при использовании Metamodel::ConcreteRoleHOW.new_type

Кажется, нет способа использовать new_type в MetamodelConcreteRoleHOW, который, как следует из его названия, должен использоваться для создания новых экземпляров роли. Основная проблема заключается в том, что при попытке добавить новые роли, как это…
12 апр '19 в 16:30
2 ответа

Ошибки с ролью "карри"

В мире Perl 6 карринг - это универсальный термин, обозначающий частичную реализацию, и он также используется в мире (параметризованных) ролей. Тем не менее, не ясно, как на самом деле использовать его: role Zipi[::T] {}; class Zape does Zipi[::T] {}…
13 апр '19 в 07:44
1 ответ

Разница между одинарной и двойной трубой в Raku Regex (| Vs ||)

В регулярном выражении Раку есть два типа чередования: | а также ||. В чем разница? say 'foobar' ~~ / foo || foobar / # 「foo」 say 'foobar' ~~ / foo | foobar / # 「foobar」
19 мар '20 в 05:00
2 ответа

Как распечатать объект, введите nqp

Как распечатать объект в NQP? (Для отладки) В Раку легко: скажем, что вызывает суть в своем коротком коде цикла dd Крошечный Data Dumper, как показано в этом посте class Toto { has $.member = 42; } class Titi { has $.member = 41; has $.toto = Toto.n…
19 мар '20 в 20:28
1 ответ

Как повторно использовать языковой токен в пользовательской грамматике (Raku)

Я хочу повторно использовать token parameterиз Perl6::Grammar в моем пользовательском сленге, чтобы добавить параметр "custom-param" без указания груза. Что я имею в виду: my $main-grammar = $*LANG.slang_grammar('MAIN'); my $main-actions = $*LANG.sl…
01 апр '20 в 19:06
0 ответов

Поддерживает ли Comma IDE запуск и отладку кода NQP?

Можно ли запустить (прервать / отладить) код NQP внутри Comma IDE? Могу ли я создать конфигурацию отладки, нацеленную на nqp-m и позволяющую прерываться и шагать?
15 май '20 в 16:24
1 ответ

Какая "семантическая модель" представлена ​​в Апокалипсисе №1?

В Апокалипсисе #1 Ларри написал с моим дополнительным ударением: Raku будет поддерживать несколько синтаксисов, которые соответствуют единой семантической модели. Во-вторых, эта единая семантическая модель, в свою очередь, будет отображаться на неск…
10 июл '20 в 01:00
1 ответ

Как переопределить функцию NQPMatch.Str

... Или как изменить $<sigil>.Str значение от token sigil { ... } независимо от совпадающего текста. Да я спрашиваю, как обмануть грамматику выше (т.е. зовя) меня. Я пытаюсь написать сленг для Раку без сигил. Так что я хочу nogil токен, соотве…
02 апр '20 в 04:37
1 ответ

Можно написать парсер приоритета NQP в Raku

Я пытаюсь понять, как я могу переписать парсер приоритета NQP в Raku: Парсер приоритета реализован здесь: https://github.com/Raku/nqp/blob/master/src/HLL/Grammar.nqp NQP должен быть подмножеством Raku, но часть грамматики кажется специализированной.…
19 июл '20 в 18:26
1 ответ

Как убрать мульти метод в Раку

Как я могу дополнить класс мультиметодом, который будет вызываться перед уже определенным? Я пытаюсь включить отрицательный индекс: @arr[-1]как в этой статье, но без изменения источника. Поэтому я увеличиваю массив с помощью: augment class Array { p…
13 апр '20 в 01:30
2 ответа

Можно ли запустить подграмматику внутри грамматики nqp?

Если у меня есть Grammar a и определим Grammar b которые имеют блок '{ ... }' с синтаксисом Grammar a, можно ли как-то связать эти грамматики вместе? Т.е.Grammar a это Tcl и Grammar b встроен C. Как Rakudo делает это при переключении с грамматики Pe…
11 май '20 в 12:54
2 ответа

Струны и пряди в MoarVM

При запуске кода Raku на Rakudo с бэкэндом MoarVM есть ли способ распечатать информацию о том, как данный Str хранится в памяти изнутри запущенной программы? В частности, мне любопытно, есть ли способ узнать, сколько Strands в настоящее время состав…
02 мар '21 в 23:41