|
| |
| | OCaml - Wikipedia, the free encyclopedia |
 | | OCaml is also used to teach Computer Science (mainly algorithms and complexity theories) in the French Classes Préparatoires (Preparation Courses), for students studying Computer Science (almost replacing Pascal). |  | | At the University of Illinois at Urbana-Champaign, OCaml is often used to teach design, parsing, and interpretation of programming languages in the Department of Computer Science's CS421 ("Programming Languages and Compilers") course. |  | | In addition to standard loop, register, and instruction optimizations, OCaml's optimizing compiler employs static program analysis techniques to optimize value boxing and closure allocation, helping to maximize the performance of the resulting code even if it makes extensive use of functional programming constructs. |
|
http://en.wikipedia.org/wiki/OCaml
(2154 words)
|
|
| |
| | OCaml - definition of OCaml in Encyclopedia |
 | | OCaml is used in a wide range of applications, including theorem proving and computer program analysis. |  | | OCaml features are pragmatically balanced between expressivity and new features on the one side and ease of interfacing with existing systems and libraries and efficiency on the other side. |  | | The OCaml distribution includes a powerful preprocessor (which permits syntactical extensions), a debugger (which includes the ability to step backwards in time when investigating an error), and numerous general purpose libraries. |
|
http://encyclopedia.laborlawtalk.com/OCaml
(488 words)
|
|
| |
| | Haskell vs. OCaml--which do you prefer? - O'Reilly Mac DevCenter Blog |
 | | The main difference here is that the do notation is uglier than imperative O'caml, and that, by design, imperative computations are isolated of the functional code. |  | | And there is the whole "multi-paradigm" aspect of OCaml as well, where you can mix and match functional, imperative, and object oriented approaches at will, choosing the best approach to each problem, rather than shoehorning the problem into one single approach. |  | | In addition to those, one of the nicer things about OCaml, particularly for a newcomer to the language, is the amount of material available to help you learn the language. |
|
http://www.oreillynet.com/mac/blog/2006/03/haskell_vs_ocamlwhich_do_you_p.html
(2816 words)
|
|
| |
| | Why Ocaml? |
 | | this example, which implements the Sieve of Eratosthenes for computing primes in Ocaml and C. The Ocaml code is faster, even though the C code is well-written. |  | | According to The great computer language shootout, (see also the newer Computer language shootout benchmarks) Ocaml is the second fastest language - slower than C, but faster than C++. |  | | Ocaml interface to GSL, the Gnu Scientific library. |
|
http://www.cs.ubc.ca/~murphyk/Software/Ocaml/why_ocaml.html
(898 words)
|
|
| |
| | OCaml |
 | | OCaml is a very high-level language, similar perhaps to Lisp or Prolog, but with strong type-checking that helps your programs run correctly the first time. |  | | I've verified this myself, for small programs, by solving the same problems in OCaml and C++, and it appears (at least initially) to be true. |  | | OCaml looks like the first one that might have everything I want and perform well. |
|
http://www.cabochon.com/~stevey/blog-rants/ocaml.html
(666 words)
|
|
| |
| | Re: Some questions about OCaml |
 | | The free chapter of my book on OCaml for scientific computing is freely available: http://www.ffconsultancy.com/products/ocaml_for_scientists If you buy the book then I'm sure you can absorb it and be designing and writing sophisticated, robust and efficient programs within 1 week. |  | | OCaml is the latest and greatest variant of the Caml language. |  | | OCaml development is about 10x faster than C++, IMHO. |
|
http://www.talkaboutprogramming.com/group/comp.lang.ml/messages/7790.html
(461 words)
|
|
| |
| | SWIG and Ocaml |
 | | Because the Ocaml language module treats C++ method calls as calls to a certain function, all you need to do is to define the function that will handle the method calls in terms of the public methods of the object, and any other relevant information. |  | | Director classes are classes which allow Ocaml code to override the public methods of a C++ object. |  | | Due to the way directors are implemented, method calls on your object from with ocaml code will always invoke C++ methods even if they are overridden in ocaml. |
