Вопросы по теме 'nim-lang'

Переводчик Brainfuck в Nimrod
Я играю с nim (на момент написания все еще назывался nimrod), написав интерпретатор Brainfuck на языке . Без реализованных циклов у меня есть: import os, unsigned const RamSize = 200 type TRam = array[0..RamSize, int] var ram : TRam...
584 просмотров

Каков синтаксис побитовых операций в Nimrod?
Я только открываю для себя Nimrod, и у меня есть основной вопрос (не смог найти ответ в документации). Как вы используете побитовые операции? У меня есть следующий код, где x определяется как int : if x and 1: Это не компилируется:...
1175 просмотров
schedule 24.05.2022

Необъявленное поле в унаследованном типе, компилирующем программу Nimrod
Я пытаюсь скомпилировать следующий код: type TPerson = object of TObject name*: string age: int TStudent = object of TPerson id: int var student: TStudent person: TPerson student = TStudent(name: "Anton", age: 5, id: 2)...
286 просмотров

Nimrod для начинающих - Fizzbuzz - Компиляция и запуск
Я попытался написать, скомпилировать и запустить свою первую программу нимрода - fizzbuzz. Nimrod устанавливается из git и имеет версию. [sayth nimrod]$ nimrod --version Nimrod Compiler Version 0.9.4 (2014-04-28) [Linux: amd64] Copyright (c)...
487 просмотров
schedule 02.05.2023

Nim: включить заголовок C для Posix
Я пытаюсь использовать библиотеку Nim Posix, в частности, статистику файловой системы: http://nim-lang.org/docs/posix.html#Stat Из моих тестов с другими модулями Nim импорт и использование должны работать следующим образом: import posix...
805 просмотров
schedule 19.08.2023

Разница между константой внутри процедуры и снаружи
Это, вероятно, очень глупый вопрос, но кроме видимости, есть ли реальная разница между const внутри proc и снаружи? const foo = "FOO" proc test() = const bar = "BAR" echo foo & bar test() Например, когда внутри, стек...
107 просмотров
schedule 12.06.2023

Nim (стержень) не устанавливается на путь должным образом?
Я следую инструкциям по установке Nim(rod) в Linux. Затем я перешел на этот сайт, который показал следующее: $ echo 'export PATH=$PATH:$your_install_dir/bin' >> ~/.profile $ source ~/.profile $ nim Ввод nim в терминале ничего не...
300 просмотров
schedule 25.05.2022

Как преобразовать фрагмент в последовательность?
Я хотел бы указать последовательность непосредственно из среза (вместо того, чтобы повторять срез и добавлять каждый элемент в последовательность по отдельности). Я пробовал несколько разных способов, но очевидные не работают. var x =...
870 просмотров
schedule 21.09.2022

Получить адрес из const
Из руководства : Можно получить адрес переменных, но нельзя использовать его для переменных, объявленных через операторы let. Я понимаю, что это сделано для обеспечения безопасности. Теперь, если я хочу получить адрес из константы любой...
155 просмотров
schedule 12.09.2022

Ним параметры макроса
здесь код, который я хочу скомпилировать: macro defineSomething(amount:expr):stmt= var amountInt = intVal(amount).int # Boring staff defineSomething(42); Это работает отлично. У меня есть все, что я хочу, внутри моего макроса, я могу...
543 просмотров
schedule 22.08.2022

Преобразование следующего кода C++ в Nim
Я пытаюсь изучить Nim, конвертируя различные фрагменты кода, и я наткнулся на то, чего никогда раньше не видел. #include<bits/stdc++.h> ... for(int t=q&1?u+x:u+x>>1;t>1;)t/=p[++cnt]=sieve[t]; ... sort(p+1,p+cnt+1); Я...
397 просмотров
schedule 06.12.2022

Как получить строковое представление выражения в шаблоне Nim
Есть ли возможность получить строковое представление выражения (или идентификатора) внутри template ? Например, имея следующий код: template `*`*(name: expr) {.immediate.} = var `name`* {.inject.}: string = "" # Want to print 'name' here,...
592 просмотров
schedule 29.03.2023

Как использовать нимпроф?
В одном из моих проектов Nim у меня проблемы с производительностью. Сейчас я пытаюсь использовать nimprof , чтобы посмотреть, что происходит. У меня есть import nimprof в моем основном исходном файле, и я компилирую с --profiler:on . Когда я...
341 просмотров
schedule 06.05.2024

Распаковать несколько переменных из последовательности
Я ожидаю, что приведенный ниже код напечатает chr7 . import strutils var splitLine = "chr7 127471196 127472363 Pos1 0 +".split() var chrom, startPos, endPos = splitLine[0..2] echo chrom Вместо этого он печатает @[chr7, 127471196,...
1845 просмотров
schedule 12.01.2024

Определить переключатель для ключ = значение
В nim вы можете определить символ через -d:value и проверить, был ли он определен с помощью defined(value) . Однако возможно ли определить ключ и получить его значение? Я ищу что-то в духе --colors:on , но определяемое пользователем.
106 просмотров
schedule 08.11.2022

nim jester как изменить статический маршрут и каталог
Каков правильный способ изменить статический маршрут и каталог, из которого шут обслуживает статические файлы? Я пробовал различные перестановки этого: routes: get "/static": setStaticDir(request,"./semantic/dist") но не заставить...
391 просмотров
schedule 23.07.2023

Как скомпилировать приложение Nim, которое работает без окна консоли?
Есть ли способ скомпилировать приложение Nim, которое не открывает консоль при запуске? Если я что-то не упустил, официальная документация не показывает никаких параметров компилятора, которые могли бы это сделать. Я действительно хочу, чтобы...
1453 просмотров
schedule 30.11.2022

Как сравнить несколько строк кода в nim?
Я прочитал это вдоль и поперек: http://nim-lang.org/docs/times.html Но до сих пор не могу понять простую вещь: как получить время в мс дважды, один раз перед моим кодом и еще раз после того, как мой код запустится, а затем вывести разницу? Я...
1245 просмотров
schedule 19.09.2022

Как мне использовать «концепцию» в Ниме?
Мне интересно, как использовать «концепцию» в ним (0.13). У меня есть следующий код: type T = concept t t.a is string T0 = ref object a: string T1 = ref object a: string q: string proc echoT(t: T) : void = echo "hello "...
563 просмотров
schedule 11.04.2024

Ним: Как проверить, является ли число с плавающей запятой nan или inf?
Как я могу проверить, является ли переменная с плавающей запятой NaN или inf . Поиск в стандартной библиотеке isNaN или isInf ничего не дает. Существует сообщение в блоге , предлагающее использовать proc cIsNaN(x: float): int {.importc:...
612 просмотров
schedule 08.06.2023