Each time I need more debug information for the ocaml runtime itself
(which hopefully is not often) I recompile Ocaml adding various -g
and -O0 here and there in some makefiles.
But I've noticed there are some special targets and rules, specifically in
byterun/Makefile, that seams to be there for
Hello !
I'm using ocaml 3.11 and 3.12 and I'm writting some C code
that use caml_enter/leave_blocking_section. I'd like to know if
there is a standard way to check for Ocaml version with the C preprocessor
in order to switch to caml_release/acquire_runtime_system if version is
= 3.12 ?
I grepped
For some reason, I was able to edit that file using emacs, even when
echo wouldn't work.
maybe you wrote sudo echo 0 file or something similar which perfoms the
echo as root but the redirection as normal user ?___
Caml-list mailing list.
Hello list.
I'm using ocaml version 3.12.0+beta1, and reading the manual here :
http://caml.inria.fr/pub/docs/manual-ocaml/manual032.html#toc130
I have this datatype :
type color_specs = Array of vertex_array | Uniq of color
where :
type color = int * int * int * int
type vertex_array =
Maybe adding a ./configure option would be more flexible?
I'm for it, or just add MIPS on the list of supported targets.
___
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives:
I think this kind of dot output can be very informative if accurate
enough, for instance as a pedagogical or debug purpose.
That, and the fact that large graphs are beautiful.
Large graphs are like to nightly skies : it's always nice to stare at
them even if you are not knowledgeable in the field
I am convinced that such things have *no* usefulness. If you
are trying to debug your data structure, state its global
invariants, prove (at whatever level of formality you are most
comfortable with) that all API functions preserve the invariants,
and use the module system to hide functions
-[ Mon, Mar 01, 2010 at 07:27:03PM +, Mark Shinwell ]
What's where ?
A gdb command.
Sorry for the noise I failed to get info for this command.
Knew it under name bt BTW.
___
Caml-list mailing list. Subscription management:
-[ Tue, Jan 26, 2010 at 11:00:07AM -0800, Ed Keith ]
boot/ocamlc ocamlc differ: byte 137, line 2
Any other ideas?
Maybe looking at the diff more closely could bring some ?
___
Caml-list mailing list. Subscription management:
following this discussion, i am not so sure anymore, if ocaml is a good
decision. may be i got this discussion wrong, but if ocaml is dying out, i
might have to look for another functional programming language to use with my
project.
Every programming language suffers its trolls and
-[ Fri, Dec 04, 2009 at 12:57:35AM +, Sylvain Le Gall ]
Yes of course. You can use ocamlcore.org website to do that. I have
already a proof of concept using uscan + Debian watch file, to scan
for new upstream on a weekly basis.
Why not using godi_make fetch in all available build dirs,
Not really .. I have been meaning for several years to implement
something like *CPAN* for OCaml. CPAN is much more than what people
here seem to think it is.
Out of curiosity, what's in CPAN that's not in GODI ?
___
Caml-list mailing list.
(1) A network of redundant mirrors which means you can always get the
tarball you need, even when the original site is down:
If I understand correctly, GODI site does not store any of the source
tarballs, but the makefiles download the sources directly from their
respective home, does it ?
While learning OCaml, I just coded a small program that dumps
the full content of a cmi file. I find this more usefull than
ocamlbrowser or to use the toplevel to have a small command line
driven dumper, and it was also a good pretext to have a look
under the cover.
The problem is : most of the
You might also want to look at 'cmigrep'.
I did not know this tool. Looks very usefull !
This is really a packaging issue. I believe that Debian already ship
the compiled sources to OCaml as a separate package, mostly for this
reason.
Ok ; I installed ocaml with inria's Makefile which does
Have you tried ocamlobjinfo? We install it along with OCaml in Debian.
(tools/objinfo.ml in OCaml source code)
I saw it once, then forget completely about it. I'm going to
have a look, thank you !
___
Caml-list mailing list. Subscription management:
Wow! 2.6x faster on 2 cores is good. ;-)
Isn't that impossible? Or is the multicore GC better than the single
threaded one? (Sorry if this is a stupid or obvious question)
There are so many factors that makes the running time unpredictable that
nothing is surprising any more. Haven't you
Until now, OCaml sucked at parallelism. (...) OCaml programmers
can write OCaml programs that use multicore machines efficiently
for the first time.
Subtle and strongly argumented, as expected.
___
Caml-list mailing list. Subscription management:
Visual Basic has been a *lot* faster than OCaml for several years now, not
(...) Even Python (...) Java and C#. They are far more popular than OCaml for
many
reasons but parallel threads to make efficient multicore programming easy is
a big one.
In general you sounds like a reasonable
OCaml needs more people. Where are the French, by the way? ;-)
They are loading Ariane rockets with ADA :-)
___
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
5) It's difficult to compile against
I tried to use it once but failed to find documentation
on how to use it with OCamlMakefile.
8) Other (please explain)
I'm still learning OCaml and I'm afraid that batteries, beeing both a library
and sort of replacement for OCaml (replace compiler,
I had to read it three times, but I now understand the issue.
I initialy though the first version was somewhat bugged :-)
Now I understand why the second one is better. This kind of
optimisation is very interresting (not capturing all the scope
when building a closure). I will look for it now.
Oops.
The following makes it possible for f to be garbage-collected:
...?
Because the fact that the fun calls f does not count as a reference ?
___
Caml-list mailing list. Subscription management:
Works for me on loongson2F under experimental gentoo for n32 ABI.
diff -u -r ocaml-3.11.1/asmcomp/mips/arch.ml my_ocaml/asmcomp/mips/arch.ml
--- ocaml-3.11.1/asmcomp/mips/arch.ml 2002-11-29 16:03:36.0 +0100
+++ my_ocaml/asmcomp/mips/arch.ml 2009-08-09 23:18:31.0 +0200
@@ -35,7
For functional programming specifically, you might try Simon
Peyton-Jones's book The Implementation of Functional Programming
Languages. This used to be available free here, but as I write the
website is down:
http://research.microsoft.com/en-us/um/people/simonpj/papers/slpj-book-1987/
It
I much preferred another of Appel's books as an introduction to writing a
compiler:
http://www.amazon.com/Compiling-Continuations-Andrew-W-Appel/dp/052103311X/ref=pd_sim_b_3_img
Looks interresting also.
Thank you both for your advices.
However, you could probably learn far more
Done !
At least, now coq compiles and seams to run OK.
I encountered a strange bug, anyway, and would like some advice about
my fix. Also, this bug do not seams related to my particular
architecture and, as far as I can tell, would hit any MIPS.
At various occasions the coqtop program jumped in
Hello !
Suppose I want to learn how ML is compiled, and especialy how OCaml is
compiled, it's various internal lambda representations and the like.
Would this book :
http://www.amazon.com/Modern-Compiler-Implementation-Andrew-Appel/dp/0521607647/
be a good one ?
It's hard to tell what this
The question might look stupid, but I'm wondering why uintnat was
not chosen to be long long on this architecture.
Maybe the ARCH_SIXTYFOUR version of Ocaml was not ready at that time ?
Or is there a downside at using the full 64bits registers on this arch
that I'm unable to see ?
-[ Wed, Aug 12, 2009 at 02:12:26PM +0200, David MENTRE ]
Hello,
ldl t8,7(a1)
ldr t8,0(a1)
Is this a problem you fixed in the compiler?
Well, it's not really a bug since the MIPs compiler was tailored for bigendians.
But if one want a MIPS compiler also for little endians this is
1004b6cc: 68b8ldl t8,0(a1); Mips strange but
clever way to load a possibly unaligned doubleword into t8.
1004b6d0: 6cb80007ldr t8,7(a1)
Too clever for me apparently.
Of course on a little endian CPU that must be :
ldl t8,7(a1)
ldr t8,0(a1)
Hello.
I'm trying to make ocaml native compiler works on a Loongson2F processor
with a GNU/Linux system.
So far, I managed to work around many ABI related issues (I want n32 ABI,
because from the configure script it seams closest from the old MIPS
assembly emmiter and because the Internet thinks
What you're asking is similar to the problem of finding the predecessor
of an arbitrary node in a singly-linked-list. You have no option but to
scan the whole list to find its predecessor. If you had a
doubly-linked-list, predecessor lookups would work easily, but that's a
different data
33 matches
Mail list logo