At this week's Computer Science Table (at noon on Friday, December 6, in Rosenfield 224A), we will discuss issues, other than efficiency, that programmers should take into account when implementing algorithms. The reading is:
Computer Science Table is an open weekly meeting of Grinnell College community members (students, faculty, staff, etc.) interested in discussing topics related to computing and computer science.
On Wednesday, November 20, in Noyce 3821, Professor Aaron Stump of the University of Iowa will give a lunchtime talk on the use of program verification tools in software development:
Usually programmers try to ensure code quality by testing. In this talk, I will describe an emerging new approach to creating high-quality software, using theorem-proving tools. These tools allow you to write a program and then prove mathematically that the program satisfies some desired specification. Formalized mathematics is not easy, but once you have completed your proof, you are guaranteed beyond a shadow of a doubt that your code is bug-free, at least with respect to the specification you have formulated. I will demonstrate verified programming — and maybe a little computer-formalized mathematics — using the Agda theorem prover, and speculate about how these new technologies could impact the future.
Professor Stump's talk, “Writing bug-free code using theorem provers,” will begin at noon. Pizza and soda will be served.
On Thursday, February 2, John Stone will discuss the development of software in modern Scheme:
The Revised6 report on the algorithmic language Scheme introduces several new constructions into the language that enable programmers to impose a modular structure on their code, simplifying large-scale program development and promoting even greater flexibility in adapting the language to particular applications. This talk illustrates some of the possibilities, drawing on two examples: (0) a reimplementation in R6RS of the Smark programmable filter, and (1) an extensive algorithm library, created for the textbook Algorithms for functional programming.
Refreshments will be served at 4:15 p.m. in the Computer Science Commons (Noyce 3817). The talk, "Software development using R6RS libraries," will follow at 4:30 p.m. in Noyce 3821. Everyone is welcome to attend!
At 4:15 on Thursday, December 9, in Noyce 3821, students from CSC 325 (
Databases and Web application design) will present their class project, GCal:
GCal is anopencalendar: Anyone on campus can view, add, and comment on events. In addition to demonstrating GCal, the students will discuss the technologies that are used in the calendar, the processes and problems involved in the project, and recommendations for others collaboratively building medium-scale Web applications.
Refreshments will be served at 4:15 p.m. in the Computer Science Commons (Noyce 3817). The talk,
GCal: a community calendar for the rest of us, will follow at 4:30 p.m. in Noyce 3821. Everyone is welcome to attend!
At 4:15 on Thursday, September 30, in Noyce 3821, Professor Henry Walker will give a talk about software that he and his students have developed for the management of proposals for presenting research papers at conferences. In 1999, Mr. Walker was asked to develop the first iteration of a Web-based paper submissions and reviewing system. The current system represents the twelfth version of this software, and each version has implemented refinements, new capabilities, and adjustments. Reflections on the evolution of this system yield numerous lessons for software and Web-based systems. This talk discusses 10 (hexadecimal) observations that can help in the design of future software applications.
Refreshments will be served at 4:15 p.m. in the Computer Science
Commons (Noyce 3817). The talk,
Software for the submission and review of conference proposals: 10 (hexadecimal) lessons, will follow at
4:30 p.m. in Noyce 3821. Everyone is welcome to attend!
At noon on Friday, April 30, in Noyce 3821, Myra Cohen of the Department of Computer Science and Engineering at the University of Nebraska at Lincoln will speak on the role of combinatorics in the design of test suites for software:
Software systems today are magnitudes of order larger and more complex than their recent ancestors. Instead of building single systems, we now build families of systems. User interfaces are graphical and programs event-driven. The software/hardware interfaces we once kept distinct have become blurred. Developing reliable and affordable software presents an increasing number of challenges. As glitches in these large-scale systems continue to make newspaper headlines, developing reliable and affordable software presents an increasing number of challenges.
In this talk we examine advances in software testing that focus on the difficulty caused by one simple but ubiquitous concept -- system configurability. Configurable systems include software such as web browsers and office applications, families of products customized by businesses for different market segments, and systems that dynamically reconfigure themselves on the fly. We show how theory from combinatorial mathematics, combined with heuristic search algorithms, can help us to test these systems more efficiently and effectively.
Pizza and soda will be served shortly before noon. Professor Cohen's talk,
Combinatorics, heuristic search, and software testing: Theory meets practice, will begin promptly thereafter. Everyone is welcome to
On Thursday, September 17, Dennis Vaccaro 2011 will present a talk in the
Department of Computer Science's
Thursday Extras series, entitled
Graphical user interface development using the Qt toolkit.
Refreshments will be served at 4:15 p.m. in the Computer Science Commons (Noyce 3817). The talk will follow at 4:30 p.m. in Noyce 3821.