Marek Kubica | 20 Oct 23:48 2014
Picon

[ANN] slacko 0.10.0

Hello,

I'd like to announce a new release of Slacko, the OCaml Slack API
binding. This is both an announcement as well as a request for comments
regarding the API.

The homepage is at <https://github.com/Leonidas-from-XIV/slacko>, the
documentation can be read online at
<https://leonidas-from-xiv.github.io/slacko/> and the tarball as well
as release notes can be found on
<https://github.com/Leonidas-from-XIV/slacko/releases/tag/0.10.0>. The
recommended way is to install it from OPAM of course, which already
carries the 0.10.0 release.

I've listened to the suggestions by Malcolm, Gabriel and Jaques as well
as Drup so the methods are not longer "stringly" typed, each function
supports parameters that make more sense, like user/group/channel
types, booleans, integers etc. The results are changed from a huge
monolithic type to individual polymorphic variants composed of smaller
types.

But some questions remain: I have a number of types and conversion
functions (foo_of_string mostly). These can validate the input
(checking if the format is correct or whether the input is not too
long) and most likely should. But what is the preferred OCaml way of
handling failure to convert? I could use exceptions but that seems
kinda type unsafe to me. I could use option types, but that might make
for some clunky conversions. Any ideas?

Also there are errors like `Msg_too_long. I'm currently exposing them,
(Continue reading)

Peter Zotov | 20 Oct 20:26 2014

[ANN] utop 1.16

Hello,

I'm glad to announce utop 1.16. It will be available in OPAM shortly.
Changelog:

1.16 (2014-10-20)
-----------------

* make camlp4 support optional
* require OCaml 4.01.0 or newer
* implement wrapper for -safe-string

-- 
Peter Zotov

--

-- 
Caml-list mailing list.  Subscription management and archives:
https://sympa.inria.fr/sympa/arc/caml-list
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs

Helmut Brandl | 20 Oct 16:44 2014
Picon
Picon

Re: Errors in installing 'lwt'

Does not work either. 'opam' reinstalls 'camlp4' without any problems 
but then fails installing 'lwt'.

On 10/20/2014 09:20 AM, Francois Berenger wrote:
> stupid suggestion 2:
>
> opam reinstall camlp4
> opam install js_of_ocaml
>
> On 10/20/2014 04:18 PM, Helmut Brandl wrote:
>> I have tried this already. If I try to install 'camlp4' I just get the
>> message that 'camlp4' is already installed.
>>
>> On 10/20/2014 09:15 AM, Francois Berenger wrote:
>>> My stupid suggestion
>>>
>>> opam install camlp4
>>> opam install js_of_ocaml
>>>
>>> On 10/20/2014 03:59 PM, Helmut Brandl wrote:
>>>> Hello,
>>>>
>>>> I am trying to install 'js_of_ocaml' with 'opam' and run into some
>>>> problems. It seems that the ocaml compile cannot compile the 'lwt'
>>>> package.
>>>>
>>>> $opam list
>>>> Installed packages for system:
>>>> base-unix           base  Unix library distributed with the OCaml
>>>> compiler
(Continue reading)

Helmut Brandl | 20 Oct 15:59 2014
Picon
Picon

Errors in installing 'lwt'

Hello,

I am trying to install 'js_of_ocaml' with 'opam' and run into some 
problems. It seems that the ocaml compile cannot compile the 'lwt' package.

$opam list
Installed packages for system:
base-unix           base  Unix library distributed with the OCaml compiler
camlp4     4.02.0+system  Camlp4 is a system for writing extensible 
parsers for programming languages
cmdliner           0.9.5  Declarative definition of command line 
interfaces for OCaml
menhir          20140422  LR(1) parser generator
ocamlfind          1.5.3  A library manager for OCaml
ppx_tools         0.99.1  Tools for authors of ppx rewriters and other 
syntactic tools

opam install js_of_ocaml
The following actions will be performed:
  - install lwt.2.4.6 [required by js_of_ocaml]
  - install js_of_ocaml.2.5
2 to install | 0 to reinstall | 0 to upgrade | 0 to downgrade | 0 to remove
Do you want to continue ? [Y/n]

=-=-= Installing lwt.2.4.6 =-=-=
Building lwt.2.4.6:
   ./configure --prefix /home/helmut/.opam/system --disable-libev 
--disable-react --disable-ssl --enable-unix --enable-extra 
--disable-preemptive --disable-glib --enable-ppx
   make build
(Continue reading)

Announce Announcements | 18 Oct 15:06 2014

WETICE 2015: Call for Track Proposals

*** CALL FOR TRACK PROPOSALS ***

24th IEEE International Conference on Enabling Technologies:
Infrastructure for Collaborative Enterprises (WETICE 2015)

15-18 June 2015, Larnaca, Cyprus

http://www.cyprusconferences.org/wetice2015/

DEADLINE: 21st November 2014

The IEEE International Conference on Enabling Technologies: Infrastructure for
Collaborative Enterprises (WETICE) is an international forum for the state-of
-the-art research in enabling technologies for collaboration, consisting of a
number of related conference tracks.

The conference proceedings are published by IEEE Computer Society and are
also available online through the IEEE's Xplore digital library. The proceedings
will be submitted for indexing through INSPEC, Scopus, Compendex,
Thomson Reuters, DBLP, Google Scholar and EI Index.

WETICE is based on a flexible structure of self-contained and self-managed
tracks. Over the past years WETICE hosted tracks on a variety of topics such
as adaptive computing, collaborative software processes, collaborative
modeling & simulation, service-oriented architectures and cloud computing,
autonomic green computing, collaborative verification and validation of
systems and services, dynamic network management, collaboration tools for
cultural heritage and collaborative web knowledge.

The 24th WETICE edition will be held on June 15-18, 2015 in Larnaca, Cyprus.
The conference organizing committee solicits proposals for organizing and
hosting tracks. Prospective track chairs should submit a proposal for
organizing a track, which should include at least the following items:

1) The title and the acronym for the proposed track with a description of
objectives, covered topics and the motivation for having such a track in
WETICE. The motivation should compare the proposed event to any related
ongoing tracks and why the proposed track differs from them or
complements them.

2) A short description of the activities the track chair(s) will plan to undertake
upon acceptance of the proposal, to disseminate the call-for-papers for the
track through, e.g, track web site, mailing lists, social networks, selected
contacts, etc. The track proposers should also indicate the potential audience
by estimating the number of people who are supposed to participate to
WETICE and attend the track.

3) A short CV of the prospective track chair(s) with reference to research
interests and publication record directly related to the themes of the
proposed track, and any previous experience of involvement in the
organization of similar events. A link to a personal web page with additional
information would be helpful.

4) A list of potential program committee members for the proposed track,
with name and affiliation of each member and (when available) a link to
relevant personal web pages.

All proposals will be reviewed by the WETICE Steering Committee using the
criteria described above. The Committee reserves the right to accept a
proposal as is, require modifications, recommend merging with tracks that
covers similar topics or reject a proposal. Upon acceptance of a proposal, the
track chairs will be notified of their responsibilities in managing their track,
according to what defined by both IEEE and WETICE conference rules. The
Committee reserves the rights to cancel a track at any time if these
responsibilities are not addressed adequately by the track chair(s).

Please submit your track proposal as a PDF email attachment to the WETICE
Program Chairs, Andrea D'Ambrogio (dambro <at> uniroma2.it) and Khalil Drira
(khalil <at> laas.fr).

The deadline for submitting track proposals is November 21st, 2014.

The notification of the decision taken by the Steering Committee will be sent
to the chairs of the proposed track before or on December 15th, 2014.

Please contact the Program Chairs for any additional information or request.

Andrea D'Ambrogio (dambro <at> uniroma2.it)
Khalil Drira (khalil <at> laas.fr)
WETICE 2015 Program Chairs


--------------------------------------------------------------------
This is not SPAM. If you want to be removed from this list,
please send an email to [announce <at> cs.ucy.ac.cy] with the
single word 'remove' in the subject of the email.
Gabriel Scherer | 19 Oct 21:50 2014
Picon

Re: ANN: exn-source - exception backtraces with source code printing

Done. http://caml.inria.fr/mantis/view.php?id=6619

Thanks! Having an issue really helps tracking that things get done.

there is one advantage to the current approach: no source code needs to be changed in the simplest case (just searching '.') - we just link exn-source in.
[...]
So perhaps I should make it build exn-source.cm(x)a and exn-source-easy.cm(x)a, and have two choices.

Indeed. exn-source-easy (or -autolink) could simply depend on the "clean API" in the exn-source library, by being implemented as just
  let () = Exn_source.register ()

Then simply making sure to pass the flag -linkall when building that second cma means that explicitly requiring it (in the build system) will enable the feature.

On Sun, Oct 19, 2014 at 9:38 PM, John Whitington <john <at> coherentgraphics.co.uk> wrote:
Hi,

Gabriel Scherer wrote:
 > perhaps it's just in need of clarification in the documentation.

My understanding is that uncaught exception raised by the handler are
dropped/ignored.
Would you mind creating a mantis issue ( http://caml.inria.fr/mantis/ )
so that we can discuss improving the documentation there?

Done. http://caml.inria.fr/mantis/view.php?id=6619

Note that a way to side-step this issue entirely would be for your API
to provide something in the style of Printexc.print
   handle : ('a -> 'b) -> 'a -> 'b
that handles any exception raised by the function application. Users
would be able to call this explicitly around their main processing loop
(which is the place where they often already handle exception-handling)
instead of delegating to a possibly-fragile mutable final handler.

My understanding is that exn-source currently operates by a side-effect
at link-time. I would rather have the choice between an explicit (unit
-> unit) registration function, and a side-effect-free handling function
as above.

Correct. Your suggestion would be much cleaner, but there is one advantage to the current approach: no source code needs to be changed in the simplest case (just searching '.') - we just link exn-source in.

People won't want to necessarily ship code with exn-source linked in, and it's not nice to have to modify code between debug and release -- I like to try to have those differences all in the build system.

So perhaps I should make it build exn-source.cm(x)a and exn-source-easy.cm(x)a, and have two choices.

Thanks.


--
John Whitington
Director, Coherent Graphics Ltd
http://www.coherentpdf.com/


John Whitington | 19 Oct 20:03 2014
Picon

ANN: exn-source - exception backtraces with source code printing

Hi,

OCaml 4.02 has new facilities for installing a new backtrace handler, 
and processing the back trace symbolically. As a little proof of 
concept, I've built a package which you can add to any project to get 
backtrace with source code printed and highlighted:

https://github.com/johnwhitington/exn-source

Here's the start of a backtrace:

http://www.coherentpdf.com/exnsource.png

By default, it prints five lines either side, and looks the current 
directory for source code. But as one can see from the screenshot, one 
can add /usr/local/lib/ocaml to get stdlib source and so on...

It's somewhat difficult to test this kind of thing (we can't use 
exceptions at all inside a backtrace handler, for example), so I'm 
appealing for help. Attach exn-source to your code and let me know how 
you get on...

Thanks,

-- 
John Whitington
Director, Coherent Graphics Ltd
http://www.coherentpdf.com/

--

-- 
Caml-list mailing list.  Subscription management and archives:
https://sympa.inria.fr/sympa/arc/caml-list
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs

Roelof Wobben | 19 Oct 14:07 2014
Picon

reverse a list

Helllo,

Im a beginner which tries to do the 99 ocaml problems.

Now I try to reverse a list.
Does I need to use two list . one for the old one and one for the 
reversed list.

Roelof

--

-- 
Caml-list mailing list.  Subscription management and archives:
https://sympa.inria.fr/sympa/arc/caml-list
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs

Vu~ Ngo.c San | 18 Oct 09:46 2014
Picon

merlin autocomplete : "int" at the end of the line

Hello

I'm trying the combination tuareg+merlin+ocp-indent to work nicely in my 
emacs. I'm puzzled by this behavior:
suppose you end your line with "in" (which is quite common, right ?) and 
then type "return":
The "in" has been autocompleted to "int".

This can't be a default behavior; what do I do wrong ?
Following 
https://github.com/realworldocaml/book/wiki/Installation-Instructions, 
have in my .emacs:
(setq merlin-use-auto-complete-mode t)

regards
San

--

-- 
Caml-list mailing list.  Subscription management and archives:
https://sympa.inria.fr/sympa/arc/caml-list
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs

Peter Zotov | 18 Oct 07:46 2014

[ANN] opam-android, a modern Android cross-toolchain

Hello,

I'm glad to announce opam-android, a cross-toolchain for Android
based on OCaml 4.02.1. The goals of this port was to minimize
the changes to the OCaml compiler, to simplify porting packages
as much as possible, to support compile-time components like
ppx rewriters or cstubs, and to make using it as simple as possible.

I believe I have achieved these goals. In particular, I want
to highlight that both bytecode and native code compiling works,
-output-obj works and can be used to emit .o and .so files,
and using the toolchain is as simple as passing -toolchain android
to your ocamlfind invocation (or even setting the OCAMLFIND_TOOLCHAIN
environment variable).

For further details and installation instructions, please refer to
the GitHub project page:
https://github.com/whitequark/opam-android

-- 
Peter Zotov

--

-- 
Caml-list mailing list.  Subscription management and archives:
https://sympa.inria.fr/sympa/arc/caml-list
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs

Xavier Van de Woestyne | 17 Oct 18:42 2014
Picon

Troubles with OPAM

Hi, i'm using OPAM since 2 years.
I recently changed my distribution (now I am on Debian and XFCE).
Opam installs easily.
But on each update/upgrade try to reinstall every package. (includes base-threads, base-unix). And when I'm trying to install, for example, merlin, after an Eliom installation, Opam try to reinstall ocamlfind 1.5.3 but it could'nt.
Do you have any idea? (I have already try to rm -rf .opam and aptitude purge opam to reinstall but the troubles stay).

Thanks a lot.

Xavier.

--
Xavier Van de Woestyne
xavier.vdw <at> gmail.com - TEL BE : 0474 49 53 83 | TEL FR : 06 73 38 72 84

Gmane