View Full Version : The fourth contest: choose your topic, one day only

07-29-2002, 11:39 AM
tomorrow the contest starts, whatever topic is chosen. i'll put up another thread explaining details

dual-catfish: i know you asked to put up these polls, but these things need to be done immediately (which was sunday).

07-29-2002, 04:07 PM
will the contest be only one day long or the poll be only one day long?

07-29-2002, 04:27 PM
I'm assuming it's a 1-day poll. Although a lot of the programs on that list can be done in one day. :cool:

07-29-2002, 05:50 PM
I certainly hope that those who are voting for the LISP iterpreter know what is involved; if you do not know what is involved, then I can fairly well guaruntee that you will not be able to complete it.

Further, about the alarm clock: in the case that such an application is complex enough to be useful (functions in a GUI environment, plays sound through speakers, can run hidden or on system tray), it will be necessarily be tied to a particular platform. Writing multiple versions of the source is not exactly an interesting exercise in cross-platform compatability. Yet if not this, clearly the person who happens to know of or have access to (finances are the limiting factor) the best GUI/sound cross-platform library will be the winner.

Just some things to consider for those of you who are voting without full knowledge of what will be involved.

I would like to insert a plug for search/place with the qualification be that scroing will be based upon who best replicates the behavior of grep without using non-language-standard libraries.

07-29-2002, 06:37 PM
Unregistered, I do understand your concerns on people not understanding what they're getting themselves into, but I thought I'd best reply with a couple of comments:

>alarm clock - gui/OS specific etc.
(this is only my opinion:) I believe that the competition should based on generic (standard) coding, not OS specific stuff. It's easy enough to write a clock program to run in a command line interface. Sure, it won't look pretty, but that's not the point, it's how you write the code that counts. You can gain points by adding features/functionality, like storing alarms in a config file so they can be reused etc.

It was not my intention that people write full GUI apps, it was more to get people thinking creatively on a smaller scale.

07-29-2002, 08:20 PM
Originally posted by moi
will the contest be only one day long or the poll be only one day long?
one day poll
the contest is about a week long. it will end monday evening, midnight, next week. (EST)

most things here aren't expected to be done with a gui. a simple command line interface will do (unless it's meant to be graphical, like the drawing program. that kind of thing will be discussed if people vote for it)

i've written a tutorial on lisp for the uninformed.
it's a fairly simple scripting language. here's an example:

(defun func1 (x)
(- x 4)
(+ x 3) )
(func1 (- (+ 3 5) (/ 3 7)))

3 + 5 = 8, 3 / 7 = 3/7
8 - 3/7 = 7 4/7
func1 is a user-defined function which adds 3 to whatever x is. the value returned is 10 4/7 (or whatever that is in decimal).
the last statement in a user-defined function is the value that is returned. func1 ignores (- x 4) because it doesn't really do anything.

lisp is named lisp because of its list variables and built in lisp manipulation functions. because implementing that would take too much time, list manipulation is not required.

here is what's required in the lisp interpreter (if voted for):

it needs to work with nested lisp expressions, where a single expression is bounded by two parentheses. each expression returns some value
you need to create some predefined functions like +, -, *, /, etc...
you know, the simple stuff.
each program needs to be able to define functions like i showed above (using the defun statement). hint: unlike C functions, which does type-checking and other complicated stuff, the defun command should be more like the C #define command.
so, in other words:

(defun func1 (x) (+ x 3))
(func1 7)

this should become:

(+ 7 3)

which is easy to evaluate.
each program should check the number of parentheses to help make sure there aren't any typos. this could be as simple as counting the number of '(', then counting the number of ')', and seeing if the numbers match

one last thing, not LISP-related:
if the search/replace program is voted for, you cannot use the string classes with it. that would just be too easy :D

07-30-2002, 03:16 AM
How the hell is the Alarm Clock winning the vote?? Is this so its easy to enter?

07-30-2002, 10:22 AM
Well since 6 people voted for the alarm clock, there better be at least 6 people signed up for the contest. I'll be ........ed if there wasn't. :mad: