Tag: ocaml

OCaml ist eine strenge, statisch-typisierte, funktionale Programmiersprache mit Fokus auf Aussagekraft, Richtigkeit und Effizienz.

Wie Sie repräsentieren eine einfache finite-state-Maschine in Ocaml?

Anzahl der Antworten 4 Antworten
Ich geschrieben habe, einige state machine in C++ und Java, aber nie in einer funktionalen Sprache wie Ocaml Problem ist, ich weiß nicht, ob ich kann, passen nur code von dem Objekt, Sprachen, Versionen, da in Ocaml

Bereich/Reihenfolge der Auswertung von verschachtelten `let .. in ..` in OCaml

Anzahl der Antworten 3 Antworten
Habe ich ein wenig Probleme hier, dass ich nicht 100% verstehe: let x = 1 in let x = x+2 in let x = x+3 in x Ich weiß, das Ergebnis dieses Ausdrucks ist 6, sondern wollen

OCaml |> Betreiber

Anzahl der Antworten 3 Antworten
Könnte mir jemand erklären, was der |> Betreiber übernimmt? Dieser code wurde aus der Referenz hier: let m = PairsMap.(empty |> add (0,1) "hello" |> add (1,0) "world") Kann ich sehen, was es tut, aber ich möchte

Ocaml-Schlüsselwort "in" - und Gebrauchsspuren

Anzahl der Antworten 1 Antworten
Bin ich beim Lesen ein paar Notizen und kam in diesem code sieht Recht sauber für mich: # let sigma f m = let rec sum (i, z) = if i = m then z else sum(i+1,

Eine gute ocaml-parser?

Anzahl der Antworten 2 Antworten
So wie es momentan steht, diese Frage ist nicht eine gute Passform für unsere Q&A-format. Wir erwarten Antworten auf Tatsachen gestützt, Referenzen und know-how, aber diese Frage wird wahrscheinlich werben Debatte, Argumente, polling, oder erweiterte Diskussion. Wenn

wie Schreibe ich eine Funktion zu finden, die max Anzahl in einer Liste vom Typ "Zahl" in ocaml?

Anzahl der Antworten 3 Antworten
wie Sie eine Funktion schreiben, die gibt die maximale Anzahl von einer Liste von Reihe-Werten, wenn eine vorhanden ist. In dem Fall ist es angesichts der leeren Liste, dann kann Sie nicht der eine Zahl zurückgeben. bekomme

Konvertieren 'eine Liste zu einem Set?

Anzahl der Antworten 6 Antworten
Ist es wirklich wahr, dass OCaml nicht über eine Funktion, die konvertiert aus einer Liste ein set? Wenn das der Fall ist, ist es möglich, eine generische Funktion list_to_set? Ich habe versucht, eine polymorphe set ohne Glück.

Redundanz in OCaml type-Angabe (ml/mli)

Anzahl der Antworten 5 Antworten
Ich versuche zu verstehen, eine bestimmte Sache zu ocaml-Modulen und deren Zusammenstellung: bin ich gezwungen zu deklarieren Typen schon erklärt in einem .mli innerhalb der spezifischen .ml Implementierungen? Nur um ein Beispiel zu geben: (* foo.mli *)

Tail-rekursive Funktion zu finden, die Tiefe des Baums in Ocaml

Anzahl der Antworten 3 Antworten
Habe ich eine Art tree wie folgt definiert type 'a tree = Leaf of 'a | Node of 'a * 'a tree * 'a tree ;; Habe ich eine Funktion zu finden, die Tiefe des Baumes wie

Wie Sie auf eine Liste in OCaml

Anzahl der Antworten 4 Antworten
Ich möchte eine Funktion schreiben, die überprüfen könnten, jedes Element in einer Liste ist true oder false. Wenn mindestens ein element ist false zurück true, so dass: assert_eq "checkFalse [true; false; true]" (checkFalse [true; true; true]) false;

Warum sind Funktionen in Ocaml/F#, die nicht standardmäßig rekursiv?

Anzahl der Antworten 6 Antworten
Warum ist es, dass die Funktionen in F# und Ocaml (und vielleicht auch andere Sprachen) sind nicht standardmäßig rekursiv? In anderen Worten, warum hat die Sprache die Designer sich entscheiden, es war eine gute Idee, um explizit

Wie kann ich strip whitespace-Zeichen aus einem string in OCaml?

Anzahl der Antworten 5 Antworten
Lernen die Grundlagen der OCaml, ich bin die Lösung einer der einfach facebook-engineering-Rätsel es zu benutzen. Im wesentlichen, ich möchte etwas tun, wie der folgende Python-code: some_str = some_str.strip() Ist, dass, würde ich mag, um Streifen alle

