Return-Path: 
Delivered-To: job-opps-relayxyz-outgoing@cs.swarthmore.edu
Received: by allspice.cs.swarthmore.edu (Postfix, from userid 1442)
	id D0A1EFF31; Wed, 30 Jun 2010 10:34:57 -0400 (EDT)
Delivered-To: job-opps@cs.swarthmore.edu
Date: Wed, 30 Jun 2010 10:34:56 -0400
From: Jeff Knerr 
To: job-opps@cs.swarthmore.edu
Subject: [JOB OPP] music program (java programming)
Message-ID: <20100630143456.GA13636@cs.swarthmore.edu>
References: <20100630143220.GA13580@cs.swarthmore.edu>
MIME-Version: 1.0
Content-Type: text/plain; charset=unknown-8bit
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20100630143220.GA13580@cs.swarthmore.edu>
User-Agent: Mutt/1.5.20 (2009-06-14)
Sender: owner-job-opps@cs.swarthmore.edu
Precedence: bulk
Reply-To: Jeff Knerr 

>> Hi all,
>> 
>> A swat alum is interested in finding a current CS student with Java skills 
>> to help him debug a music program he's been working on.  Contact him 
>> directly if you're interested.
>> 
>> ---------- Forwarded message ----------
>> Date: Fri, 21 May 2010 22:21:32 -0400
>> From: peter clemmer 
>> To: meeden@cs.swarthmore.edu
>> Subject: music program
>> 
>> Hi Lisa
>> This is Pete Clemmer, '09, the guy you kindly met with about the music
>> program.  Here's a little explanation of what's up with my program, with
>> code attached.  If you can find someone(s) who might help me, that would be
>> super awesome.  In any case thank you very much.
>> best :),
>> pete
>> 
>> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> so i'm trying to write a program that generates a list of all chord
>> progressions, ranked by how well they fit with some Bach-style rules of
>> counterpoint, from user input that gives specification about what kind of
>> chord progression is desired.  the idea is to use this to write
>> smoother/more interesting sounding orchestration.
>> 
>> my basic set up is that the program takes in and generates some notes as
>> numbers and then puts them into progressively more
>> combined/ordered/permutated data structures until there's a data structure
>> containing ranked chord progressions.
>> 
>> data structure 1 is made of objects called Struc1bignodes, each containing
>> all the potential notes for each part (clarinet, violin, etc.) for one
>> chord.
>> 
>> my problem is that i want the notes from each Struc1bignode to be rearranged
>> and stored as all possible chords in an object called a versionsofachord, so
>> there'd be a versions of a chord for each Struc1bignode.  for example,
>> 
>> HARMONY 1:
>> Part 1:
>> notes:  33,45,57,69,81,93.
>> Part 2:
>> notes:  35,47,59,71,83,95.
>> Part 3:
>> notes:  24,36,48,60,72,84,96.
>> 
>> 
>> would be stored as
>> 
>> chord 0:
>> 33,35,24,
>> chord 1:
>> 33,35,36,
>> chord 2:
>> 33,35,48,
>> chord 3:
>> 33,35,60,
>> chord 4:
>> 33,35,72,
>> chord 5:
>> 33,35,84,
>> chord 6:
>> 33,35,96,
>> chord 7:
>> 33,47,24,
>> chord 8:
>> 33,47,36,
>> chord 9:
>> 33,47,48,
>> chord 10:
>> 33,47,60,
>> chord 11:
>> 33,47,72,
>> chord 12:
>> 33,47,84,
>> chord 13:
>> 33,47,96,
>> chord 14:
>> 33,59,24,
>> chord 15:
>> 33,59,36,
>> chord 16:
>> 33,59,48,
>> chord 17:
>> 33,59,60,
>> chord 18:
>> 33,59,72,
>> chord 19:
>> 33,59,84,
>> chord 20:
>> 33,59,96,
>> chord 21:
>> 33,71,24,
>> chord 22:
>> 33,71,36,
>> chord 23:
>> 33,71,48,
>> chord 24:
>> 33,71,60,
>> chord 25:
>> 33,71,72,
>> chord 26:
>> 33,71,84,
>> chord 27:
>> 33,71,96,
>> chord 28:
>> 33,83,24,
>> chord 29:
>> 33,83,36,
>> chord 30:
>> 33,83,48,
>> chord 31:
>> 33,83,60,
>> chord 32:
>> 33,83,72,
>> chord 33:
>> 33,83,84,
>> chord 34:
>> 33,83,96,
>> chord 35:
>> 33,95,24,
>> chord 36:
>> 33,95,36,
>> chord 37:
>> 33,95,48,
>> chord 38:
>> 33,95,60,
>> chord 39:
>> 33,95,72,
>> chord 40:
>> 33,95,84,
>> chord 41:
>> 33,95,96,
>> chord 42:
>> 45,35,24,
>> chord 43:
>> 45,35,36,
>> chord 44:
>> 45,35,48,
>> chord 45:
>> 45,35,60,
>> chord 46:
>> 45,35,72,
>> chord 47:
>> 45,35,84,
>> chord 48:
>> 45,35,96,
>> chord 49:
>> 45,47,24,
>> chord 50:
>> 45,47,36,
>> chord 51:
>> 45,47,48,
>> chord 52:
>> 45,47,60,
>> chord 53:
>> 45,47,72,
>> chord 54:
>> 45,47,84,
>> chord 55:
>> 45,47,96,
>> chord 56:
>> 45,59,24,
>> chord 57:
>> 45,59,36,
>> chord 58:
>> 45,59,48,
>> chord 59:
>> 45,59,60,
>> chord 60:
>> 45,59,72,
>> chord 61:
>> 45,59,84,
>> chord 62:
>> 45,59,96,
>> chord 63:
>> 45,71,24,
>> chord 64:
>> 45,71,36,
>> chord 65:
>> 45,71,48,
>> chord 66:
>> 45,71,60,
>> chord 67:
>> 45,71,72,
>> chord 68:
>> 45,71,84,
>> chord 69:
>> 45,71,96,
>> chord 70:
>> 45,83,24,
>> chord 71:
>> 45,83,36,
>> chord 72:
>> 45,83,48,
>> chord 73:
>> 45,83,60,
>> chord 74:
>> 45,83,72,
>> chord 75:
>> 45,83,84,
>> chord 76:
>> 45,83,96,
>> chord 77:
>> 45,95,24,
>> chord 78:
>> 45,95,36,
>> chord 79:
>> 45,95,48,
>> chord 80:
>> 45,95,60,
>> chord 81:
>> 45,95,72,
>> chord 82:
>> 45,95,84,
>> chord 83:
>> 45,95,96,
>> chord 84:
>> 57,35,24,
>> chord 85:
>> 57,35,36,
>> chord 86:
>> 57,35,48,
>> chord 87:
>> 57,35,60,
>> chord 88:
>> 57,35,72,
>> chord 89:
>> 57,35,84,
>> chord 90:
>> 57,35,96,
>> chord 91:
>> 57,47,24,
>> chord 92:
>> 57,47,36,
>> chord 93:
>> 57,47,48,
>> chord 94:
>> 57,47,60,
>> chord 95:
>> 57,47,72,
>> chord 96:
>> 57,47,84,
>> chord 97:
>> 57,47,96,
>> chord 98:
>> 57,59,24,
>> chord 99:
>> 57,59,36,
>> chord 100:
>> 57,59,48,
>> chord 101:
>> 57,59,60,
>> chord 102:
>> 57,59,72,
>> chord 103:
>> 57,59,84,
>> chord 104:
>> 57,59,96,
>> chord 105:
>> 57,71,24,
>> chord 106:
>> 57,71,36,
>> chord 107:
>> 57,71,48,
>> chord 108:
>> 57,71,60,
>> chord 109:
>> 57,71,72,
>> chord 110:
>> 57,71,84,
>> chord 111:
>> 57,71,96,
>> chord 112:
>> 57,83,24,
>> chord 113:
>> 57,83,36,
>> chord 114:
>> 57,83,48,
>> chord 115:
>> 57,83,60,
>> chord 116:
>> 57,83,72,
>> chord 117:
>> 57,83,84,
>> chord 118:
>> 57,83,96,
>> chord 119:
>> 57,95,24,
>> chord 120:
>> 57,95,36,
>> chord 121:
>> 57,95,48,
>> chord 122:
>> 57,95,60,
>> chord 123:
>> 57,95,72,
>> chord 124:
>> 57,95,84,
>> chord 125:
>> 57,95,96,
>> chord 126:
>> 69,35,24,
>> chord 127:
>> 69,35,36,
>> chord 128:
>> 69,35,48,
>> chord 129:
>> 69,35,60,
>> chord 130:
>> 69,35,72,
>> chord 131:
>> 69,35,84,
>> chord 132:
>> 69,35,96,
>> chord 133:
>> 69,47,24,
>> chord 134:
>> 69,47,36,
>> chord 135:
>> 69,47,48,
>> chord 136:
>> 69,47,60,
>> chord 137:
>> 69,47,72,
>> chord 138:
>> 69,47,84,
>> chord 139:
>> 69,47,96,
>> chord 140:
>> 69,59,24,
>> chord 141:
>> 69,59,36,
>> chord 142:
>> 69,59,48,
>> chord 143:
>> 69,59,60,
>> chord 144:
>> 69,59,72,
>> chord 145:
>> 69,59,84,
>> chord 146:
>> 69,59,96,
>> chord 147:
>> 69,71,24,
>> chord 148:
>> 69,71,36,
>> chord 149:
>> 69,71,48,
>> chord 150:
>> 69,71,60,
>> chord 151:
>> 69,71,72,
>> chord 152:
>> 69,71,84,
>> chord 153:
>> 69,71,96,
>> chord 154:
>> 69,83,24,
>> chord 155:
>> 69,83,36,
>> chord 156:
>> 69,83,48,
>> chord 157:
>> 69,83,60,
>> chord 158:
>> 69,83,72,
>> chord 159:
>> 69,83,84,
>> chord 160:
>> 69,83,96,
>> chord 161:
>> 69,95,24,
>> chord 162:
>> 69,95,36,
>> chord 163:
>> 69,95,48,
>> chord 164:
>> 69,95,60,
>> chord 165:
>> 69,95,72,
>> chord 166:
>> 69,95,84,
>> chord 167:
>> 69,95,96,
>> chord 168:
>> 81,35,24,
>> chord 169:
>> 81,35,36,
>> chord 170:
>> 81,35,48,
>> chord 171:
>> 81,35,60,
>> chord 172:
>> 81,35,72,
>> chord 173:
>> 81,35,84,
>> chord 174:
>> 81,35,96,
>> chord 175:
>> 81,47,24,
>> chord 176:
>> 81,47,36,
>> chord 177:
>> 81,47,48,
>> chord 178:
>> 81,47,60,
>> chord 179:
>> 81,47,72,
>> chord 180:
>> 81,47,84,
>> chord 181:
>> 81,47,96,
>> chord 182:
>> 81,59,24,
>> chord 183:
>> 81,59,36,
>> chord 184:
>> 81,59,48,
>> chord 185:
>> 81,59,60,
>> chord 186:
>> 81,59,72,
>> chord 187:
>> 81,59,84,
>> chord 188:
>> 81,59,96,
>> chord 189:
>> 81,71,24,
>> chord 190:
>> 81,71,36,
>> chord 191:
>> 81,71,48,
>> chord 192:
>> 81,71,60,
>> chord 193:
>> 81,71,72,
>> chord 194:
>> 81,71,84,
>> chord 195:
>> 81,71,96,
>> chord 196:
>> 81,83,24,
>> chord 197:
>> 81,83,36,
>> chord 198:
>> 81,83,48,
>> chord 199:
>> 81,83,60,
>> chord 200:
>> 81,83,72,
>> chord 201:
>> 81,83,84,
>> chord 202:
>> 81,83,96,
>> chord 203:
>> 81,95,24,
>> chord 204:
>> 81,95,36,
>> chord 205:
>> 81,95,48,
>> chord 206:
>> 81,95,60,
>> chord 207:
>> 81,95,72,
>> chord 208:
>> 81,95,84,
>> chord 209:
>> 81,95,96,
>> chord 210:
>> 93,35,24,
>> chord 211:
>> 93,35,36,
>> chord 212:
>> 93,35,48,
>> chord 213:
>> 93,35,60,
>> chord 214:
>> 93,35,72,
>> chord 215:
>> 93,35,84,
>> chord 216:
>> 93,35,96,
>> chord 217:
>> 93,47,24,
>> chord 218:
>> 93,47,36,
>> chord 219:
>> 93,47,48,
>> chord 220:
>> 93,47,60,
>> chord 221:
>> 93,47,72,
>> chord 222:
>> 93,47,84,
>> chord 223:
>> 93,47,96,
>> chord 224:
>> 93,59,24,
>> chord 225:
>> 93,59,36,
>> chord 226:
>> 93,59,48,
>> chord 227:
>> 93,59,60,
>> chord 228:
>> 93,59,72,
>> chord 229:
>> 93,59,84,
>> chord 230:
>> 93,59,96,
>> chord 231:
>> 93,71,24,
>> chord 232:
>> 93,71,36,
>> chord 233:
>> 93,71,48,
>> chord 234:
>> 93,71,60,
>> chord 235:
>> 93,71,72,
>> chord 236:
>> 93,71,84,
>> chord 237:
>> 93,71,96,
>> chord 238:
>> 93,83,24,
>> chord 239:
>> 93,83,36,
>> chord 240:
>> 93,83,48,
>> chord 241:
>> 93,83,60,
>> chord 242:
>> 93,83,72,
>> chord 243:
>> 93,83,84,
>> chord 244:
>> 93,83,96,
>> chord 245:
>> 93,95,24,
>> chord 246:
>> 93,95,36,
>> chord 247:
>> 93,95,48,
>> chord 248:
>> 93,95,60,
>> chord 249:
>> 93,95,72,
>> chord 250:
>> 93,95,84,
>> chord 251:
>> 93,95,96,
>> 
>> ...in a versionsofachord.  this list was generated by the recursive method
>> TransferUno, which seems to work, but the versionsofachord (labeled
>> centipede) doesn't end up containing this despite code to transfer it
>> there.  Instead, centipede seems to end up containing:
>> 
>> 
>> 93,95,96,
>> 93,95,96,
>> 93,95,96,
>> 93,95,96,
>> 93,95,96,
>> 93,95,96,
>> 93,95,96
>> 
>> etc.
>> 
>> 
>> The big moves in the code to make these things happen are around line 611 in
>> Oa6.java, of course with calls to objects and methods described elsewhere.
>> 
>> I can't really move forward with the code if I don't fix this, but I can't
>> seem to figure out what's going on.
________________________________________________________________________