User loginNavigation |
FunOpenSCAD - The Programmers Solid 3D CAD Modeller
In days gone by I used to post examples demonstrating the power of DSLs over GUIs. This is a nice example I came across recently. The scripting approach may be useful, of course, to 2D CAD as well. Here is an amusing example. Maybe the analog computing DSL I fantasized about should output SCAD scripts instead of compiling directly to g-code... Programming CNC machines in HaskellWhile I like the general idea, it seems this project didn't go far enough. What I think would be cool is to develop are DSLs that compile to g-code. For example, putting my hacker hat on, I think it might be fun to build a DSL for describing mechanical (analog) computers, this will compile into g-code for cams, shafts, gears etc. that could then be manufactured using CNC machines and/or 3D printers... The Right ToolDavid MacIver is doing a bit of a sociological study on how programmers pick The Right Tool for the job. Programmers select all the languages they know from a fairly mainstream and popular list and then rank those languages according to statements like "I find it easy to write efficient code in this language" and "When I write code in this language I can be very sure it is correct". At the end of the process the survey taker can see how languages ranked overall under each statement and what statements have been most strongly associated with each language. Obviously this isn't a formal study and, as with all online surveys, there are going to be challenges with selection bias and with people trying to game the system. None-the-less, it is pretty interesting and fun as is. Perhaps something similar would be worth doing under more controlled circumstances (although it beats me how to feasibly get a large sample size of programmers without introducing selection bias). Brians functional brainA rather fun and instructive series of posts about implementing a cellular automaton in idiomatic Clojure, and making it run fast (and in parallel). Be sure to read the second part, and the errata. By Ehud Lamm at 2010-04-16 02:20 | Clojure | Fun | Parallel/Distributed | 3 comments | other blogs | 10282 reads
Code BubblesMost of you have probably heard about Microsoft's now-completed Visual Studio 2020 competition, where the grand prize was to meet Scott Guthrie, the effective head of the Developer Division. People were invited to make submissions, and one of them was shown on Code Project and began life as the Visual Studio 2010 Concept IDE. Well, Ph.D. student Andrew Bragdon has his own take on "inventing the future". Code Bubbles is an IDE that will be presented at this years ICSE. The level of thought that has gone into this design is simply astonishing. It has the feel of a tiling window manager like XMonad or awesomewm, but without the traditional MDI Application or SDI Application WIMP metaphors we're used to; as a result, it eliminates a ton of clutter. It also integrates key ideas from Eclipse contributed by Mik Kersten and Borland/CodeGear: The Mylyn project for integrating workflow deeply into the IDE. This is some real inspiration for Gilad Braha's Newspeak project (Vassili Bykov's Hopscotch IDE; LANG.NET 2009) and Dan Ingalls' Lively Kernel, since the staple of any good Smalltalk-like language is the environment! Will makers of 30" monitors will be shaking developers down by their ankles? :) The Recruitment Theory of Language OriginsLeo Meyerovich recently started a thread on LtU asking about Historical or sociological studies of programming language evolution?. I've been meaning to post a paper on this topic to LtU for awhile now, but simply cherrypicking for the opportune time to fit it into forum discussion. With Leo's question at hand, I give you an interesting paper that models language evolution, by artificial intelligence researcher Luc Steels. Steels has spent over 10 years researching this area, and his recent paper, The Recruitment Theory of Language Origins, summarizes one of his models for dealing with language evolution:
The year in review, and What's to comeNaturally in this day and age, the path to understanding the past and future goes through twitter. Now here is the challenge, in order to make this more exciting: What we really need is a statistical analysis of the #code2009 and #code2010 streams (and in particular, their differences). The goal is to post code that does this analysis in the most elegant and succinct way; naturally using the langues du jour earns bonus points. Holiday Fun: How Programming Language Fanboys See Each Others’ LanguagesPerhaps I am a bit dense, but I find this only mildly amusing, not ROFL material. Still, it is amusing enough to share at this time of year. Happy holidays! Perl Cannot Be Parsed: A Formal ProofPerl Cannot Be Parsed: A Formal Proof via Perl Monks. Elegantly proved via reduction to (from?) the Halting Problem. Apollo 11 Source Code on GoogleCodeA blog post announces that some of the source code for the Apollo 11 spacecraft has been put online.
Since we LTUers spend a lot of time talking about the highest of the high level languages it's illuminating to see how much was done with so little. The source also shows that flying to the moon is really not that different from the kind of programming most programmers do every day. Note the comments. VRTSTART TS WCHVERT # Page 801 CAF TWO # WCHPHASE = 2 ---> VERTICAL: P65,P66,P67 TS WCHPHOLD TS WCHPHASE TC BANKCALL # TEMPORARY, I HOPE HOPE HOPE CADR STOPRATE # TEMPORARY, I HOPE HOPE HOPE TC DOWNFLAG # PERMIT X-AXIS OVERRIDE ADRES XOVINFLG TC DOWNFLAG ADRES REDFLAG TCF VERTGUID |
Browse archives
Active forum topics |
Recent comments
23 weeks 6 hours ago
23 weeks 10 hours ago
23 weeks 10 hours ago
45 weeks 1 day ago
49 weeks 3 days ago
51 weeks 17 hours ago
51 weeks 18 hours ago
1 year 1 week ago
1 year 6 weeks ago
1 year 6 weeks ago