#!/usr/bin/perl -w # kant.cgi # Script by Matt Webb - http://interconnected.org/home/ # Online at http://interconnected.org/cgi-bin/kant.cgi # New location: http://interconnected.org/home/more/2000/08/kant/ - 20050413 # Original author of the Kant module and application from which the data # and syntax was ported: Mark Pilgrim - http://www.diveintomark.org/ use strict; use CGI; srand; my $module = { 'main-clause' => [ '&Ns<[ (and &certainty-clause this is true)|, &throwaway-clause,]> &Vst [&Ns|&Np]', '&Ns &Vst<, [&throwaway-clause|&intro-clause],> [&Ns|&Np]', '&Ns<, [&throwaway-clause|&intro-clause],> &Vsi', '&Np<[ (and &certainty-clause this is the case)|, &intro-clause,]> &Vpt [&Ns|&Np]', '&Np &Vpt<, [&throwaway-clause|&intro-clause],> [&Ns|&Np]', '&Np<, [&throwaway-clause|&intro-clause],> &Vpi', ], 'sentence' => [ '#<&intro-clause, ><&certainty-clause >&main-clause<, &proof>.', '#<&proof, ><&certainty-clause, &throwaway-clause, >&main-clause<, &conjunction &main-clause>.', '#<&proof, ><&certainty-clause >&main-clause<; &intro-clause, &main-clause>.', ], 'Ns' => [ 'the transcendental aesthetic', '&logic-type logic', 'the Ideal of &reason-type reason', 'the architectonic of &reason-type reason', 'the discipline of &reason-type reason', 'the <[pure|practical] >employment of [&Ns|&Np]', 'the Ideal', 'the manifold', 'the Transcendental Deduction', 'our experience', 'philosophy', 'metaphysics', 'the thing in itself', 'our understanding', 'our <&knowledge-type >knowledge', '<&reason-type >reason', 'space', 'time', 'the transcendental unity of apperception', 'necessity', 'the never-ending regress in the series of empirical conditions', ], 'Np' => [ 'the Antinomies', 'the paralogisms< of &reason-type reason>', 'the Categories', 'our sense perceptions', 'our faculties', 'our <&judgement-type >judgements', 'the objects in space and time', 'the things in themselves', 'natural causes', 'our ideas', 'our <&knowledge-type >concepts', 'the <&object-type >objects in space and time', 'the noumena', 'the phenomena', ], 'quantity' => [ 'all of', 'some of', 'none of', ], 'judgement-type'=>[ 'hypothetical', 'problematic', 'analytic', 'synthetic', 'ampliative', 'deductive', 'inductive', 'speculative', 'disjunctive', '&knowledge-type', ], 'knowledge-type'=>[ 'a priori', 'a posteriori', ], 'reason-type' => [ 'pure', 'practical', 'human', 'natural', ], 'object-type' => [ 'intelligible', 'transcendental', 'empirical', ], 'philosopher' => [ 'Aristotle', 'Hume', 'Aristotle', ], 'conjunction' => [ 'and', 'but', 'yet', ], 'certainty-clause' =>[ 'it must not be supposed that', 'there can be no doubt that', 'we can deduce that', 'it is not at all certain that', '&philosopher tells us that', 'it remains a mystery why', 'I assert<, &intro-clause,> that', 'to avoid all misapprehension, it is necessary to explain that', 'let us suppose that', 'it is obvious that', 'the reader should be careful to observe that', 'what we have alone been able to show is that', ], 'intro-clause' => [ 'what we have alone been able to show is that', 'in view of these considerations', 'thus', 'by means of &Ns', 'in the study of &Ns', 'therefore', 'with the sole exception of &Ns', 'certainly', 'so', 'as I have shown elsewhere', 'on the other hand', 'for these reasons', 'in the case of &Ns', 'however', 'in natural theology', 'consequently', ], 'throwaway-clause'=>[ 'in so far as this expounds the &rule-type rules of [&Ns|&Np]', 'when thus treated as [&Ns|&Np]', 'in other words', 'in the full sense of these terms', 'insomuch as &Ns relies on &Np', 'indeed', 'then', 'that is to say', 'even as this relates to &Ns', 'in respect of the intelligible character', 'so regarded', 'for example', 'irrespective of all empirical conditions', 'so far as regards &Ns< and &Np>', 'on the contrary', 'in accordance with the principles of [&Ns|&Np]', 'in reference to ends', 'in particular', 'as far as I know', ], 'throwaway-sentence'=>[ 'But we have fallen short of the necessary interconnection that we have in mind when we speak of [&Ns|&Np].', 'We thus have a pure synthesis of apprehension.', 'And similarly with all the others.', 'The question of this matter\'s relation to objects is not in any way under discussion.', 'This distinction must have some ground in the nature of [&Ns|&Np].', 'The divisions are thus provided; all that is required is to fill them.', 'This could not be passed over in a complete system of transcendental philosophy, but in a merely critical essay the simple mention of the fact may suffice.', 'This is not something we are in a position to establish.', 'This is the sense in which it is to be understood in this work.', 'But this need not worry us.', 'Let us apply this to &Ns.', 'But to this matter no answer is possible.', 'But the proof of this is a task from which we can here be absolved.', 'But at present we shall turn our attention to &Ns.', 'This may become clear with an example.', 'I feel I have sufficiently shown this to be true.', 'This is what chiefly concerns us.', 'On this matter, what has been said already should in any case suffice by itself.', 'In my present remarks I am referring to &Ns only in so far as it is founded on &judgement-type principles.', 'But this is to be dismissed as random groping.', ], 'proof' => [ 'because of our necessary ignorance of the conditions', 'as is shown in the writings of &philosopher', 'as is proven in the ontological manuals', 'as any dedicated reader can clearly see', 'as is evident upon close examination', 'as will easily be shown in the next section', 'since knowledge of &Np is &knowledge-type', 'by virtue of &reason-type reason', 'as we have already seen', 'since &quantity &Np are &judgement-type', 'because of the relation between &Ns and &Np', 'by means of analysis', 'by means of analytic unity', ], 'Vst' => [ 'is what first gives rise to', 'can thereby determine in its totality', 'has lying before it', 'constitutes the whole content for', 'may not contradict itself, but it is still possible that it may be in contradiction with', 'would thereby be made to contradict', 'teaches us nothing whatsoever regarding the content of', 'can not take account of', 'has nothing to do with', 'stands in need of', 'is the key to understanding', 'proves the validity of', 'is just as necessary as', 'is the clue to the discovery of', 'is a representation of', 'depends on', 'excludes the possibility of', ], 'Vsi' => [ 'is the mere result of the power of &Ns, a blind but indispensable function of the soul', 'occupies part of the sphere of &Ns concerning the existence of &Np in general', 'is by its very nature contradictory', 'would be falsified', 'abstracts from all content of <&knowledge-type >knowledge', 'is a body of demonstrated doctrine, and &quantity it must be known &knowledge-type', 'can never furnish a true and demonstrated science, because, like &Ns, it &Vst &judgement-type principles', 'can be treated like [&Ns|&Np]', 'should only be used as a canon for [&Ns|&Np]', 'exists in [&Ns|&Np]', ], 'Vpt' => [ 'are what first give rise to', 'have lying before them', 'constitute the whole content for', 'would thereby be made to contradict', 'can not take account of', 'have nothing to do with', 'stand in need to', 'are the clue to the discovery of', 'prove the validity of', 'are just as necessary as', 'are a representation of', 'exclude the possibility of', ], 'Vpi' => [ 'are the mere results of the power of &Ns, a blind but indispensable function of the soul', 'occupy part of the sphere of &Ns concerning the existence of &Np in general', 'are by their very nature contradictory', 'would be falsified', 'abstract from all content of <&knowledge-type >knowledge', 'constitute a body of demonstrated doctrine, and &quantity this body must be known &knowledge-type', 'can never, as a whole, furnish a true and demonstrated science, because, like &Ns, they &Vpt &judgement-type principles', 'can be treated like [&Ns|&Np]', 'should only be used as a canon for [&Ns|&Np]', 'exist in [&Ns|&Np]', ], 'paragraph' => [ ' &sentence &sentence <&sentence >&sentence <&sentence ><&question ><&sentence ><&sentence >&sentence <&throwaway-sentence>\r', ' &sentence &sentence <&sentence >&sentence <(&sentence) >&sentence &sentence <&throwaway-sentence>\r', ' &sentence &sentence <&sentence >&sentence <&sentence ><&sentence ><&sentence >&sentence\r', ], section => [ '¶graph¶graph¶graph¶graph<¶graph><¶graph><¶graph><¶graph><¶graph><¶graph>', ], 'logic-type' => [ 'general', 'applied', 'pure', 'formal', 'transcendental', ], 'rule-type' => [ 'universal', 'necessary', 'practical', 'contradictory', 'sufficient', ], 'question' => [ 'Whence comes &Ns, the solution of which involves the relation between [&Ns|&Np] and [&Ns|&Np]?', '#<&intro-clause, >is it [true|the case] that &Ns &Vst [&Ns|&Np], or is the real question whether &Np &Vpi?', 'Has it ever been suggested that<, &proof,> &certainty-clause there is [no relation|a causal connection] between [&Ns|&Np] and [&Ns|&Np]?', 'In which of our cognitive faculties are [&Ns|&Np] and [&Ns|&Np] connected together?', '#&conjunction can I entertain &Ns in thought, or does it present itself to me?', ], }; my $string = '§ion'; while ($string =~ s/&([\w\-]+)/reference($1)/e ) { # just carry on... } $string = &enable_meta_r( $string ); $string = &capitalise( $string ); &print_html( $string ); sub reference { my $reference = shift; my $instantiation = &expand( &pick_from_list( @{ $module->{ $reference } } ) ); return $instantiation; } sub enable_meta_r { my $string = shift; $string =~ s/(\\r)/\r/g; return $string; } sub capitalise { my $string = shift; $string =~ s/(\W\s*)#(\w)/$1\u$2/g; $string =~ tr/#//; return $string; } sub pick_from_list { # picks randomly from @_ and returns that item my @options = @_; return $options[ rand @options ]; } sub probably_pick { # returns the string or not, with a certain probability my $string = shift; my $probability = shift; if (rand >= $probability) { return $string; } else { return ""; } } my $count = 0; sub expand { my $string = shift; # print "-$string\n"; # expands things like <>, [], etc and returns the string while ($string =~ m/[<[{]/ ) { $string =~ s/<([^<>]*)>/probably_pick($1, 0.5)/e; $string =~ s/\[([^[\]]*)]/pick_from_list( split '\|', $1 )/e; $string =~ s/{([\d.]+)\|([^{}]*)}/probably_pict( $2, $1 )/e; } # print "+$string\n"; return $string; } sub print_html { my $string = shift; my $query = new CGI; print $query->header(); my $tags = "\r
\r\r"; $string =~ s/\r/$tags/g; $string = "
\r$string\r
"; print<<"html";
Dogs
This is a Perl version of the Mac program Kant Generator Pro originally by Mark Pilgrim (here's Mark's Python version). It generates, um, random, um, Kant (based on the Critique of Pure Reason.). Like generative music, but with philosophy. Perl version is © 2000 Matt Webb.
Bees
The script is released under no particular license and the source can be found here.
Baboons
I can't think of anything, let alone anything funny, to do with random Kantian prose. Let me know (homepage|email) if you can, but I seriously doubt you'll be able to.
Fighting cocks
I wouldn't, if I were you -- they look dangerous. Read the random Kant instead.
matt 24aug2000
html 1; }