ocaml mit Liste.map iterieren über die Liste

Anzahl der Antworten 3 Antworten
gibt es eine Möglichkeit, zu iterieren Liste über Liste über Liste.Karte? Weiß ich, Liste.anzeigen nimmt einzelne Funktion und eine Liste und produziert eine Liste, die die Funktion gilt für alle Elemente. Aber was ist, wenn ich eine

Was ist der Zustand von OCaml ist die Parallelisierung Fähigkeiten?

Anzahl der Antworten 3 Antworten
Ich bin daran interessiert, mit OCaml für ein Projekt, aber ich bin mir nicht sicher, wo seine Parallelisierung Fähigkeiten werden mehr. Gibt es eine message-passing-Fähigkeit in OCaml? Ist OCaml in der Lage, effektiv zu nutzen, mehr als

Record-Typ pattern matching in Ocaml

Anzahl der Antworten 1 Antworten
Ich versuche, mithilfe der Mustererkennung wird ein zu schreiben ein-Rechner-Anwendung. Zwei Haupttypen wie folgt definiert: type key = Plus | Minus | Multi | Div | Equals | Digit of int;; type state = { lcd: int;

Syntax der Funktionsdeklaration in OCaml

Anzahl der Antworten 2 Antworten
Möchte ich eine Funktion definieren Sie wie folgt: let f (a: int) (b: int) (c: int) (d: int): int = ... Ist es möglich, die Signatur kürzer, ohne dass Sie ein Tupel? Da will ich noch f

OCaml: entfernt Duplikate aus einer Liste, während der Aufrechterhaltung der Ordnung von rechts

Anzahl der Antworten 2 Antworten
Ich habe gerade gelesen dieser thread und finde es interessant. Implementiere ich die remove from the left Funktion in ein paar Minuten: (* * remove duplicate from left: * 1 2 1 3 2 4 5 ->

Verketten von string zu integer in Ocaml

Anzahl der Antworten 2 Antworten
Möchte ich eine funktionierende version von diesem: let x = "a" ^ 0;; InformationsquelleAutor polerto | 2013-02-17

ocamlfind nicht sehen kann, installiert Paket

Anzahl der Antworten 2 Antworten
Wollte ich mein Projekt kompilieren mit dem Befehl: ocamlfind ocamlopt -package ocamlnet -package batteries -package unix -linkpkg oauth.ml aber ich bin immer folgende Fehlermeldung: ocamlfind: Package `ocamlnet' not found make: *** [oauth.cmi] Error 2 Nachdem einige der

Gibt es einen infix-Funktion Zusammensetzung operator in OCaml?

Anzahl der Antworten 6 Antworten
Nur eine kurze Frage. Ich Frage mich, ob es einen infix-Funktion Zusammensetzung operator in OCaml definiert in der standard-Bibliothek (oder in Jane Street-Kern oder in Batterien) wie die (.) Funktion in Haskell, das erspart uns eine Menge

Warum ist das schreiben eines Compilers in eine funktionale Sprache, die einfacher ist?

Anzahl der Antworten 7 Antworten
Habe ich mir Gedanken zu dieser Frage sehr lange, aber konnte wirklich nicht finden, die Antwort auf Google, als auch eine ähnliche Frage auf Stackoverflow. Wenn es ein Duplikat ist, tut mir Leid. Viele Leute scheinen zu

gcc ld: symbol(s) not found for architecture x86_64

Anzahl der Antworten 3 Antworten
Okay also ich mache einen lexer und einen parser mit Ocamlyacc. Ich habe meine Forschung getan, und ich denke, dass es etwas zu tun mit meinem makefile nicht die Wahl der richtigen bit-version für meinen compiler oder

Entspricht einem Element in der Liste von Tupeln

Anzahl der Antworten 2 Antworten
Habe ich eine Liste von Tupeln der form (string, int). Ich versuche, die Suche durch die Liste und die Rückgabe der Tupel, deren string-Komponente entspricht der parameter, wie in: let find_tuple string_name tuples_list = Wie kann ich

Erlang vs. OCaml (beste Nische zu passen)

Anzahl der Antworten 4 Antworten
Hallo, ich würde gerne abholen einer FP-Sprache (es ist immer ein Schmerz, wenn Sie arbeiten in einer position, die nicht erfordert Sie viel lernen), und nach einigen Forschung, ich fühlte Erlang und OCaml sind die zwei, die

Konvertieren von char zu string in OCaml

Anzahl der Antworten 4 Antworten
Möchte ich zum konvertieren eines char in einen string, aber ich habe nicht gefunden, eine Funktion string_of_char. Ich möchte, dass die Verwendung nur Funktionen aus Pervasives. Ich wirklich empfehlen Sie, zu lernen, ocaml formal, hier ist die

Das ist das aktuelle setup zu verwenden, OCaml in Vim?

Anzahl der Antworten 5 Antworten
Habe ich nie verwendet, Vi oder Vim, aber es scheint, dass es die beste option zu Bearbeiten OCaml-Dateien. Leider bin ich verloren mit so viele Dinge zu kümmern: ocaml-vi-addon, vi-Skripte, otags etc. Brach ich meine anfängliche Angst

Wie man formatierten string in OCaml?

Anzahl der Antworten 2 Antworten
In OCaml, die ich verwenden kann Printf.printf Ausgabe formatierte string, wie Printf.printf "Hello %s %d\n" world 123 Jedoch printf ist eine Art von output. Was ich mir Wünsche ist nicht für Leistung, sondern für eine Zeichenkette. Zum

Anfügen von zwei Listen in Ocaml

Anzahl der Antworten 6 Antworten
So ist dies eine Möglichkeit, append von zwei Listen: let rec append l1 l2 = match l1 with | h :: t -> h :: append t l2 | -> l2 Aber ich bin versucht zu

In reinen funktionalen Sprachen gibt es einen Algorithmus, um die inverse Funktion?

Anzahl der Antworten 10 Antworten
In reinen funktionalen Sprachen wie Haskell gibt es einen Algorithmus, um die inverse einer Funktion (edit), wenn es bijektive? Und gibt es eine bestimmte Art und Weise zu Programmieren, Ihre Funktion, so dass es ist? Mathematisch ist

OCaml: Auszug N-te element eines Tupels?

Anzahl der Antworten 3 Antworten
Für eine Liste, die Sie tun können, pattern-matching und Durchlaufen, bis das N-te element, aber für ein Tupel, wie würden Sie schnappen Sie sich das N-te element? Wie die nachfolgenden Antworten zeigen, bist du mit Tupeln falsch.

Was ist der OCaml-idiom entspricht Python-range-Funktion?

Anzahl der Antworten 11 Antworten
Möchte ich erstellen eine Liste der zahlen von 1 bis n ist. Kann ich dies in Python mithilfe von range(1, n+1), und in Haskell mithilfe: nehmen Sie die n (iterate (1+) 1). Was ist die richtige OCaml-idiom

Wie kann ich die Schnittmenge zweier Listen in OCaml?

Anzahl der Antworten 6 Antworten
Wenn ich zwei Listen in OCaml, zum Beispiel e1 = [3; 4; 5; 6; 7] und e2 = [1; 3; 5; 7; 9] Ist es ein effizienter Weg, um die Schnittmenge dieser beiden Listen? I. e.: [3;

Was ist der standard-Weg, um entfernen element aus einer Liste in OCaml?

Anzahl der Antworten 1 Antworten
In common lisp, können wir die remove Funktion. Es scheint, gibt es keine solche Methode in OCaml ? Wie genau sollte das entfernen getan werden? Willst du einfach nur filter der Liste? (remove, zumindest in der Common

OCaml-Funktion parameter-Mustervergleich für Zeichenketten

Anzahl der Antworten 3 Antworten
Ich habe versucht, verwenden um eine Zeichenfolge übergeben, um eine umgekehrte Zeichenfolge. Warum kann ich nicht tun: let rec reverse x = match x with | "" -> "" | e ^ s -> (reverse s) ^

Warum hedge-Fonds und Finanz-Dienstleistungen Häufig verwenden, OCaml?

Anzahl der Antworten 9 Antworten
Sprechen, um eine Reihe von quants /hedgies, kam ich zu dem Schluss, dass eine große Anzahl von Ihnen zu sein scheinen entweder mit einer homebrew-Sprache oder OCaml ist für viele Aufgaben. Was viele von Ihnen nicht beantworten

Rückkehr der N-te element einer Liste in OCaml?

Anzahl der Antworten 4 Antworten
Ich bin neu in Ocaml, nur wollen, stellen Sie sicher, wie führen Sie eine einfache Funktion wie die Rückkehr der N-te element einer Liste durch die Verwendung von rekursiven Funktion? Prototyp wie get_nth (list, n) mit int

Verketten von strings in ocaml mit Zeilenumbruch zwischen Ihnen

Anzahl der Antworten 1 Antworten
Ich würde gerne etwas wie das hier tun String.concat '\n' [str1; str2 ... strn] so, ich kann drucken in eine Datei. Aber ocaml erlaubt mir nicht, das zu tun. Was kann ich tun? InformationsquelleAutor EBM | 2012-04-03

OCaml: Die Typüberprüfung Von Objekten

Anzahl der Antworten 4 Antworten
Wenn ich ein Objekt haben, wie kann ich bestimmen seine Art? (Gibt es eine OCaml-äquivalent zu Java ist instanceof Betreiber?) könnte Sie post code, denn normalerweise kennen Sie den Objekttyp wenn Sie die Verarbeitung InformationsquelleAutor Nick Heiner

Liste.fold_left in OCaml

Anzahl der Antworten 3 Antworten
Schrieb ich eine Funktion, die fügt alle Elemente der übergebenen Liste: let rec add = function ->0 | h::t->h+add(t);; Möchte ich nun schreiben die gleiche Funktion, aber mit List.fold_left, aber ich habe versucht, einige änderungen, aber ich

Anhängen einer Ganzzahl, um eine Liste in Ocaml

Anzahl der Antworten 3 Antworten
Wie kann ich das implementieren dieser Funktion die harte Weise, ohne die @ Betreiber ? let rec append l i = (* For example, if l is a list [1;2] and i is an integer 3 append

Ocaml: mit Liste.Länge

Anzahl der Antworten 1 Antworten
Ich versuche zu finden, die die Länge einer Liste in ocaml. Rufe ich eine Funktion zuerst aufgerufen > let get_list_length e in > print_list_length out x den tatsächlichen code get_list_length ist, wo ich verwirrt bin. Das "e"

OCaml-syntax-Fehler in der Funktion

Anzahl der Antworten 2 Antworten
Habe ich eine Funktion erstellen, die Anzeige von jedem element aus einer Menge von strings. Ich habe die folgenden: module S = Set.Make(String);; module P = Pervasives;; let write x = ( P.print_string("{"); let first = true;

OCaml - welcher Datentyp ist einige und keiner?

Anzahl der Antworten 4 Antworten
Wenn ich mit Some und None combo in eine Liste, was wäre der Datentyp der Liste? Ist es immer 'a? Oder gibt es irgendeine Art von einer Art, für Some/None? let listVar : (* type here *)

OCaml - how, um Datei zu laden.ml

Anzahl der Antworten 3 Antworten
So laden Sie eine Datei MeineDatei.ml, dass ich es verwenden kann, meine Datei ? Und wo sollte ich diese Datei zu compilator finden ? Ich kann es jetzt nicht tun. Vielen Dank im Voraus! InformationsquelleAutor user3077133 |

__memcpy_sse2_unaligned - was bedeutet das im detail?

Anzahl der Antworten 1 Antworten
Während der Arbeit an meinem compiler bekam ich diese Fehlermeldung: Program received signal SIGSEGV, Segmentation fault. __memcpy_sse2_unaligned () at ../sysdeps/x86_64/multiarch/memcpy-sse2-unaligned.S:33 Wie bekomme ich die details von dem, was hier schief gelaufen? Ich weiß aus dem backtrace es

Wie Sie anfügen, ein char an einen string in OCaml?

Anzahl der Antworten 3 Antworten
Scheint es, als ob es keine Funktion in der standard library des Typs char -> string -> string, das einfügen eines char vor (oder am Ende) einen string. Es gibt workarounds, z.B. durch die Verwendung von String.make

OCaml Printf.sprintf

Anzahl der Antworten 2 Antworten
Warum tritt dieses Verhalten auf? # Printf.sprintf ("Foo %d %s") 2 "bar";; - : string = "Foo 2 bar" # Printf.sprintf ("Foo %d" ^ " %s") 2 "bar";; Printf.sprintf ("Foo %d" ^ " %s") 2 "bar";; Error:

Ganzzahlige Potenzierung in OCaml

Anzahl der Antworten 4 Antworten
Gibt es eine Funktion, die für ganzzahlige Potenzierung in OCaml? ** nur für Schwimmer. Obwohl es scheint meist richtig, gibt es nicht eine Möglichkeit, Präzision Fehler, so etwas wie 2. ** 3. = 8. false zurückgeben, manchmal?

OCaml-Option bekommen

Anzahl der Antworten 3 Antworten
Ich bin neu in OCaml, ich versuche zu verstehen, wie Sie sind, soll der Wert aus einem " a-option. Nach den doc an http://ocaml-lib.sourceforge.net/doc/Option.html, es ist ein get-Funktion vom Typ 'a option ->', eine, die tut, was

OCaml: Set Module

Anzahl der Antworten 2 Antworten
Will ich mit OCaml, generiert Daten-sets und stellen Sie Vergleiche zwischen Ihnen. Ich habe die Dokumentation gesehen für Modul-Typen wie Set.OrderType, Set.Make usw, aber ich kann nicht herausfinden, wie zu initialisieren, einen Satz oder anderweitig zu verwenden.