|
http://www.swig.org/Doc1.3/Ocaml.html
(3522 words)
|
|
| |
| | OCaml? - GameDev.Net Discussion Forums |
 | | OCaml was never designed for game development, and as such lacks any game-related support. |  | | What I find quite sad about OCaml is that it is extremely elegant and concise, prevents many bugs that would appear in weak-typed languages, and still has the same library support as a dead paraplegic snail for anything beyond computer beeping or plotting pixels. |  | | Of course, this is only the case if you intend to code the entire game in OCaml: you could always code the rendering, control and sound parts in another language, use OCaml for the game logic, and link everything together, no questions asked. |
|
http://www.gamedev.net/community/forums/topic.asp?topic_id=273660
(747 words)
|
|
| |
| | OCaml Alliance |
 | | We should document and develop some OCaml talks which can be given at user groups meetings, and hopefully at more influential conferences. |  | | We ought to be developing an OCaml article template which can be adapted for other websites. |  | | This website may also in the future contain a CPAN-like repository of OCaml software. |
|
http://wiki.cocan.org/ocaml_alliance
(387 words)
|
|
| |
| | Introduction to OCaml |
 | | > ocaml # let incr i = i + 1;; val incr : int -> int = # incr 2;; - : int = 3 # incr x;; - : int = 2 # incr 2 * 3;; - : int = 9 # incr (2 * 3);; - : int = 7 |  | | Abelman, Sussman, and Sussman, Structure and Interpretation of Computer Programs, 2nd edition, MIT Press, 1996. |  | | Repetition is done using recursion instead of iteration. |
|
http://www.eecs.utoledo.edu/~jwalden/talks/ocaml.html
(1107 words)
|
|
| |
| | Alain Frisch: OCaml software |
 | | I'm the main developer of the CDuce and OCamlDuce projects, which are both developped in OCaml. |  | | This tiny module (together with its interface) implements memoization tables with random access (by computing a hash value for the keys) and bounded size. |  | | GODI is a package manager / source distribution of OCaml and related sofware. |
|
http://www.eleves.ens.fr/home/frisch/soft
(1306 words)
|
|
| |
| | CIS 500: SEAS OCaml Tutorial |
 | | Working with OCaml Code in GNU emacs or XEmacs |  | | One useful feature of the OCaml toplevel is that it will automatically execute the contents of the file |  | | For example, under the "Interactive Mode" submenu, there is an item "Run Caml Top Level" that will create a new window in which to interactive with the OCaml toplevel. |
|
http://www.seas.upenn.edu/~cis500/resources/seas-ocaml.html
(1012 words)
|
|
| |
| | Getting Started with OCaml on Mac OS X |
 | | This method uses GODI's version of OCaml and uses Fink to provide any additional third party libraries that do not come with Mac OS X. This is done because the version of OCaml in Fink is older (3.08 in the unstable branch) than the one in Godi (3.08.1 in the stable branch). |  | | This is the easiest way to set up a basic OCaml installation for OS X. Simply download the disk image, mount the disk image, double-click on the ocaml.pkg file contained within, and follow the instructions from there. |  | | Once this is done, OCaml's configure script should be able to locate the libraries and header files required to build labltk (provided fink is set up to install its packages in the /sw directory). |
|
http://wiki.cocan.org/getting_started_with_ocaml_on_mac_os_x
(1294 words)
|
|
| |
| | sigsegv's progress on learn ocaml on 43 Things |
 | | Ocaml appears to be a more pragmatic, working language (it has imperative features, better libraries) where Haskell tends to be more academic (though Pugs and Darcs are written in Haskell). |  | | I also spent time looking at the ocaml website and the OReilly Ocaml book (available on line, google for it!) Conceptually similar, both are strong statically typed functional programming languages. |  | | I think the best quick introduction to the language is Ocaml For Scientist Chapter 1 combined with Ocaml for Experienced Programmers. |
