Описание тега scalac

NoneScalac - Компилятор для языка Scala 2
2 ответа

Компиляция и запуск функций по имени в Scala?

Продолжая в этой магистерской диссертации[1] изучить синтаксический анализ в Scala, но не может понять, как заставить этот пример работать (см. стр. 28-29): import util.parsing.combinator.JavaTokenParsers trait ArithParser extends JavaTokenParsers {…
09 сен '13 в 07:23
2 ответа

Зачем этому параметру функции нужны двойные скобки в кортеже?

Примечание: я использую скаляк. Пожалуйста, не рекомендуйте использовать sbt. Я столкнулся со специфической проблемой, которую мог бы решить, но мне интересно, почему это работает именно так, а не так, как я это делал раньше. Вот фрагмент кода: def …
26 мар '18 в 12:40
1 ответ

Есть ли какая-нибудь помощь для передачи ленивых аргументов в Scala?

Это может звучать как ошибка новичка, но я делаю много этого. При передаче ленивого вычисляемого блока или значения в функцию, если я забуду, как-нибудь сделать соответствующий параметр этой функции ленивым (передача / вызов по имени), что на первый…
29 дек '17 в 11:12
1 ответ

Почему пробел в параметрах конструктора backtick нарушает компилятор?

Определенная комбинация пробелов и упорядочения вместе с обратными галочками в именах параметров, где имя с обратным символом имеет те же начальные символы, что и другой параметр, кажется, вводит компилятор в заблуждение, вызывая ошибки компиляции: …
10 фев '16 в 10:16
2 ответа

Скалярное сообщение об ошибке закрывающей фигурной скобки со странным номером строки

Поскольку я изучал Scala, мне часто вспоминают g++ ошибки компилятора при чтении загадочного вывода из scalac, Однако сегодня я столкнулся с чем-то, что, я сомневаюсь, случится даже в g++ Вселенная. Друг прислал мне очень простой фрагмент кода с дов…
21 авг '12 в 07:31
4 ответа

Scala рекурсивное поведение val

Как вы думаете, распечатывает? val foo: String = "foo" + foo println(foo) val foo2: Int = 3 + foo2 println(foo2) Ответ: foonull 3 Зачем? Есть ли часть в спецификации, которая описывает / объясняет это? РЕДАКТИРОВАТЬ: чтобы прояснить мое удивление - …
04 ноя '16 в 14:14
3 ответа

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

Почему scalac (компилятор Scala) не оптимизирует хвостовую рекурсию? Вызовы кода и компилятора, демонстрирующие это: > кошка foo.scala класс Foo { def ifak (n: Int, acc: Int): Int = { если (n == 1) в соответствии еще ифак (n-1, n*acc) } } > скалак f…
09 ноя '09 в 06:24
1 ответ

Основной метод вызова в Scala NSC

Я пытался пройти через код для NSC (новый компилятор Scala). Я немного смущен Main.scala, Это реализовано следующим образом: /* NSC -- new Scala compiler * Copyright 2005-2013 LAMP/EPFL * @author Martin Odersky */ package scala.tools package nsc imp…
1 ответ

Первые шаги в сбт

Я просто хотел избежать медленного запуска и очистки JVM в scalac <some file> а также run <some class> петля. То есть я попросил среду, которую можно загрузить один раз, а затем скомпилировать и запустить мое приложение несколько раз. На…
18 ноя '15 в 14:52
1 ответ

Scala фактически подавляет предупреждения компилятора

Как я могу на самом деле подавить предупреждение компилятора для: discarded non-Unit value [warn] kryo.register(classOf[Foo]) Предложение " Подавить" предупреждение "отброшенное значение, не относящееся к единице" не применяется, поскольку проблема …
19 дек '17 в 20:19
3 ответа

Разбиение скалярного плагина на несколько файлов

Я хотел бы разделить мой scalac плагин в несколько файлов. Это звучит просто, но мне не удалось осуществить это из-за проблем, связанных с типом пути, вытекающих из import global._ линия. Вот пример плагина Lex Spoon: package localhost import scala.…
12 апр '11 в 00:40
2 ответа

Неявное преобразование из Int в Double в Scala не работает

Я написал некоторый неявный код, как показано ниже, и мне интересно, почему i2d Функция неявного разговора не вызывается. object Test { implicit def i2d(x: Int): Double = { println("foo") x.toDouble } implicit def d2i(x: Double): Int = { x.toInt } v…
16 авг '16 в 04:20
1 ответ

Scala: множественные определения flatMap для решения проблемы вывода типа для понимания

У меня есть что-то вроде этого: case class Box[A](x: A) { def flatMap[B](f: A => GenTraversableOnce[B]): GenTraversableOnce[B] = f(x) def flatMap[B](f: A => Box[B]): Box[B] = f(x) def map[B](f: A => B): Box[B] = Box(f(x)) } object Box { for…
2 ответа

Не удалось найти прокси для... в макросе

Я долго гонялся за следующей проблемой и надеюсь, что кто-то с большим опытом в этом вопросе поможет мне решить ее. В моем тестовом случае точная ошибка выглядит следующим образом: java.lang.IllegalArgumentException: Не удалось найти прокси для поль…
20 фев '17 в 00:20
1 ответ

Gradle Scala проект и частные варианты компиляции

Я только начал работать над проектом Scala, используя Gradle в качестве инструмента для сборки, и я изо всех сил стараюсь, чтобы сборки предупреждали о наличии неиспользуемых импортов. ScalaStyle не поддерживает обнаружение неиспользуемых импортов, …
12 июн '17 в 08:30
0 ответов

Что такое 8-битный симулятор в компиляторе scala и как его запустить?

Я читал этот вопрос и увидел: scalac включает в себя 8-битный симулятор полностью вооруженной и работающей боевой станции, которую можно просмотреть с помощью комбинации магических клавиш CTRL-ALT-F12 на этапе компиляции GenICode. Чтобы показать, чт…
17 июн '16 в 05:14
2 ответа

Как скаляк помечает скомпилированные файлы?

Посмотри на этот вопрос. Когда вы открываете .class файл с включенным плагином scala (Intellij Idea) показывает код scala, но когда он выключен, плагин декомпиляции java показывает декомпилированный код java. Обратите внимание, что .class файлы, кот…
19 янв '18 в 06:24
2 ответа

Когда anonfun$1 становится anonfun$m1$1 (или наоборот) в Scala?

Кто-нибудь может объяснить, почему Scala дает два разных имени в следующих случаях? Почему Scala не может дать одинаковые имена в каждом случае?! Есть ли какая-то последовательность, которую я еще не знаю? Это должно быть связано с eta-расширением, …
30 ноя '13 в 14:25
1 ответ

Сбой компилятора Scala: что здесь не так?

Я начал писать модульный тест для класса X500PrincipalBuilder в Scala. Вот мой тестовый код: import org.junit.runner.RunWith import org.scalatest.WordSpec import org.scalatest.junit.JUnitRunner import org.scalatest.matchers.ShouldMatchers._ import o…
16 май '13 в 17:15
3 ответа

Как финальный вал определяется внутри черты Scala Compiler?

Я очень часто использую паттерн бескорыстной черты, и мне нужно использовать "дорогие" константы внутри черты: я хотел бы иметь один экземпляр этих значений, который может потребовать вычисления нескольких шагов во всех моих приложениях. Однако моде…
06 дек '13 в 08:41