TweetFollow Us on Twitter

Apr 96 Dialog Box
Volume Number:12
Issue Number:4
Column Tag:Dialog Box

Dialog Box

By Matt Neuburg, letters@mactech.com

Pascal Forever

The following exchange is reprinted with permission from TidBITS #305 (27-Nov-95 - email info@tidbits.com for more information). In that issue, Adam Engst interviews Peter N Lewis, author of Anarchie, FTPd, and other well-known shareware tools. We thought our readers might be interested in this excerpt, where Peter speaks about languages:

Adam: You and Quinn are known for being major Pascal supporters in a development world that has largely gone over to C and C++. You even had anti-C t-shirts at the last few World-Wide Developer’s Conferences. Without getting too technical, why do you continue to stick with Pascal, and does that cause problems at times?

Peter: The normal C argument goes like this: “Everyone else is using C, so therefore it must be good.” Every Mac user should recognize that statement in a slightly different form, “Everyone else is using PCs, so therefore they must be good.”

Basically, I continue to use Pascal because I’m more productive in it. I consider using Pascal to be a strategic advantage, doubly so when compared to C++. I’ve been reading a C++ book recently (know thine enemy), and every time I turn the page I see new ways to make tiny errors that are catastrophic and impossible to debug. I’m amazed that anyone can produce a working C++ program.

However, programming in Pascal does cause occasional problems. The Apple interfaces tend to be quite broken. I wanted to try out QuickDraw GX, and it took a year of new versions before they finally got one that I could hack to work with Pascal. By then I’d given up on GX. In some ways this is actually a good thing for me: I have way too many projects and not enough time to do them all, so not being able to work with GX or OpenDoc is helpful for limiting my options.

Please Don’t Kill The Umpire, He Is Doing His Best

There has been, of late, mild criticism of the premises of the programmer’s challenge, and now (Don Winston in November’s Dialog Box) of the style.

I am only an amateur on the Mac, yet I find your magazine stimulating, thought-provoking and - hell, that’s enough praise for the moment. My views cannot in this case reflect those of the majority of your readers, but may correspond to those of a significant minority.

The demands have been: (1) to play down optimisation, arguing that hardware will catch up (the Microsoft approach), and now (2) the rejection of the use of “goto” in a winning answer; plus (3) that the programmer’s challenge become more practical or open itself up to more languages.

That MacTech published these comments could mean two things (and most probably more): (1) it is an open forum for constructive criticism, including criticism of itself; (2) that it is preparing the minds of readers for changes in certain items.

And it is this second possibility that worries me the most.

The PC rules demand “correctness, speed, size and elegance (in that order of importance)”. While the first is obvious, the others are essential to the spirit of your magazine. Speed and size implies that you are looking at real joes working in front of real machines - we can’t all just run out and buy PowerPC dream machines. Each time I have to launch W*rd 6 on our 660AV, I wince, scream and plead - I don’t want all software evolving into this.

Elegance is subjective; it is in part what Don Winston is protesting about. He complains that “old notions of ‘efficiency’ are passé”. No, the Programmer’s Challenge is a mindfest that makes one jump up and shout, “Yes, of course, it’s so obvious now!” It is one of those nuggets that I, as an amateur who would never consider entering the challenge, cherish. And to change these subtle criteria would diminish your magazine as a whole.

Increasing the number of language platforms for the challenge has already been argued as impractical by the column’s flame-keeper in order for him to respect deadlines. Fine. Although I would be interested in the possibility to occasionally study just the winning algorithms, perhaps in pseudo code, rather than their implementations in a specific language, the crux of the challenge lies in the participants feeling/knowing the limits of the language, and then finding the best solution.

That particular readers are not happy with specific subjects chosen for the challenge will always exist, but if you try to render it more “practical” for one group, another will protest that it is still further from their sphere of interest, and when one looks back over a year’s challenges it is a mighty varied lot: a little for everyone, and a lot for most.

Keep up the good work.

jonathan munn
format@dialup.francenet.fr

Bob Boonstra Replies...

Jonathan,

Rest assured that we have no intention of changing the primary focus of the Programmer’s Challenge from efficiency to anything else.

The letter from Don Winston makes the valid point that improvements in technology have allowed software professionals to give other factors (usability, portability, encapsulation, reliability, etc.) greater consideration, at the expense of efficiency. But, as you point out, one need only look at the performance of some popular office automation applications to see that vendors are still able to generate sluggish code, despite the improvements in hardware. In fact, I believe that the demands on software will always exceed what the technology can support. The Challenge is intended to address techniques for those time-critical functions. It doesn’t pretend to be a balanced approach to teaching every aspect of software development. I think efficiency is still relevant - less universally so, but still relevant.

It is gratifying to hear that you find most of the subjects chosen for the Challenge to be interesting. We strive to find a variety of problems that are interesting to readers, interesting to participants, sometimes useful, solvable in the limited time available, and scoreable in even less time. Suggestions from readers are always welcome.

