On 07/21/2017 12:49 PM, Matthias Felleisen wrote:
On Jul 21, 2017, at 1:56 AM, Sorawee Porncharoenwase
<sorawee_porncharoenw...@brown.edu> wrote:
Sorry for reviving an old thread. As someone who did a lot of programming
competition in the past, I can totally see why IO in Racket is difficult. As
mark.engelberg said, the goal is to solve as many problems as possible. After
the competition is over, it's over. No one is going to care about
maintainability or good coding practice if it makes coding slower.
Which is why I think programming competitions are a direct attempt to undermine
computer science and computer-science education.
Having said that, if you want to use Racket for competitions, you and Mark
Engelberg should get together and produce a high-utility IO library. We can
then include it in the distribution.
Just as a counterpoint, I have this kind of ad-hoc
parse-this-produce-that problem all the time in the "real" world. When
the logic of the problem is sufficiently complex I'll swallow the
overhead of doing it in Racket, or I'll use Perl to transform the input
into something I can read in Racket. It would be nice to have an I/O
library that made it easy, but I don't have any specific thoughts about
how to do that.
I don't think computer science education should ignore this kind of
problem though. It's very important to teach students how to solve
problems methodically with a design recipe, how to collaborate with
others, and how to reason about their programs. But it's also important
that programmers (and also or even especially those who don't program
for a living) be comfortable with using the machine to solve or automate
the solution to one-off problems that would otherwise require a lot of
manual fiddling with data. Being fluent with this kind of programing
gives people the confidence they need to solve smaller problems or
explore potential solutions to large problems in an unstructured manner
before tackling the methodical, "right" solution.
--
Brian Mastenbrook
br...@mastenbrook.net
https://brian.mastenbrook.net/
--
You received this message because you are subscribed to the Google Groups "Racket
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.