|
http://www.43things.com/people/progress/sigsegv?on=950606
(428 words)
|
|
| |
| | OCaml, an Introduction LG #99 |
 | | Their version of header files (.mli files) contain all the basic documentation you need, and those are directly converted into HTML and published on the Web in their OCaml manual. |  | | Busy writing a lightweight http server with an internal scripting language (camlserv.sourceforge.net, source code here) Interested in writing AI based computer games. |  | | This function is also the reason to catch the exception; otherwise, the main program might stop on the first found file with no '.' in it. |
|
http://linuxgazette.net/issue99/stellingwerff.html
(3073 words)
|
|
| |
| | Open Directory - Computers: Programming: Languages: ML: Objective Caml |
 | | OCaml for Scientists - This book teaches the fundamentals of programming using OCaml, assuming little prior knowledge of computer programming. |  | | Markus Mottl's OCaml software - Includes functionnal libraries, interfaces to PostgreSQL and LAPACK and Perl regexps, OCamlMakefile, syntax files for VIM, and a few more. |  | | CocOCaml - A Cocoa based wrapper for the OCaml toplevel environment. |
|
http://dmoz.org/Computers/Programming/Languages/ML/Objective_Caml
(553 words)
|
|
| |
| | OSNews.com |
 | | Though i haven't used JNI or done more than simple tests, OCaml seems to have a OK system of interfacing with C. There is a special datatype in OCaml that matches the memory configuration of C or Fortran arrays. |  | | Interfacing with non-functional code is a lot easier in languages, like Ocaml, that don't rigerously enforce referential transparency. |  | | SWIG has support for OCaml, which might be useful. |
|
http://www.osnews.com/comment.php?news_id=5964
(1868 words)
|
|
| |
| | Kitt's OCaml Webpage |
 | | You can use ocaml in DOS box of Windows 95/98 but you have to set CAMLLIB environment variable before you run the program. |  | | First, Ocaml has a feature of imperative programming, you can use assignment statement, loop structure (for, while, etc.), just like in C, to construct your program in imperative style. |  | | OCaml 3.01 for Windows (3 MB ZIP - CSIM only, please).. |
|
http://www.cs.ait.ac.th/~kitt/caml
(2905 words)
|
|
| |
| | OCaml - Page 2 - iDevGames - Community Forum |
 | | I'd estimate that development in OCaml (for numerical, visualisation and GUI software in my case) is 10x faster than in C++. |  | | It only took me 6 months of working with OCaml before I could write the majority of my software much more easily in OCaml than in C++. |  | | Like any language, it does have some caveats but these are few and far between compared to languages like C++. |
|
http://www.idevgames.com/forum/showthread.php?p=47229
(1057 words)
|
|
| |
| | CDuce: Interfacing CDuce with OCaml |
 | | However, when converting a CDuce reference to OCaml, the content of the reference is fetched (set), and a fresh OCaml reference is created (copy semantics). |  | | It is also possible to use CDuce values from OCaml. |  | | This can be used to avoid multiple copies when translating a complex value back and forth between CDuce and OCaml. |
|
http://www.cduce.org/manual_interfacewithocaml.html
(1362 words)
|
|
| |
| | The Structure of OCaml Programs |
 | | (Lablgtk is the OCaml interface to the native Unix Gtk widget library). |  | | OCaml comes with lots of fun and interesting modules (libraries of useful code). |  | | OCaml C/C++ let my_ref = ref 0;; int a = 0; int *my_ptr = anda; my_ref := 100;; *my_ptr = 100; !my_ref *my_ptr |
|
http://www.ocaml-tutorial.org/the_structure_of_ocaml_programs
(2388 words)
|
|
| |
| | LtU Classic Archives |
 | | And this is what is needed in a mainstream press article on OCaml, as the average imperative programmer will see the task set forth in this article (a common system administration task) and ask why couldn't he just use Perl, a language familiar to most everyone engaged in performing such administrative tasks. |  | | A stronger case needs to be made for using OCaml, the links here are an attempt to do just that. |  | | Ok, the regex library might not have been the best example, but I only meant that it was practical in aim (compared to, say, a factorial function, the greatest common divisor, the eight queens problem, or other such "toy problems" commonly seen in introductory to intermediate level texts). |
