Account Options

  1. Anmelden
Das alte Google Groups wird demnächst nicht mehr unterstützt. Die neue Version ist jedoch nicht kompatibel mit Ihrem Browser.
Google Groups-Startseite
« Google Groups-Startseite
Nachricht von Diskussion Performance and complexity
Bei der Gruppe, für die Sie eine Mitteilung verfassen, handelt es sich um eine Usenet-Gruppe. Wenn Sie in dieser Gruppe Nachrichten posten, ist Ihre E-Mail-Adresse für jeden im Internet sichtbar
Ihre Antwort wurde nicht gesendet.
Die Nachricht wurde übermittelt.
 
Von:
An:
Cc:
Nachtrag zu:
Cc hinzufügen | Nachtrag hinzufügen zu | Betreff bearbeiten
Betreff:
Bestätigung:
Geben Sie zur Bestätigung die im folgenden Bild angezeigten Zeichen ein bzw. die Zahlen, die durchgesagt werden, wenn Sie auf das Barrierefreiheitssymbol klicken. Hören Sie zu und geben Sie die gehörten Zahlen ein
 
Tony Morris  
Profil anzeigen   Übersetzen in die Sprache: Übersetzt (Original anzeigen)
 Weitere Optionen 21 Jul. 2011, 01:31
Von: Tony Morris <tonymor...@gmail.com>
Datum: Thu, 21 Jul 2011 15:31:49 +1000
Lokal: Do 21 Jul. 2011 01:31
Betreff: Re: [scala-user] Performance and complexity

On 21/07/11 15:25, Derek Williams wrote:

> On Jul 20, 2011 11:19 PM, "Tony Morris" <tonymor...@gmail.com
> <mailto:tonymor...@gmail.com>> wrote:
> > Scalaz 7 will include a list with O(1) cons and snoc (at the expense of
> > other operations). It took some gymnastics to get there though.

> I'll definitely have to check that out, thanks Tony.

> > --
> > Tony Morris
> > http://tmorris.net/

https://github.com/scalaz/scalaz/blob/scalaz7/core/src/main/scala/sca...

It is similar to DList[1], which would unfortunately blow the stack for
any large input, so is instead modelled with a pair of lists[2]. Mark
Hibberd wrote most of it.

[1]
case class Endo[A](e: A => A)
case class DList[A](k: Endo[List[A]])
http://hackage.haskell.org/package/dlist

[2]
case class Endo[A](e: A => A)
case class Dequeue[A](pre: List[Endo[List[A]]], post: List[Endo[List[A]]])

--
Tony Morris
http://tmorris.net/


 
Sie müssen sich anmelden, bevor Sie Nachrichten veröffentlichen können.
Bevor Sie eine Nachricht posten können, müssen Sie zunächst dieser Gruppe beitreten.
Bitte aktualisieren Sie vor dem Posten in den Abonnementeinstellungen Ihren Spitznamen.
Sie haben nicht die erforderliche Berechtigung zum Posten.