W „Programowanie w Scala” książki Martin Odersky, to wyjaśnia dlaczego scalac
wydaje SLOW (strona 114):Zachowanie skóry głowy - bezużyteczne skany?
Powodem jest to, że za każdym razem kompilator rozpoczyna się, że spędza czas skanowanie zawartości plików jar i wykonując inną początkową pracę przed , przegląda nawet pliki źródłowe, które do niego przesyłasz.
Jakie korzyści wynikają z kompilacji plików jar skanowania za każdym razem, gdy rozpoczyna się kompilacja? Rzeczywiście, jeśli większość programistów używa FSC (kompilatora Fast Scala), aby uniknąć tego domyślnego zachowania, dlaczego autorzy scala nie usunęli tych skanów?
Dlaczego zachowanie javac
nie zachowuje się podobnie?
Mam nadzieję, że większość programistów używa cynku (inkrementalny kompilator scala, który jest wbudowany w sbt, najnowsze wersje wtyczki maven i kilka innych narzędzi). –
Powiedziałem, FSC, ponieważ jest to jedno sprecyzowane w książce. Właśnie zacząłem uczyć się Scali, więc zastanawiałem się, dlaczego 'javac' nie potrzebuje demona kompilatora, ponieważ proces kompilacji zoptymalizowany przez SCAL wydaje się potrzebny. – Mik378
Podejrzewam, że javac byłby szybszy, gdyby miał demona kompilatora. Java jest prostszym językiem niż większość, a kompilator robi niewiele w zakresie optymalizacji, co ma pewne zalety. ;) –