<p dir="ltr">Lovely.  Hopefully it's smooth sailing from here...</p>
<p dir="ltr">(Famous last word)</p>
<p dir="ltr">y</p>
<div class="gmail_quote">On Jan 27, 2015 9:31 AM, "Greg Morrisett" <<a href="mailto:greg@eecs.harvard.edu">greg@eecs.harvard.edu</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Thanks to Kenichi Asai, I’ve gotten this fixed.  The issue is that<br>
the .elc files weren’t wiped out from the previous buggy version<br>
of tuareg.  Deleting those fixed the problem.<br>
<br>
-Greg<br>
<br>
> On Jan 26, 2015, at 10:31 AM, Yaron Minsky <<a href="mailto:yminsky@janestreet.com">yminsky@janestreet.com</a>> wrote:<br>
><br>
> And the version of Tuareg is the one from opam?  Did you try<br>
> Christophe's suggestion of getting the HEAD release?<br>
><br>
> y<br>
><br>
> On Mon, Jan 26, 2015 at 10:02 AM, Greg Morrisett <<a href="mailto:greg@eecs.harvard.edu">greg@eecs.harvard.edu</a>> wrote:<br>
>> One possible difference is that I’m using MacPorts instead of<br>
>> Homebrew.  But I’m not sure why that would cause these problems.<br>
>> I explicitly downloaded the latest (binary) versions of both<br>
>> emacs and aquamacs.<br>
>><br>
>> -Greg<br>
>><br>
>>> On Jan 26, 2015, at 10:00 AM, Greg Morrisett <<a href="mailto:greg@eecs.harvard.edu">greg@eecs.harvard.edu</a>> wrote:<br>
>>><br>
>>> The emacs version is 24.4.1.  The .emacs file is the one you sent<br>
>>> me.  When I fire this up, font-lock-mode is enabled, but nothing<br>
>>> is colorized when I load a .ml file.  If I explicitly font-lock-<br>
>>> fontify-buffer, and then type anything, I get the error message:<br>
>>><br>
>>> Symbol’s function definition is void:  tuareg-syntax-propertize<br>
>>><br>
>>> I’m going to try the most recent head of tuareg to see if this<br>
>>> fixes the problem.<br>
>>><br>
>>> (NB:  same behavior under latest Aquamacs.)<br>
>>><br>
>>> -Greg<br>
>>><br>
>>>> On Jan 23, 2015, at 8:54 PM, Yaron Minsky <<a href="mailto:yminsky@janestreet.com">yminsky@janestreet.com</a>> wrote:<br>
>>>><br>
>>>> Hmm.  Really can't replicate the problem --- font-lock works fine for<br>
>>>> me.  Greg, can you email out your full .emacs?  And double-check the<br>
>>>> version of emacs your running?<br>
>>>><br>
>>>> y<br>
>>>><br>
>>>> On Fri, Jan 23, 2015 at 6:35 PM, Yaron Minsky <<a href="mailto:yminsky@janestreet.com">yminsky@janestreet.com</a>> wrote:<br>
>>>>> That's odd. I'll look at this this weekend.<br>
>>>>><br>
>>>>> y<br>
>>>>><br>
>>>>> On Jan 23, 2015 11:07 AM, "Greg Morrisett" <<a href="mailto:greg@eecs.harvard.edu">greg@eecs.harvard.edu</a>> wrote:<br>
>>>>>><br>
>>>>>> Thanks.<br>
>>>>>><br>
>>>>>> Your dot-emacs and dot-merlin work (with tuareg-2.0.8 which<br>
>>>>>> is what opam installs now.)<br>
>>>>>><br>
>>>>>> However, font lock mode doesn’t automatically trigger on either<br>
>>>>>> emacs or aquamacs, in spite of the fact that I added:<br>
>>>>>><br>
>>>>>> (global-font-lock-mode t)<br>
>>>>>><br>
>>>>>> If I add a hook to try to explicitly turn on font-lock:<br>
>>>>>><br>
>>>>>> (add-hook 'tuareg-mode-hook 'font-lock-fontify-buffer t)<br>
>>>>>><br>
>>>>>> then I get the error:<br>
>>>>>><br>
>>>>>> Warning: Bug in tuareg-mode: it forgets to call `run-mode-hooks'<br>
>>>>>> File mode specification error: (void-function tuareg-syntax-propertize)<br>
>>>>>><br>
>>>>>> -Greg<br>
>>>>>><br>
>>>>>>> On Jan 22, 2015, at 9:58 PM, Yaron Minsky <<a href="mailto:yminsky@janestreet.com">yminsky@janestreet.com</a>><br>
>>>>>>> wrote:<br>
>>>>>>><br>
>>>>>>> In the meantime, I've attached a dot-emacs and dot-merlin files that I<br>
>>>>>>> think work nicely on a mac.  The one thing you need to do is to add<br>
>>>>>>> this line to your .profile file:<br>
>>>>>>><br>
>>>>>>> eval `opam config env`<br>
>>>>>>><br>
>>>>>>> The dot emacs depends on this being in place for figuring out where to<br>
>>>>>>> find all the executables stashed in the .opam directory.<br>
>>>>>>><br>
>>>>>>> The pre-reqs for this to work is getting tuareg downloaded and in the<br>
>>>>>>> proper path (right now, I assume ~/.elisp/tuareg-mode), and installing<br>
>>>>>>> some opam packages:<br>
>>>>>>><br>
>>>>>>> opam install core async merlin utop ocp-indent<br>
>>>>>>><br>
>>>>>>> This should give you merlin, ocp-indent, tuareg, and utop support, all<br>
>>>>>>> nicely integrated.  Note that the .merlin file needs to go in the<br>
>>>>>>> directory where you're editing code (and really, in every directory<br>
>>>>>>> where you're editing code.)  And the .merlin assumes that you're using<br>
>>>>>>> ocamlbuild (or corebuild) and so are putting your build artifacts in<br>
>>>>>>> _build.<br>
>>>>>>><br>
>>>>>>> I'm hoping this is helpful.<br>
>>>>>>><br>
>>>>>>> y<br>
>>>>>>><br>
>>>>>>> On Thu, Jan 22, 2015 at 8:42 PM, Yaron Minsky <<a href="mailto:yminsky@janestreet.com">yminsky@janestreet.com</a>><br>
>>>>>>> wrote:<br>
>>>>>>>> On Thu, Jan 22, 2015 at 8:25 PM, Louis Gesbert<br>
>>>>>>>> <<a href="mailto:louis.gesbert@ocamlpro.com">louis.gesbert@ocamlpro.com</a>> wrote:<br>
>>>>>>>>> Thanks for the feedback. It's probably still a bit rough at the moment<br>
>>>>>>>>> but the config-updating engine is there, and polishing configuration itself<br>
>>>>>>>>> from there should be straight-forward (and never-ending).<br>
>>>>>>>><br>
>>>>>>>> Indeed.  Now I think is the time to really focus on getting it<br>
>>>>>>>> working, because this is the beginning of the semester, and so now is<br>
>>>>>>>> the most valuable time to have something working cleanly.<br>
>>>>>>>><br>
>>>>>>>> It would be good to know what we have there now.  It seems like a<br>
>>>>>>>> minimum should be:<br>
>>>>>>>><br>
>>>>>>>> - tuareg<br>
>>>>>>>> - merlin<br>
>>>>>>>> - ocp-indent<br>
>>>>>>>> - utop<br>
>>>>>>>><br>
>>>>>>>> all read to go in emacs.  Getting vim and sublime text support would<br>
>>>>>>>> be lovely too, but I think less critical.  What does user-setup<br>
>>>>>>>> already support?<br>
>>>>>>>><br>
>>>>>>>>> The idea, with this and the "depext" package is to have a setup that<br>
>>>>>>>>> can be limited to:<br>
>>>>>>>>><br>
>>>>>>>>> PACKAGES="user-setup merlin utop cohttp js_of_ocaml oasis<br>
>>>>>>>>> ocp-indent ocp-index ssl core_extended async js_of_ocaml core_bench cohttp<br>
>>>>>>>>> cryptokit menhir"<br>
>>>>>>>>> opam init -a<br>
>>>>>>>>> opam install depext<br>
>>>>>>>>> opam depext $PACKAGES<br>
>>>>>>>>> opam install $PACKAGES<br>
>>>>>>>>><br>
>>>>>>>>> and results in a ready-to-go environment. This is in particular<br>
>>>>>>>>> targetted at VM setup, of course.<br>
>>>>>>>><br>
>>>>>>>> Interesting. Concretely, what would would depext do in this context?<br>
>>>>>>>> I did a fresh install of a number of packages on my mac, and I didn't<br>
>>>>>>>> need much else, but I may have already had the dependencies in place<br>
>>>>>>>> via brew.<br>
>>>>>>>><br>
>>>>>>>> y<br>
>>>>>>>><br>
>>>>>>>>>> - Yaron Minsky, 22/01/2015 10:56 -<br>
>>>>>>>>>> It installed cleanly for me, but it doesn't quite work.  I installed<br>
>>>>>>>>>> user-setup, merlin, ocp-indent, tuareg, utop, core and async.  It all<br>
>>>>>>>>>> went through, but when I open a .ml file, it shows up in lisp mode,<br>
>>>>>>>>>> not tuareg.<br>
>>>>>>>>><br>
>>>>>>>>> Seems it doesn't handle the opam-installed tuareg package well at the<br>
>>>>>>>>> moment, should be fixed in a moment.<br>
>>>>>>>>><br>
>>>>>>>>>> On Thu, Jan 22, 2015 at 10:54 AM, Greg Morrisett<br>
>>>>>>>>>> <<a href="mailto:greg@eecs.harvard.edu">greg@eecs.harvard.edu</a>> wrote:<br>
>>>>>>>>>>> Okay, I just followed these steps:<br>
>>>>>>>>>>>><br>
>>>>>>>>>>>> opam update<br>
>>>>>>>>>>>> opam install user-setup<br>
>>>>>>>>>>><br>
>>>>>>>>>>> and it seems to be hanging.  Is there a log file or<br>
>>>>>>>>>>> other config information that I can send you to help<br>
>>>>>>>>>>> figure this out?<br>
>>>>>>>>><br>
>>>>>>>>> Thanks. I just managed to reproduce on OPAM 1.1 and hope to fix it<br>
>>>>>>>>> quickly.<br>
>>>>>>>><br>
>>>>>>>> Greg, it's also probably a good idea to encourage your students to<br>
>>>>>>>> upgrade to the latest opam if they're on a mac.  Homebrew is pretty<br>
>>>>>>>> lightweight, and has opam 1.2.0.<br>
>>>>>>>><br>
>>>>>>>> y<br>
>>>>>>> <dot-emacs><dot-merlin><br>
>>>>>><br>
>>>>><br>
>>><br>
>>> _______________________________________________<br>
>>> Teaching mailing list<br>
>>> <a href="mailto:Teaching@lists.ocaml.org">Teaching@lists.ocaml.org</a><br>
>>> <a href="http://lists.ocaml.org/listinfo/teaching" target="_blank">http://lists.ocaml.org/listinfo/teaching</a><br>
>><br>
<br>
</blockquote></div>