Thank you for your comments, and remember that anyone - including a self-described amateur - is invited to enter the Programmer’s Challenge.

Bob Boonstra
bob_boonstra@mactech.com

Hooray for the Umpire, the Players, and Everyone

I just want to commend Bob on such an interesting challenge. [But which one is he talking about? Probably January’s “Sliding Tiles”, we figure. - man] This is one of the few that I didn’t even know how to solve, let alone how to solve it efficiently. Hats off to anyone who breaks the brute-force barrier and applies some finesse to this one.

The test code was excellent and invaluable.

While I’m at it I’d also like to congratulate Eric Lengyel for such a clean solution to the Enclosing Bounds problem. I started working on it myself, but all of the various conditions (odd boundaries, different pixel sizes) made a simple-sounding problem too complex for the time I had. Eric, however, cut through the complexity and delivered some excellent code.

Xan Gregg

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

calibre 5.0.1 - Complete e-book library...
Calibre is a complete e-book library manager. Organize your collection, convert your books to multiple formats, and sync with all of your devices. Let Calibre be your multi-tasking digital librarian... Read more
Compressor 4.4.8 - Adds power and flexib...
Compressor adds power and flexibility to Final Cut Pro X export. Customize output settings, work faster with distributed encoding, and tap into a comprehensive set of delivery features. Features:... Read more
Adobe Acrobat Reader 20.012.20048 - View...
Adobe Acrobat Reader allows users to view PDF documents. You may not know what a PDF file is, but you've probably come across one at some point. PDF files are used by companies and even the IRS to... Read more
Adobe Acrobat DC 20.012.20048 - Powerful...
Acrobat DC is available only as a part of Adobe Creative Cloud, and can only be installed and/or updated through Adobe's Creative Cloud app. Adobe Acrobat DC with Adobe Document Cloud services is... Read more
Box Sync 4.0.8009 - Online synchronizati...
Box Sync gives you a hard-drive in the Cloud for online storage. Note: You must first sign up to use Box. What if the files you need are on your laptop -- but you're on the road with your iPhone? No... Read more
Daylite 2020.36.1 - Dynamic business org...
Daylite helps businesses organize themselves with tools such as shared calendars, contacts, tasks, projects, notes, and more. Enable easy collaboration with features such as task and project... Read more
Catalina Cache Cleaner 15.0.6 - Clear ca...
Catalina Cache Cleaner is an award-winning general-purpose tool for macOS X. CCC makes system maintenance simple with an easy point-and-click interface to many macOS X functions. Novice and expert... Read more
Final Cut Pro X 10.4.10 - Professional v...
Final Cut Pro X is a professional video editing solution. Completely redesigned from the ground up, Final Cut Pro adds extraordinary speed, quality, and flexibility to every part of the post-... Read more
Civilization VI 1.3.4 - Next iteration o...
Civilization® VI is the award-winning experience. Expand your empire across the map, advance your culture, and compete against history’s greatest leaders to build a civilization that will stand the... Read more
iTubeDownloader 6.5.23 - Easily download...
iTubeDownloader is a powerful-yet-simple YouTube downloader for the masses. Because it contains a proprietary browser, you can browse YouTube like you normally would. When you see something you want... Read more

Latest Forum Discussions

See All

Undercrawl is a procedurally generated r...
Undercrawl is a roguelike dungeon crawler from indie developer Monster Shop Games. It's a genre that's popular in gaming in general but features even more frequently on mobile devices since the shorter, 'run' style of playthrough suits playing in... | Read more »
Distract Yourself With These Great Mobil...
There’s a lot going on right now, and I don’t really feel like trying to write some kind of pithy intro for it. All I’ll say is lots of people have been coming together and helping each other in small ways, and I’m choosing to focus on that as I... | Read more »
BTS Universe Story, the social game that...
Netmarble's highly anticipated social game, BTS Universe Story, is available now for iOS and Android. It's the second collaboration between the hugely successful mobile developer and the K-pop superstars following BTS World. [Read more] | Read more »
The 5 Best Mobile Games Like Hades
Supergiant Games finally released Hades upon the world this week, and we’re loving it. The game plays to all of the studio’s strengths while still retaining a strong sense of identity. It also just so happens to play rather well using the Steam... | Read more »
A Year of Apple Arcade: The Good, The Ba...
Apple Arcade has persisted for just over a year at this point, and although that means I've been busy ranking and re-ranking every game on the service for just about as long, I haven't done much reflection on the service as a whole. [Read more] | Read more »
Animal Restaurant anniversary event team...
Animal idle simulator Animal Restaurant is celebrating its first-year anniversary with a crossover event with popular YouTube series Aaron’s Animals. [Read more] | Read more »
Raziel: Dungeon Arena is a hack 'n...
Raziel: Dungeon Arena is available now on mobile and will appeal to fans of both comic books and old school dungeon crawlers. Not only will you hack 'n' slash your way through mobs of enemies but there's also fully-narrated animated comic to enjoy... | Read more »
Steam Link Spotlight - Hades
Steam Link Spotlight is a feature where we look at PC games that play exceptionally well using the Steam Link app. Our last entry was on Disco Elysium. Read about how it plays using Steam Link over here. | Read more »
Microsoft has acquired ZeniMax Media and...
In the latest of a series of blockbuster moves, Microsoft has now acquired Zenimax Media and its subsidiary, Bethesda Softworks, for $7.5 billion. [Read more] | Read more »
Infinity Mechs is an upcoming idle game...
Indie developer SkullStar studio has announced an upcoming idle mech game called Infinity Mechs. It draws inspiration from the mobile game Iron Saga and has been officially licensed by Game Duchy. It's set to launch for both iOS and Android on... | Read more »

