Quantcast
Sign in with Twitter

Username:

Occasional OCaml programmer

90 Following   2,241 Followers   1,303 Tweets

Joined Twitter 6/21/09

Reverse Tweets
I'm blown away by this photo http://t.co/w3wKUJY3K2
Retweeted by Yaron MinskyGreat exchange about the new #multicore support for #ocaml. http://t.co/sSt8LykKkC
Retweeted by Yaron MinskyNow i just need to show him how to turn it into a web-app in Racket. I suppose I need to learn how to write a web app in Racket first.Just reminded of a comment about "Unsexy Types" I wrote on LtU some years back. It still rings true to me: http://t.co/IltmnBvcLnMy 13yo just finished a connect-4 AI in Racket. It's a glorious, ad-hoc mess, with discarded parens scattered around it on the floor.Algebraic effects in multicore OCaml: http://t.co/v0gLcH22be
Retweeted by Yaron Minsky
5/21
2015
@obadzz I'm afraid not.@obadzz This talk was in 2014...@samth @marius Ah, from another reply, sounds like Dan Grossman has been involved. Lovely.@samth It's also deeply influenced by the MetaOCaml work, unsurprisingly.@samth Leo White and Jeremy Yallop have been talking with Matthias and Flatt. There's a proposal in to the 2015 OUD to present the outline.@samth @marius Which ones? As of a couple of years ago, I think Greg hadn't been involved.
5/20
2015
@avsm So, is ocaml-tls exposed to LogJam? Another day, another TLS vulnerability...@marius Though that one in particular might require quite a supply of alcohol.@marius And we can get Leslie Lamport and Xavier Leroy to talk about types in proof systems (Coq and TLA+)@marius We can get the frp and self adjusting computations people in one session, and then bring the concurrency monad guys in for the next.@marius Indeed. I think the Rust and Cyclone guys still haven't talked seriously. One day...The folks working on macros for OCaml are actually talking to Racket people in some depth. It's like a dream come true...
5/19
2015
@evilkid awesome. I'll take a look.
5/16
2015
@odersky @debasishg Interesting! I heard someone describe a related trick for OCaml's implicits just yesterday! Something is in the air...
5/13
2015
@odersky How? By adding Haskell-like monadic tracking of effects? Seems tricky to add late in the game.
5/12
2015
@samth Sounds like the right place to start.@samth He's already a racket programmer, so that's a good start. How could he get involved?@larsberg_ More seriously, what would be a project that a smart 13-yo can effectively contribute to?@larsberg_ That's a neat idea. I'm a little worried about throwing him into a big C++ codebase at a tender young age, though.Can anyone recommend an online community for teenagers who are interested in programming?New docs patch merged into the compiler! Along with codoc, should make docs for OCaml libs a lot better. https://t.co/j23HJPudNL@Mads_Hartmann https://t.co/RrGZ6SQTM4
5/11
2015
So depressing, and yet so predictable. Security seems to be thought of least where it's most important. https://t.co/afQf2JaYk8@JudithShulevitz Great article. It definitely makes me feel a little sheepish about my own life. I'm definitely not the designated worrier.
5/9
2015
The new OCaml multicore design uses algebraic effects to allow preemptive threading to be done as a library. It's a very promising idea.
5/8
2015
Can any Intel folk explain why Intel doesn't explicitly acknowledge that their memory architecture follows x86-TSO? http://t.co/pIBWBoi29J@avsm @jakedonham Indeed. That one is nice and accessible.The x86-TSO papers are great. A much saner and more precise memory model than is given in the Intel manual.@eriangazag and maybe flambda for better inlining, if Shinwell and Pierre have their say...
5/6
2015
js_of_ocaml is pretty good. Crusty syntax, but stellar asynchronous control flow, lean JS, and a pretty fast compiler. Thumbs up.
Retweeted by Yaron Minsky
5/5
2015
@yminsky http://t.co/jBXzclrFj5
Retweeted by Yaron MinskyI think one of the reasons I have found most build systems unpleasant is that they are weakly and dynamically typed -- lots of string ops.
Retweeted by Yaron Minsky
4/28
2015
@yminsky And converting some old Euler problem code uncovered several conceptual mistakes. A great experience thus far.Typed Racket is better as a teaching tool than I'd expected. Most surprisingly, TR's parametric polymorphism seemed natural to my 13yo.
4/26
2015
@yminsky There is "optimization by design" and "optimization by code". I agree that optimization by design must come in early.
Retweeted by Yaron Minsky@andrejbauer But many forms of early performance work are indeed premature.@andrejbauer Indeed. The key mistake in the standard advice is to make it sound like you shouldn't even think about performance early.And it's very hard to take a system not designed with performance in mind and evolve it to be truly fast.You should of course use measurements to guide your optimizations. But you need a clear mental model of performance to design a fast system.Admonitions to delay optimizations always leave me cold. Performance is a feature you need to design in from the beginning.
4/23
2015
And here's the code if anyone wants to see some poorly written C code. https://t.co/izaRCxJdrTVery excited! My 8yo daughter and I just finished our Arduino alarm clock. Much fun... http://t.co/OgmwXVjAsg
4/21
2015
@marius (and in some ways worse, of course)@marius Not yet, but we're doing some experiments. Hopefully it will be in some ways better than curses.Latest internal release of Async rpc requires only Async_kernel. Coming soon to a browser near you...
4/19
2015
The https://t.co/TSBqhEofg8 server is now running a bleeding-edge version of the Mirage OCaml TLS stack. Any bug reports appreciated!
Retweeted by Yaron Minsky@evilkid Dear lord... So is this intended to be an OCaml machine, like the lisp machines if yore?woohoo! hardcaml-zinc said 'hello world!'. https://t.co/tVEvgBWi7O
Retweeted by Yaron Minsky
4/18
2015
@cartazio @bitemyapp ImplicitCAD's github repo has commits in November of last year, actually.@cartazio @bitemyapp Maybe Twitter is the wrong place for a long back-and-forth like this. I'll try IRC. Thanks!@cartazio @bitemyapp Packages are hard...@cartazio @bitemyapp Not sure about the coffee, but no success. It got farther, but still failed. https://t.co/ZTMfFHeR6W@cartazio @bitemyapp Do sandboxes make sense for installing end-user packages? It mostly looks oriented towards development.@cartazio @bitemyapp OK, I'll uninstall cabal and ghc from brew, and get the versions from your link, and try again...@cartazio @bitemyapp Mac, using homebrew.@krismicinski How do I use sandboxing?Dear lord, and now I can't install pandoc! Am I cursed, or is cabal usually like this? https://t.co/kgqsN5FBoY@yminsky I blew away my .cabal, to just install this one package from scratch. Still no love. https://t.co/xO7fzUwMUa@bitemyapp What do you mean by a "vendored version"?@bitemyapp I'm not trying to write Haskell code, I'm trying to install a Haskell program. The link only looked relevant when writing code.@bitemyapp Is this something the package owner should use, or something I the cabal user should use?Any advice from Haskell gurus? How do you deal with this kind of Cabal failure? https://t.co/UVH6WGcGtV@webyrd @catlx @hoeken Sigh. Cabal fails to install the package. I've never been able to get Cabal to work properly for me.@webyrd @catlx @hoeken ImplicitCAD looks promising. Written in Haskell, so they know what a scope is, which helps.@webyrd @catlx @hoeken OpenSCAD is also surprisingly slow. Spheres are polygonized at very low resolutions, and raising it is sloooow.@webyrd @catlx @hoeken Sigh. Is there anything better than OpenSCAD? What I really want is an embedded language in Racket...Openscad is a little frustrating. A concise description of the language and its semantics is I imagine possible, but nowhere to be found.@marius And it sounds like maybe Go is moving away from tcmalloc https://t.co/4R5t5PZG8v@marius OCaml does its own pooling, effectively. It uses malloc to add new heap chunks when the heap needs to grow, but that's it.@marius No! I'll ask Damien about the idea. Do you know of any other GCs that do this?
4/11
2015
A summary (with github links!) of the work we've been doing improving OCaml's GC for low-latency applications: https://t.co/3jP500TIFW@sperbsen Oh well...@sperbsen Right now, all my slides are in org mode or keynote, and I'm not truly happy with either...@sperbsen do you know if sideshow has a way of presenting code that isn't in racket?
4/10
2015
@ezyang Thus far in OCaml, the benefits look quite small. Does appear to be valuable in combination with some other clever tricks, though.Anyone have a good understanding of the benefit Haskell saw from adding aging to its GC? I'm curious what the numbers looked like. @ezyang@dackerman If I had to write software that my life depended on, I would seriously consider using Haskell.
Retweeted by Yaron Minsky
4/9
2015
@hmansell Yeah, we're not switching to Java anytime soon, but I would like to understand the design better.@hmansell @AzulSystems Indeed. Do you know if azul still requires specialized hardware for doing incremental compaction efficiently?Converting my server codes to Typed Racket. Already pointing out some sloppy thinking. My last refactor really made me miss static typing.
Retweeted by Yaron Minsky
4/8
2015
@jordwalke What's a reconciler?@jordwalke @mrb_bk That all makes sense, and seems doable, though delaying GC can cost in memory. Btw, is this stuff you're doing in OCaml?@jordwalke @mrb_bk I think we can get OCaml to allow the application to drive, so the application makes such decisions directly.@mrb_bk I would think the optimal thing would be to use slack at first, but maybe fail over to time-only if you get too busy.@mrb_bk It seems like including some notion of slack should improve typical latencies for lightly loaded apps quite a bit.@mrb_bk Ah, interesting. I think of that as time-based, since it clocks the GC based on real time, rather than just by allocation.@mrb_bk The tradeoff there is lower latency at the expense of higher utilization. Perhaps this is standard?@mrb_bk One approach I haven't seen anyone discuss is running the GC when the core is otherwise idle. Useful when app owns the core.@mrb_bk I wonder how different soft-real-time is from real-time. I would have thought that slack-based would dominate time-based there.@dagskeenan @marius @TonyPrintezis I wonder. If you keep the young-gen small, and schedule by time, maybe the tail latency can be tamed.@mrb_bk Reading it now. A great post: thanks!@dagskeenan @marius @TonyPrintezis oh, and what is cms?@dagskeenan @marius @TonyPrintezis interestingly, for OCaml, a huge young generation doesn't seem necessary. I wonder why.@marius @TonyPrintezis @dagskeenan nope, but I just ordered a copy.
4/7
2015
« Prev1234567

0