|
http://lambda-the-ultimate.org/classic/message11113.html
(1609 words)
|
|
| |
| | libxstr-ocaml-dev Details |
 | | xstr is an OCaml library for string operations. |
|
http://www.linspire.com/lindows_products_details.php?package_name=libxstr-ocaml-dev
(99 words)
|
|
| |
| | Objective CAML for Scientists |
 | | Various free OCaml tutorials, mostly aimed at computer science students. |  | | Particular emphasis is placed upon programming paradigms rarely seen in current scientific computing, such as exceptions, polymorphism, higher-order functions, nested functions, pattern matching and modules. |  | | This book teaches the fundamentals of programming using OCaml, assuming little prior knowledge of computer programming. |
|
http://www.ffconsultancy.com/products/ocaml_for_scientists
(522 words)
|
|
| |
| | Developers |
 | | perl4caml allows you to use Perl code within Objective CAML (OCaml), thus neatly side-stepping the old problem with OCaml which was that it lacked a comprehensive set of libraries. |  | | A pure OCaml library for reading and writing CSV (comma-separated values) files. |  | | Metaphone implements Lawrence Philips' Double Metaphone phonetic algorithm in OCaml. |
|
http://merjis.com/developers
(441 words)
|
|
| |
| | Ocaml for Plan9 |
 | | This is a port of the Ocaml (Caml is the language, Ocaml is "Objective Caml") functional (and more) programming language to the |  | | All of the unix functionality that ocaml needs and APE supports is there. |  | | This port does not attempt to bring a full environment for ocaml lovers, rather it just solves a request somebody posted on the TODO page of the Plan 9 Wiki. |
|
http://pages.cpsc.ucalgary.ca/~mirtchov/p9/ocaml
(422 words)
|
|
| |
| | LFM and LFSP |
 | | In the process of working on that other project (which involves Scheme and Objective Caml (Ocaml), an ML dialect), it occurred to me that Ocaml would be a better choice than Java for the intermediate layer. |  | | But here is the most important reason: it's a hell of a lot more fun to program in than Java. |  | | The interesting question is: why is Ocaml so much more fun than Java? |
|
http://www.paulgraham.com/vanlfsp.html
(692 words)
|
|
| |
| | OCaml vs. C++ for Dynamic Programming Lambda the Ultimate |
 | | Anyway, the comparison I have in mind is between a correct C/C++ progam and a purely functional equivalent in OCaml, and ignores the effort and pitfalls involved in implementing the first of those... |  | | Bear in mind that my OCaml implementation was dramatically faster than my equivalent Haskell code... |  | | From reading the thread, I'd say the issue has been addressed well: the O'Caml implementation is rather naïve, and one can do considerably better, even staying within the functional paradigm apart from the memoization implementation. |
|
http://lambda-the-ultimate.org/node/view/579
(2832 words)
|
|
| |
| | CocOCaml - The OS X OCaml Toplevel Environment |
 | | CocOCaml is a Cocoa based wrapper for the OCaml toplevel environment. |  | | Knowledge of the path to your OCaml Toplevel executable |  | | CocOCaml - The OS X OCaml Toplevel Environment |
|
http://www.cs.unm.edu/~wneumann/cococaml
(394 words)
|
|
| |
| | Various bits of software |
 | | This OCaml library implements the Wu-Manber algorithm for string searching with errors, popularized by the "agrep" Unix command and the "glimpse" file indexing tool. |  | | Speed decreases with the number of errors allowed, but even with 3 errors we are still faster than "Str". |  | | Performance is quite good: for short patterns (less than 31 characters) and no errors, this library is about 8 times faster than OCaml's "Str" regular expression library. |
|
http://pauillac.inria.fr/~xleroy/software.html
(780 words)
|
|
| |
| | Fresh Objective Caml |
 | | Fresh O'Caml is a programming language which aims to provide the features of the Objective Caml language together with: |  | | You can download the latest distribution (version 3.08.2+4 of 14 January 2005; 2.5Mb) or browse the example files. |  | | It is known to compile successfully on Linux and Mac OS X systems and should work without difficulty on other UNIX-like platforms. |