Price Scanner via MacPrices.net

Clearance 8-core iMac Pro available for $3819...
Apple has Certified Refurbished, clearance, 27″ 3.2GHz 8-Core iMac Pros available $3819 including free shipping. Their price is $1180 off the original MSRP of new models. A standard Apple one-year... Read more
How The Upcoming Mac Transition To Apple Sili...
FEATURE: 09.25.20 – Apple’s plan to transition all of its desktop and notebook computers away from Intel processors to Apple silicon, chips designed by the company itself, has been eclipsed by the... Read more
New low price! Apple Watch SE for only $269
B&H Photo is reporting limited stock of Apple’s new Apple Watch SE GPS models for $10 off MSRP and including free shipping. Their $269 price for the 40mm model is the lowest price we’ve seen so... Read more
Lowest price anywhere: New 13″ 2.0GHz MacBook...
Amazon has new 2020 13″ 2.0GHz/512GB MacBook Pros with 10th generation Intel processors back in stock on sale today for $200 off Apple’s MSRP. Shipping is free. Be sure to purchase the MacBook Pro... Read more
Apple Pro Display XDR with Nano-Texture Glass...
Amazon Apple Premier Partner GatorTec has the Apple Pro Display XDR with Nano-Texture Glass on sale for $5599 shipped, on Amazon. Their price is $400 off Apple’s MSRP, and it’s the cheapest price... Read more
Get a 2019 13″ MacBook Air for only $779 toda...
Apple has clearance, Certified Refurbished, 2019 13″ 1.6GHz/128GB MacBook Airs available again for $779. Each MacBook features a new outer case, comes with a standard Apple one-year warranty, and is... Read more
2020 11″ iPad Pros on sale today for $50-$75...
Apple reseller Expercom has new 2020 11″ Apple iPad Pros on sale for $50-$75 off MSRP, with prices starting at $749. These are the same iPad Pros sold by Apple in their retail and online stores: – 11... Read more
Apple has restocked 2020 13″ MacBook Airs sta...
Apple has restocked Certified Refurbished 2020 13″ MacBook Airs starting at only $849 and up to $200 off the cost of new Airs. Each MacBook features a new outer case, comes with a standard Apple one-... Read more
Apple’s new 8th generation 10.2″ iPads are on...
Amazon is discounting new 2020 8th generation 10.2″ Apple iPads by up to $35 off MSRP with prices starting at only $299. Shipping is free. These are the same iPads sold by Apple in their retail and... Read more
Today on Woot: Apple refurbished 16″ MacBook...
Amazon-owned Woot has Apple refurbished 16″ MacBook Pros available today for up to $605 off the cost of new models. Shipping is free for Prime members: – 16″ 6-Core MacBook Pros: $1874.99 $525 off... Read more

Jobs Board

Freelance *Apple* Technology Journalist - V...
…freelance basis. Valnet Inc. is looking for journalists with strong knowledge of Apple technology for our website MakeUseOf.com MakeUseOf is one of the largest Read more
*Apple* Certified Macintosh Technician - Exc...
Apple Certified Macintosh Technician Summary Title: Apple Certified Macintosh Technician ID:350 Department:All Location:Bethesda, MD Description Apple Read more
Security Officer ($23.00/Hourly) - *Apple*...
**Security Officer \($23\.00/Hourly\) \- Apple Store** **Description** About NMS Built on a culture of safety and integrity, NMSdelivers award\-winning, integrated Read more
Security Officer ($23.00/Hourly) - *Apple*...
**Security Officer \($23\.00/Hourly\) \- Apple Store** **Description** About NMS Built on a culture of safety and integrity, NMSdelivers award\-winning, integrated Read more
*Apple* Certified Macintosh Technician - Exc...
Apple Certified Macintosh Technician Summary Title: Apple Certified Macintosh Technician ID:350 Department:All Location:Falls Church, VA Description Apple Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.