Seite 1 von 1
Thesis programming
Verfasst: Mittwoch 5. April 2006, 15:53
von CM
Code: Alles auswählen
import thesis
THESIS_TOPIC = thesis.get_topic()
years_in_gradschool = 0
while(thesis.funding):
data = thesis.run_experiment(THESIS_TOPIC)
GOOD_ENOUGH = thesis.query(thesis.advisor)
if data > GOOD_ENOUGH:
thesis.graduate()
break
else:
THESIS_TOPIC = thesis.get_new_topic()
years_in_gradschool += 1
Habe ich mal unter phdcomics.com gefunden und für Python adaptiert. Bin gerade wieder drüber gestolpert.
SCNR
Christian
Verfasst: Mittwoch 5. April 2006, 22:30
von BlackJack
Die ``while`` Schleife gefiel mir nicht so gut. Hier ist eine Iterator-Lösung.
Code: Alles auswählen
import thesis
from itertools import ifilter
topics = ifilter(thesis.funding, thesis.iter_topics())
for years_in_gradschool, thesis_topic in enumerate(topics):
data = thesis.run_experiment(thesis_topic)
good_enough = thesis.advisor.query(data)
if data >= good_enough:
thesis.graduate()
break
Verfasst: Donnerstag 6. April 2006, 08:45
von CM
Ich wußte, daß der Stil zu Widerspruch reizen würde, aber es ist eine "1:1 Übersetzung von Pseudo-C", wenn ich das mal so sagen darf. Wie auch immer, Iteratoren mögen zwar besser sein, aber ich möchte Dich auf einen schweren Bug im Programm hinweisen. Es muß so lauten:
Code: Alles auswählen
import thesis
from itertools import ifilter
topics = ifilter(thesis.funding, thesis.iter_topics())
for years_in_gradschool, thesis_topic in enumerate(topics):
data = thesis.run_experiment(thesis_topic)
good_enough = thesis.query(thesis.advisor)
if data >= good_enough:
thesis.graduate()
break
Beachte bitte, daß die Bestimmung der Variable good_enough unabhängig von der Datenlage ist, so daß der Vergleich data >= good_enough de facto ebenfalls unabhängig von der Datenlagen ist. Der Vergleich ist notwendig, um die Öffentlichkeit nicht allzusehr zu stören. Die Bestimmung von good_enough auf diese Weise ist die Anpassung des Programms an die Realität.
Gruß,
Christian
PS ... der froh ist einen netten Kerl zum Chef zu haben.
Verfasst: Donnerstag 6. April 2006, 09:34
von henning
Hat jemand mal einen Link der erklärt was dieses thesis-programming überhaupt ist?
Verfasst: Donnerstag 6. April 2006, 09:38
von modelnine
Thesis (englisch): eine Abhandlung über ein Thema, wie sie in wissenschaftlichen Kreisen geschrieben wird.
Thesis-Programming (englisch): scherzhafte Beschreibung des Vorgangs eine Abhandlung zu schreiben, im Verweis auf eine algorithmische Abhandlung des Vorgangs.
Humor (deutsch): durchgefallen.
Verfasst: Freitag 7. April 2006, 08:55
von CM
modelnine hat geschrieben:
Humor (deutsch): durchgefallen.
Na ja, ist wohl etwas sehr speziell. Ich jedenfalls fand es lustig, gelobe aber Besserung und werde solcherlei Dinge nicht häufig posten.
Gruß,
Christian