|
http://www.fresh-ocaml.org
(313 words)
|
|
| |
| | Caltech CS20a Style Guide |
 | | One of our main goals in this class is for you to develop an appreciation for concise, precise, and elegant code. |  | | We will initially be quite strict and will deduct points for stylistic infractions, even if your program is functionally correct. |  | | The OCaml library has a great number of functions and data structures -- use them! |
|
http://www.cs.caltech.edu/~cs20/a/style.html
(2133 words)
|
|
| |
| | Project 1. DNA fragment analyzer translation to Ocaml |
 | | She suggests that you start by rewriting the solution to the Winter 2003 assignment in Ocaml, and seeing how well it works. |  | | A plain text file (80 columns per line maximum, please) that starts with your name and student ID, followed by your assessment of the utility of using Ocaml instead of Scheme for this kind of application. |  | | the Winter 2003 project from Scheme to Ocaml. |
|
http://www.cs.ucla.edu/classes/spring04/cs131/hw/pr1.html
(473 words)
|
|
| |
| | [No title] |
 | | The pre-built OCaml for mingw produces standalone binaries. |  | | i'm quite new to ocaml, so basic things not clear: what is the key difference when doing explicit pattern matching : "let func n = match n with..." and let func n= function.." ? |  | | Submarine: so can you produce native win32 binaries in Cygwin if you have the gcc-mingw package? |
|
http://tunes.org/~nef/logs/ocaml/05.04.07
(1525 words)
|
|
| |
| | Debian -- Debian Package Search Results |
 | | stable (libdevel): cryptographic algorithm library for OCaml - development |  | | stable (libs): cryptographic algorithm library for OCaml - runtime |  | | Found 130 matching packages, displaying packages 1 to 50. |
|
http://pdo.debian.net/cgi-bin/search_packages.pl?...&exact=1&keywords=ocaml
(839 words)
|
|
| |
| | OCaml-TDL |
 | | OCaml-TDL is a small Objective-Caml library providing functions to parse and print TODO lists in XML files. |  | | It comes with an OCamldoc generator which can be used to analyze OCaml files and use |
|
http://home.gna.org/ocamltdl
(55 words)
|
|
| |
| | [No title] |
 | | On that page about numerics in OCaml, they suggest using for and while loops, because they're compiled to be faster. |  | | there must be some way to work with large programs in ocaml interactively 17:47:51 |  | | are there any docs on environments and working habits of ocaml programmers? |
|
http://tunes.org/~nef/logs/ocaml/04.01.23
(2736 words)
|
|
| |
| | OCaml - iDevGames - Community Forum |
 | | Ocaml can output standard C style object files. |  | | Admittedly if I were to read intros to C++ programming on the web with the same level of familiarity (or lack thereof) that I have with OCaml, I'd probably have the same complaint ("OK, great, I can output 'Hello world!', but how does that help me write a real program!?!?"). |  | | I haven't tried making any games with ML, or any app over 600 lines (Which is a lot in a functional language) so I'm curious what results anybody has had for games. |
|
http://www.idevgames.com/forum/showthread.php?p=47034
(2343 words)
|
|
| |
| | OCaml Link Database |
 | | This "database" is simply a collection of CGI programs, of course written in O'Caml, too. |  | | It is now allowed to add records about foreign software ("reported links") as well as records about your own software ("original links"). |  | | O'Caml mailing list, where many announcement of contributions can be found, but because of the nature of a mailing list it is difficult to survey what is available and what is up to date. |
|
http://www.npc.de/ocaml/linkdb
(248 words)
|
|
| |
| | Objective CAML Tutorial |
 | | The Basics - If you are new to OCaml or functional programming, read this first. |  | | Didier Rémy's Using, Understanding, and Unraveling the OCaml Language [PDF, 175 pages] |  | | An introduction to OCaml, from the Linux Gazette. |
|
http://www.ocaml-tutorial.org
(271 words)
|
|
| |
| | Ocaml Projects |
 | | Many other ocaml projects can be found at the |
