LWN: Comments on "FontForge and moving forward" https://lwn.net/Articles/643141/ This is a special feed containing comments posted to the individual LWN article titled "FontForge and moving forward". en-us Tue, 21 Oct 2025 08:25:50 +0000 Tue, 21 Oct 2025 08:25:50 +0000 https://www.rssboard.org/rss-specification lwn@lwn.net FontForge and moving forward https://lwn.net/Articles/644611/ https://lwn.net/Articles/644611/ ssokolow <div class="FormattedComment"> I don't personally use scientific computing stuff with heavy enough data loads to need anything more performant than ipython-notebook and it's not the kind of glamourous stuff that get trumpeted from the rooftops, so I don't have a ready answer.<br> <p> However, crates.io does appear to already have a couple of different BLAS bindings, so there are obviously some people interested in that use.<br> </div> Fri, 15 May 2015 05:26:36 +0000 FontForge and moving forward https://lwn.net/Articles/644522/ https://lwn.net/Articles/644522/ dashesy I have only read praise about Rust, and am very eager to try it in what seems to be a good fit. What is the state of scientific computing in Rust? is there any equivalent of <i>SciPy</i>, <i>NumPy</i>, <i>Scikits</i>, <i>Pandas</i>, <i>IPython</i> and the most important one for me <i>matplotlib</i> in Rust? Thu, 14 May 2015 16:50:32 +0000 FontForge and moving forward https://lwn.net/Articles/644422/ https://lwn.net/Articles/644422/ ssokolow <div class="FormattedComment"> Given how much onus JavaScript puts on the developer to ensure the codebase remains maintainable (duck-typed dynamism doesn't help there), my hopes are for Emscripten being updated to a new enough version of LLVM for such apps to be written in Rust.<br> <p> (If you haven't tried the Rust 1.0 beta, I highly recommend trying the 1.0 final release that's coming out tomorrow. It's got string handling, package management, segfault-immunity, and GTK bindings that place it in competition with languages like Python and JavaScript but it compiles to GC-less native code with performance comparable to C or C++ and not only does it have a great FFI for calling C code, it makes it really easy to generate libraries that C code can call.)<br> <p> <a rel="nofollow" href="http://rust-lang.org/">http://rust-lang.org/</a> (Downloads)<br> <a rel="nofollow" href="https://play.rust-lang.org/">https://play.rust-lang.org/</a> (In-browser compile+run playpen)<br> <a rel="nofollow" href="https://github.com/ctjhoa/rust-learning">https://github.com/ctjhoa/rust-learning</a> (Curated list of learning materials)<br> <a rel="nofollow" href="https://github.com/kud1ing/awesome-rust">https://github.com/kud1ing/awesome-rust</a> (Curated list of libraries)<br> <a rel="nofollow" href="https://crates.io/">https://crates.io/</a> (NPM/PyPI equivalent)<br> <a rel="nofollow" href="https://www.reddit.com/r/rust/comments/35ue7y/rust_with_emscripten/cr7xoeg">https://www.reddit.com/r/rust/comments/35ue7y/rust_with_e...</a> (Source for my Emscripten comment)<br> <a rel="nofollow" href="https://www.youtube.com/watch?v=LazvK39Oc4U">https://www.youtube.com/watch?v=LazvK39Oc4U</a> (Ghe concepts behind Rust and calling Rust from Ruby)<br> <a rel="nofollow" href="https://www.youtube.com/watch?v=3CwJ0MH-4MA">https://www.youtube.com/watch?v=3CwJ0MH-4MA</a> (Calling Rust from Python)<br> <p> Noteworthy tutorials:<br> <a rel="nofollow" href="http://doc.rust-lang.org/1.0.0/book/">http://doc.rust-lang.org/1.0.0/book/</a><br> <a rel="nofollow" href="http://www.rustforrubyists.com/">http://www.rustforrubyists.com/</a><br> <p> Noteworthy Libraries:<br> <a rel="nofollow" href="https://github.com/rust-gnome">https://github.com/rust-gnome</a> (PyGTK/PyGI equivalent)<br> <a rel="nofollow" href="http://www.piston.rs/">http://www.piston.rs/</a> (PyGame equivalent)<br> <a rel="nofollow" href="https://github.com/kbknapp/clap-rs/">https://github.com/kbknapp/clap-rs/</a> (Very nice command-line argument parser)<br> <a rel="nofollow" href="http://arewewebyet.com/">http://arewewebyet.com/</a> (Overview of server-side web frameworks)<br> <p> ...and the subreddit and IRC channel are very helpful.<br> </div> Thu, 14 May 2015 10:01:57 +0000 FontForge and moving forward https://lwn.net/Articles/643686/ https://lwn.net/Articles/643686/ rsidd <div class="FormattedComment"> Replying to myself: I continue to use (La)TeX for serious stuff, which originally depended on Metafont, but modern versions (pdftex, xetex etc) use Type1 postscript or OpenType fonts instead. <br> </div> Fri, 08 May 2015 15:00:15 +0000 FontForge and moving forward https://lwn.net/Articles/643669/ https://lwn.net/Articles/643669/ rsidd <div class="FormattedComment"> Interesting to learn about Metapolator. So Metafont is still alive, if in a different form. One of the more interesting chapters in Douglas Hofstadter's "Metamagical Themas" (originally columns in Scientific American in the early 1980s) is a discussion of Metafont, including a version of "The Lord's Prayer" typeset by Knuth slowly tweaking parameters such that the first few words look like some 19th-century florid heavily-serifed font, while the last few look like a modern sans-serif typeface not too different from Verdana (which was well in the future at that time), but the changes from word to word are hardly perceptible. I wonder if Metapolator can pull off things like that (not that I'm sure there is a point, and much of Hofstadter's article was devoted to attacking Knuth's view that there is a "universality" to fonts such that a sufficient number of twiddlable knobs could cover all the font families around.)<br> </div> Fri, 08 May 2015 14:58:28 +0000 FontForge and moving forward https://lwn.net/Articles/643645/ https://lwn.net/Articles/643645/ massimiliano <p><em> If, with the current state of web technology, it can be done at all. </em></p> <p> The "<em>current state of web technology</em>" is a very fast moving target, and incredibly diversified. </p> <p> Given the variety of different frameworks that one can call "web technologies", I am convinced that the complexity of a large "web based" software product can vary a lot depending on design decisions and frameworks adopted (which is of course true also in the C and C++ world). </p> <p> However, the "web" ecosystem is becoming truly amazing, and in particular it is providing tools that support very clean software design and implementation. I would contend that making the right choices one can not only implement projects "as complex as the C and C++ ones", but also do them "better" and in a fraction of the time. </p> <p> Just look at how many desktop projects are choosing something like node-webkit, or the new "electron" by Github, as a base framework. Heck, you can laugh at it, even Microsoft used electron for their new free (as in beer) cross platform development environment! </p> <p> We should stop assuming (by preconception) that "web development" equals necessarily "an entangled unmaintainable mess of PHP and spaghetti Javascript". The world is moving on :-) </p> Fri, 08 May 2015 06:37:12 +0000 FontForge and moving forward https://lwn.net/Articles/643619/ https://lwn.net/Articles/643619/ alankila <div class="FormattedComment"> Yeah, I think that I indeed missed it. Still, I do think that JavaScript has solved at least some of the "problems" such as how to handle strings (especially if I can compare to C), so it is probable that most programs are simpler, shorter, and less prone to security vulnerabilities and segfaults when written in JS. So I think it's at least plausible to argue that some applications would indeed be better when written in JS.<br> <p> On the other hand, I have no expectation that every kind of application can be ran from the browser sandbox. indeed, application such as Blender or some video or sound editor would probably prove to be either impossible or perform very poorly. However, this is more a question about the APIs available to developer than about the fundamental implausibility of the task.<br> </div> Thu, 07 May 2015 19:39:29 +0000 FontForge and moving forward https://lwn.net/Articles/643593/ https://lwn.net/Articles/643593/ halla <div class="FormattedComment"> You missed the point of the discussion, not that I was there, but it was, obviously, not about whether to write web applications in c/c++ or javascript, but whether web applications using javascript can be used to write applications approaching desktop applications in functionality without their codebase becoming just as unwieldingly complex as c/c++ based desktop applications.<br> <p> I'm pretty sure that if you write a fontforge, a krita, a scribus, a blender, a gimp in javascript/webgl, that you'd end up with something at least as complex and impenetrable, and probably something much worse. If, with the current state of web technology, it can be done at all.<br> </div> Thu, 07 May 2015 15:32:22 +0000 FontForge and moving forward https://lwn.net/Articles/643567/ https://lwn.net/Articles/643567/ alankila <div class="FormattedComment"> <font class="QuotedText">&gt; Øyvind "Pippin" Kolås from GIMP then disagreed strongly with the notion that web-development languages could compete with C and C++. CSS and JavaScript user interfaces rely on levels of abstraction to keep things simple, he said; the core development underneath is just as complex in a "web stack" as it is in native code.</font><br> <p> This statement sounds pretty stupid. I hope it had better context, because it's so clearly not true in practice. Firstly, there are very few to none who write web backends in either C or C++. Java and the scripting languages of various kind basically own this space. For web application server side, C and C++ are basically nonstarters.<br> <p> Secondly, neither C nor C++ can be comfortably used as a development language. JavaScript won over these despite its (subjective) ugliness and steep performance and memory penalty. But these days, it's not that bad. If anything, there is less point today than ever to even consider choosing C or C++ for writing web application frontends.<br> <p> The quote contains a measure of truth in that the algorithms and datastructures have to be more or less the same in order to solve a similar problem, so writing in JavaScript does not equate to magically waving a wand that eliminates the core of the problem. However, it does eliminate a giant portion of the other kind of complexity which definitely matters.<br> </div> Thu, 07 May 2015 14:16:17 +0000