User loginNavigation |
LtU ForumPredicate calculus in program verificationPredicate calculus is an indispensable tool for program verification. Therefore any program verifier has to be able to reason with quantified expressions, i.e. universally and existentially quantified expressions. The proof engine of Modern Eiffel is able to perform such reasoning. The following article The previous articles Introduction to the proof engine and Proofs by contradiction illustrate the basics of the proof engine. By hbrandl at 2012-04-02 15:43 | LtU Forum | login or register to post comments | other blogs | 5249 reads
Erik Meijer: Your Mouse is a Database - Rx and Modern Asynchronous ProgrammingPL icon Erik Meijer recently published an ACM article covering Reactive Extensions (aka Rx). As Erik notes in the article (emphasis mine) "the goal of Rx is to coordinate and orchestrate event-based and asynchronous computations such as low-latency sensor streams, Twitter and social media status updates, SMS messages, GPS coordinates, mouse moves and other UI events, Web sockets, and high-latency calls to Web services using standard object-oriented programming languages such as Java, C#, or Visual Basic." His conclusion: Web and mobile applications are increasingly composed of asynchronous and real-time streaming services and push notifications, a particular form of big data where the data has positive velocity. This article has shown how to expose asynchronous data streams as push-based collections of type IObservable (in contrast to pull-based collections of type IEnumerable) and how to query asynchronous data streams using the fluent API operators provided by the Rx library. This popular library is available for .NET and JavaScript (including bindings for prevalent frameworks such as jQuery and Node) and also ships in the ROM of Windows Phone. F#'s first-class events are based on Rx, and alternative implementations for other languages such as Dart7 or Haskell6 are created by the community. What do you think of the Rx approach to asynchronous computation? New tutorial blog on category theory for programmersI've started a new blog in which I'm attempting to explain category theory concepts to programmers, using JavaScript as the programming language---yes, I'm using a dynamically-typed imperative language for teaching category theory. Come join the discussion at http://jscategory.wordpress.com. Quantitative comparison of unit testing vs. static typing?Has anyone seen an objective comparison, e.g., quantitative analysis, of whether unit testing will find the bugs an ML-ish type system will reveal? There are additional benefits to both approaches, and many claims and anecdotal experiences about these things, but I'm wondering if anyone has seen anything more objective? For example, the DiamondbackRuby etc. guys might have something like a true positive and false positive rate on checking codes that were only unit tested. Edit: Ask and ye shall receive (in a tiny part): a study of the bugs found by translating some unit tested Python apps into Haskell. Escaping the Maze of Twisty ClassesHere* is a a paper that was accepted for publication at Onward! 2012 related to the crazy PL idea that I posted about a few months ago and a follow up of my last Onward! paper. Abstract:
* Hopefully skydrive behaves better than last time. Learn python to implement a complicated static code analyzerI will have to implement a complicated static code analyzer. I have been using SOOT. It is not hard but but it seems time-consuming to get acuqinted with their large amount of API. I believe a easier way is to use Python, But I really do not want to start from "Helloworld. " Would you PL guys who happen to know Python tell me where should I start to learn Python for this usage? Thanks. Brief Question on extension to ANF IRMy goal in extending an ANF-style IR has three related parts.
My premise is that this extended IR is trivial to produce during normal ANF conversion and that the extended IR is more compact and easier/faster to further analyze. The following three code snippets illustrate the "test/branch" extensions I'm exploring. My questions are (1) have others made similar extensions to ANF-style IR's in the past and (2) or am I just on the wrong track. Many thanks in advance! - Scott Retrospective Thoughts on BitCI believe Dr. Shapiro posts here sometimes, and I'm sure plenty of people here have already seen and read the post, but for those of you who wouldn't otherwise see it: Retrospective Thoughts on BitC answers: What Ever Happened To BitC?
How to Generate (Hard) Real-Time Code from Declarative Programming Languages?Hello all! First let me emphasize I'm a bit of a noob with language design and implementation, so feel free to dumb things down in response (in fact I would prefer it!) I'm interested in the possibility of generating code for hard-real-time software from a declarative language. Two examples I've seen are Lustre (for reliability software) and Erlang (not sure how this could work actually since it's a general purpose language...) But when I dig down to find out exactly HOW we know that these systems generate real-time code, I come up empty handed. Where are the white papers / books / etc on how to determine a) that real-time code can be generated from a particular semantics in the first place, and b) how is the code actually generated in practice? Alternatively, how might we answer the same questions for soft-real-time code generation? Finally, can we answer this question for VMs as well, such as with .NET CIL code? Hopefully this area of research isn't still a black art :) Disruptive PLT RevisitedIn 2002, Todd Proebsting gave a talk about disruptive programming language technologies. I see that we talked about this 6 years ago and even earlier in 2002 but it seems like the right time that we talk about this again. What has been disruptive in the past 6 years and what will be disruptive in the next 10? We can talk either about technologies or the results themselves. I'll seed this topic with some initial posts. |
Browse archives
Active forum topics |
Recent comments
9 weeks 6 days ago
10 weeks 1 min ago
10 weeks 13 hours ago
10 weeks 1 day ago
10 weeks 4 days ago
10 weeks 4 days ago
10 weeks 5 days ago
10 weeks 5 days ago
10 weeks 5 days ago
10 weeks 5 days ago