|
http://raevnos.pennmush.org/code/ocaml.html
(58 words)
|
|
| |
| | OcamlJitRun |
 | | to run your debugged ocaml program (because debugging bytecodes, and in-place bytecode modification, don't work). |  | | You might notice a small slowdown if you have many thousands of different bytecode segments e.g. |  | | , and all Ocaml programs should be able to use this |
|
http://cristal.inria.fr/~starynke/ocamljit.html
(1080 words)
|
|
| |
| | OCaml ExtLib Home Page |
 | | Any OCaml programmer can participate to the project and propose ExtLib new modules or extensions by joining the mailing list here : http://lists.sf.net/lists/listinfo/ocaml-lib-devel. |  | | Not so much people are working on the project anymore, since ExtLib is quite useful the way it is, it doesn't need so many new things anymore. |  | | The purpose of this library is to add new functions to OCaml Standard Library modules, to modify some functions in order to get better performances or more safety (tail-recursive) but also to provide new modules which should be useful for the average OCaml programmer. |
|
http://ocaml-lib.sourceforge.net
(292 words)
|
|
| |
| | Andrew Birkett’s blog » Blog Archive » Ocaml assembly output |
 | | Last week at work, I started rewriting a small bit of code because I knew that there was a more elegant (and therefore more likely to be correct and maintainable) way to express what it was doing. |  | | Andrew Birkett’s blog » Blog Archive » Ocaml assembly output |  | | The article also describes the boxing scheme used in ocaml, which uses the bottom bit to indicate whether a bit of data is an integer, or a pointer to a heap block. |
|
http://www.nobugs.org/blog/archives/2004/02/23/ocaml-assembly-output
(596 words)
|
|
| |
| | Schoca --- Scheme for OCaml |
 | | Scheme is an easy, small, widely known and well-documented language. |  | | Other applications (like Emacs or AutoCAD) use other lisp dialects (elisp, AutoLisp). |  | | The primary purpose of Schoca is the use as an embedded extension language in OCaml applications (e.g. |
|
http://home.arcor.de/chr_bauer/schoca.html
(211 words)
|
|
| |
| | My OCaml stuff |
 | | Here is the stuff I wrote in or for OCaml (wrappers for C libraries mainly). |  | | There is some helper Emacs-lisp code that automatically search the Info files for a requested identifier : |  | | It is now part of OCamldoc, which is now included in the OCaml distribution. |
|
http://oandrieu.nerim.net/ocaml
(524 words)
|
|
| |
| | OCAML Downcasting? |
 | | Hi, I'm trying to learn about ocaml's object-oriented features. |  | | So how do I retrieve the original functionality of the button/label widget? |  | | It seems like you can coerce an object of one type to a supertype, but not from a supertype to a subtype. |
|
http://www.talkaboutprogramming.com/group/comp.lang.ml/messages/7241.html
(176 words)
|
|
| |
| | OCaml Software |
 | | An ocaml wrapper for the Expat XML parsing library. |  | | OUnit is a unit test framework for OCaml. |  | | It allows one to easily create unit-tests for OCaml code. |
|
http://www.xs4all.nl/~mmzeeman/ocaml
(168 words)
|
|
| |
| | Ocaml Benchmark module |
 | | OCaml Benchmark is a small module to benchmark running times of code. |  | | For a complete description of the functions, see the interface Benchmark.mli. |  | | The code is released under the GNU Lesser General Public License (LGPL) with the same special exception as for the OCaml standard library (see the file |
|
http://ocaml-benchmark.sourceforge.net
(65 words)
|
|
| |
| | Overview of ocaml source package |
 | | [2005-09-10] Accepted 3.08.3-8 in unstable (low) (Debian OCaml Maintainers) |  | | [2005-08-12] Accepted 3.08.3-7 in unstable (low) (Debian OCaml Maintainers) |  | | [2005-11-07] Accepted 3.09.0-1 in unstable (low) (Debian OCaml Maintainers) |
|
http://packages.qa.debian.org/ocaml
(261 words)
|
|
|