Quantcast
Sign in with Twitter

Username:

Occasional OCaml programmer

90 Following   2,178 Followers   1,252 Tweets

Joined Twitter 6/21/09

Reverse Tweets
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.Does anyone have recommendations for papers to read on tuning GCs for low, deterministic latencies? I'm curious what's worked for others.In a nutshell: better profiling, aging, better incrementalization, and hooks to let you shift gc work away from when you're busy.If you care about building soft real time systems in OCaml, there's some pretty exciting GC improvements coming down the pike...
4/7
2015
@samth Fair enough. You have to take the opportunities you get...@samth TR is lovely, but I'm not convinced that giving it to a 13yo is the right pedagogical move. I'd rather introduce types with OCaml.But Racket's numeric tower is a huge boon doing Euler problems with my son. A bunch of complicated corner cases just evaporate.Doing higher-order stuff while doing Euler problems in Racket highlights how dependent I've become on ML's types.
4/6
2015
Programming languages are infrastructure. Why don't more software engineers want better languages like they want other infrastructure?
Retweeted by Yaron Minsky
4/4
2015
@headinthebox @conal @sperbsen maybe a new and more specific term for the semantics you prefer is the right move now.@headinthebox @conal @sperbsen And FRP being used to describe a broad class of functional approaches to reactivity is perhaps appropriate.@headinthebox @conal @sperbsen As to the name, well, names belong to the speakers, not just the coiners.@headinthebox @conal @sperbsen That seems right to me too.@wssbck Not at all! Indeed, fp experience isn't required either. We're happy to work with excellent developers of all stripes.@conal As for continuity, doubles, a discrete approximation of the rationals, is much easier to think about performance-wise than rationals.@conal In particular, reasoning about space utilization is complicated by laziness.@conal Aren't the downsides of laziness uncontroversial? Certainly I've heard SPJ and other Haskell luminaries acknowledge this.
4/3
2015
Just a friendly reminder that Jane Street is, as always, hiring. And yes, we still write almost everything in OCaml. https://t.co/2RVWYTMJY8@conal @headinthebox I'd love a post about the practical upsides. The ups and downs of laziness are well known; not so for continuity.Despite a few howlers, I did like the article overall, and the broad point is sound. http://t.co/ifiY9Fuumf@conal @headinthebox I think you're assuming the aversion comes from some confusion, where for me it comes from a judgment about tradeoffs.@conal @headinthebox continuity and infinitude are good for reasoning about some semantics, but bad for about reasoning about performance.Here's an update on what the OCaml Labs group has been up to in 2014, and plans for the rest of 2015! http://t.co/xWsCocmvHq
Retweeted by Yaron Minsky@kot_2010 It makes me want to cry.This is especially sad because I gave the fact checker and the journalist feedback that this bit was wrong. But, a good story trumps..."...for the type checker to do its job, the programmers have to add complex annotations to their code" Just wrong. http://t.co/6Cy1m7Iij4An interesting-looking project to bring an oss desktop to the iPad, important bits of which are in OCaml. https://t.co/IfPc6gKt26
4/2
2015
Some interesting work on bringing compiler intrinsics to OCaml: https://t.co/5uv5Rz6gXH
4/1
2015
The OCaml team has done great work making things simpler, like ppx and module aliases. Removing the float array hack should be next.@jlouis666 Usually he is, but about what specifically in this case?
3/31
2015
A new post on why GADTs matter for performance: https://t.co/NFCPw6x0ty@cafe2code we've done some OCaml. But I think types should mostly show up later in the curriculum.Plus, he can do them in Racket, which we both agree is a big upgrade from the Lua he's been using for game programming.Euler Problems have been a great teaching tool for my 13yo. The bite-sized goals are motivating, and they require him to stretch himself.
3/30
2015
@yminsky turns out you can just fix a book whenever you want. The joys of on demand printing.@yminsky RWO revised rather than 2, as it turns out.Realized the bit in RWO explaining the oddities of first-class module types can now be removed, because OCaml was fixed. +1 for progress.
3/29
2015
@jordwalke @avsm Jenga might be just the thing for that. Email me directly and I can hook you up to the Jenga devs to discuss.@bos31337 it's a known issue, so it didn't seem worth reporting again. Do you think we should send in a report of our experiences anyway?@avsm @jordwalke Agreed.
3/27
2015
@bos31337 any progress on better support for highly branchy workflows? That's what's currently killing us.@bos31337 our current pain point is that mercurial performance falls apart for highly branchy workflows.@bos31337 does that mean there's some news about improvements to mercurial performance? I'm all ears...
3/26
2015
It is a trivial thing, but I find myself missing the use of lisp-style identifier punctuation in C++ now -- ReadyToSpawn? uid->name etc.
Retweeted by Yaron MinskyHacker School is now the Recurse Center: https://t.co/11kxJmaHqP
Retweeted by Yaron MinskyIf your #OCaml code/repo on @github is being misreported as SML, then it should fix itself on the next push. Pls RT!
Retweeted by Yaron Minsky
3/25
2015
Some notes on progress towards a lighter Core. https://t.co/gsFlfUR2zU
3/23
2015
I am continually astonished every time I do an "opam upgrade" and everything just works. The maintainers have done an amazing job.
3/20
2015
System I created mentioned positively by @ID_AA_Carmack. #achivementunlocked
Retweeted by Yaron MinskyI just dumped the C++ server I wrote last year for a new one in Racket. May not scale, but it is winning for development even as a newbie.
Retweeted by Yaron Minsky
3/17
2015
@samth well, there's a design choice about how much of the semantics to put in the type. More isn't always better.@ndm_haskell I never know how to think about this stuff. I found Scheme to be delightfully intuitive, and ML took me years to appreciate.
3/15
2015
« Prev1234567

0