User loginNavigation |
LtU ForumTesting in the absence of side effectsDear all, I often hear the claim that immutability and pure functions are easier to test. While I personally believe the idea, I was looking for some disciplined research on the topic. I was hoping to go beyond the usual "hearsay" of PL communities. Any advice from the experts? Axiomatic LanguageAxiomatic Language was mentioned on LtU long ago, but with our recent paper A Tiny Specification Metalanguage [Wilson & Lei, SEKE 2012], we thought a new post would be in order:
Axiomatic language requires solving the difficult problem of automatic synthesis of efficient programs from specifications. Is there any hope for this? Annual Peter Landin Semantics Seminar, 3 December, BCS London:Unifying Theories of programming, Professor Sir Tony Hoare, LondonPeter Landin Annual Semantics Seminar 3 December 2012 BCS London Offices First Floor, The Davidson Building 5 Southampton Street London WC2E 7HA http://www.bcs.org/upload/pdf/london-office-guide.pdf https://events.bcs.org/book/361/ Introduction Peter Landin (1930--2009) was a pioneer whose ideas underpin modern computing. In the Each year, a leading figure in computer science will pay tribute to Landin's Programme 5.15pm Coffee 6 pm Welcome and Introduction (Professor Peter O'Hearn, UCL) 6.05pm Peter Landin Semantics Seminar: Unifying Theories of programming Professor Sir Tony Hoare (Microsoft Research) 7.20pm Close 7.20pm - 8.30pm Drinks Reception Registration If you would like to attend, please register online: https://events.bcs.org/book/361/ Seminar details Unifying Theories of programming Professor Sir Tony Hoare (Microsoft Research) Two Classical Theories of programming are (1) the Hoare calculus of triples, By paulboca at 2012-10-28 16:24 | LtU Forum | login or register to post comments | other blogs | 4059 reads
Solving the dependency hellIn a nutshell, SPREAD solves the major problems we face when we try to manage Programs. Let's fix spreadsheetsI wonder: why is it that spreadsheets appear to be ignored by real programmers? Is it because spreadsheets are the equivalent of spaghetti code? Is it because spreadsheets are hacks, put together by non-savvy 'business' people? The horror! Yes, I admit. I also very much believe all this to be true. Spreadsheets are sloppy programs. Hence, we programmers don't want to bothered by them. At the same time, research shows that almost 5% of the spreadsheets contain serious errors, causing multi-million dollars of losses. That figure should freak you out, if you happen to own a bank account. I know firsthand that our banks still run some of their critical businesses on broken spreadsheets. The same spreadsheets we programmers tend to ignore. Sure, there are attempts to lift spreadsheets into the realm of functional programming, with Reactive Functional Programming (FRP) as the most recent development. But FRP doesn't feel right. As a programmer? May be yes. But I don't think the 'poor' people will understand. FRP is just to distant from their beloved spreadsheets. Can we educate people to learn FRP? I don't believe we should. What I believe is that we must teach them appropriate 'programmer values': Modularity None of these can currently be attributed to legacy spreadsheets. Ultimately, that's why I think legacy spreadsheets are bound to be a failure. We need more programming, without getting in the way of 'getting things done'. So that's our challenge: to enhance spreadsheets, so that programmers and business people will meet each other in cells. It is obvious that I've accepted this challenge: to develop a new powerful spreadsheet paradigm. A paradigm for everyone to like. Edit: a small edit The SPREAD programming languageMay I draw your attention to the SPREAD programming language. It has not been implemented yet, but its design is almost finished. SPREAD borrows from many programming languages, but also introduces a number of interesting new concepts: 1) Programs are first-class immutable values and are written in postfix format Next to that, an algebra of Streams is defined, together with an algebra of Labels. The Terms languageI have been working on a logic programming language I guess I must be wrong, but where am I wrong? 1.- http://pypi.python.org/pypi/Terms/ Binary relations, endorelations and transitive closuresRelations are an important vehicle to write specifications. In this article In the second part we study endorelations i.e. binary relations where the type ... By hbrandl at 2012-10-18 14:24 | LtU Forum | login or register to post comments | other blogs | 3570 reads
Real-Time Programming and the Big Ideas of Computational LiteracyChristopher Hancock's dissertation, mentioned before but I think it deserves its own post somewhere, especially since it is very similar to Bret Victor's work (but is from 2003!).
Strongly-Typed Language Support for Internet-Scale Information Sources: F# Type Providers
1 Microsoft Research, Cambridge, United Kingdom Abstract: ...Most modern applications incorporate one or more external information sources as integral components. Providing strongly typed access to these sources is a key consideration for strongly-typed programming languages, to insure low impedance mismatch in information access... In this report we describe the design and implementation of the type provider mechanism in F# 3.0 and its applications to typed programming with web ontologies, web-services, systems management information, database mappings, data markets, content management systems, economic data and hosted scripting. Type soundness becomes relative to the soundness of the type providers and the schema change in information sources, but the role of types in information-rich programming tasks is massively expanded, especially through tooling that benefits from rich types in explorative programming. What do you think of this approach? |
Browse archives
Active forum topics |
Recent comments
9 weeks 5 days ago
9 weeks 6 days ago
9 weeks 6 days ago
10 weeks 6 hours ago
10 weeks 3 days ago
10 weeks 3 days ago
10 weeks 4 days ago
10 weeks 5 days ago
10 weeks 5 days ago
10 weeks 5 days ago