Als «scala» getaggte Fragen

Scala ist eine universelle Programmiersprache, die hauptsächlich auf die Java Virtual Machine abzielt. Es wurde entwickelt, um gängige Programmiermuster auf präzise, ​​elegante und typsichere Weise auszudrücken. Es vereint sowohl imperative als auch funktionale Programmierstile.


4
Ist die funktionale Programmierung beim Multithreading schneller, weil ich Dinge anders schreibe oder weil Dinge anders kompiliert werden?
Ich tauche in die Welt der funktionalen Programmierung ein und lese überall, dass funktionale Sprachen für Multithreading- / Multicore-Programme besser sind. Ich verstehe, wie funktionale Sprachen eine Menge Dinge anders machen, wie Rekursion , Zufallszahlen usw. Aber ich kann nicht herausfinden, ob Multithreading in einer funktionalen Sprache schneller ist, weil …

3
Was sind die größten Unterschiede zwischen F # und Scala?
F # und Scala sind beide funktionale Programmiersprachen, die den Entwickler nicht zwingen, nur unveränderliche Datentypen zu verwenden. Beide unterstützen Objekte, können in anderen Sprachen geschriebene Bibliotheken verwenden und auf einer virtuellen Maschine ausgeführt werden. Beide Sprachen scheinen auf ML zu basieren. Was sind die größten Unterschiede zwischen F # …



3
Was sind die Vorteile von Scalas Begleitobjekten gegenüber statischen Methoden?
Scala hat kein statisches Schlüsselwort, sondern eine ähnliche Funktionalität durch Begleitobjekte. Hinter den Kulissen werden die Companion-Objekte zu Klassen kompiliert, die statische Methoden haben. Das alles ist syntaktischer Zucker. Was sind die Vorteile dieser Designauswahl? Nachteile? Haben andere Sprachen ähnliche Konstrukte?
50 scala 

4
Performance von Scala im Vergleich zu Java
Zunächst möchte ich klarstellen, dass es sich nicht um eine Frage von Sprache X gegen Sprache Y handelt, um festzustellen, welche Frage besser ist. Ich habe Java für eine lange Zeit benutzt und ich beabsichtige, es weiter zu benutzen. Parallel dazu lerne ich gerade Scala mit großem Interesse: Abgesehen von …

12
Warum haben die meisten Programmiersprachen ein spezielles Schlüsselwort oder eine spezielle Syntax zum Deklarieren von Funktionen? [geschlossen]
Die meisten Programmiersprachen (sowohl dynamisch als auch statisch typisierte Sprachen) haben spezielle Schlüsselwörter und / oder Syntax, die sich stark von der Deklaration von Variablen zum Deklarieren von Funktionen unterscheiden. Ich sehe Funktionen so, als würde man eine andere benannte Entität deklarieren: Zum Beispiel in Python: x = 2 y …


4
Welche Einschränkungen hat die JVM für die Tail-Call-Optimierung
Clojure führt die Tail-Call-Optimierung nicht alleine durch: Wenn Sie eine Tail-Recursive-Funktion haben und diese optimieren möchten, müssen Sie das spezielle Formular verwenden recur. Wenn Sie zwei sich gegenseitig rekursive Funktionen haben, können Sie diese ebenfalls nur mithilfe von optimieren trampoline. Der Scala-Compiler kann TCO für eine rekursive Funktion ausführen, jedoch …
36 scala  clojure  jvm  tail-call 

6
Neuerfindung des Systemdesigns für Scala
Vor vielen, vielen Monden habe ich meinen Master in objektorientierter Softwareentwicklung gemacht. Ich habe alles behandelt: Projektinitiierung, Anforderungen, Analyse, Design, Architektur, Entwicklung usw. Mein Lieblings-IT-Buch aller Zeiten war die Entwicklung objektorientierter Software, ein erfahrungsbasierter Ansatz (IBM-1996). Ein Buch, das von einer Gruppe wahrer Experten ihrer Zeit geschrieben wurde. Es beschreibt …



2
Anwenden von Denotational Semantics auf den Entwurf von Programmen
Ich habe ein wenig über die Denotationssemantik (DS) gelesen und bin sehr fasziniert von dem Prozess des Entwurfs von Computerprogrammen, bei denen Typen und Funktionen starke und klare Zuordnungen zur Mathematik aufweisen. Gibt es Ressourcen, die das Entwerfen von Programmen auf der Basis von DS im Detail erläutern? Ich habe …
30 scala  haskell  scheme 


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.