[alt.hackers] credit 'fixing'

jkonrath@silver.ucs.indiana.edu (jon) (02/21/91)

ok, maybe this isnt a good question for here, but im sure maybe one
of you knows what im talking about...

in a lot of these tabloid magazines you see ads like:

'fix your credit history! send xx dollars to...'

im just wondering what 'fixing' entails and if anyone knows how to
do this. it seems like any pud off the street who can put an ad in
the enquirer can do this, so why can't i?

obhack: not really a hack, but an example of the lack of knowledge around
me.  we're working with static queues in modula-2.  the class was debating
on how to increment a pointer the the front or back so at the top of the
queue's n places, it would skip back down to 0. they did something like:

IF top = 8 THEN
  top = 0
ELSE
  INC(top)
END;

where i just did top := (top+1)MOD8....

----
Jon Konrath, Consultant     jkonrath@silver.ucs.indiana.edu
IUSB Computing Services     jkonrath@rose.ucs.indiana.edu
  
  'Military intelligence...two words together that cant make sense..'
      -Megadeth, 'Hanger 18', Rust In Peace

jik@athena.mit.edu (Jonathan I. Kamens) (02/22/91)

In article <1991Feb21.154633.20781@bronze.ucs.indiana.edu>, jkonrath@silver.ucs.indiana.edu (jon) writes:
|> ok, maybe this isnt a good question for here, but im sure maybe one
|> of you knows what im talking about...

  This has been discussed before in misc.consumers, and misc.consumers is
probably a much better newsgroup to discuss it, so I've directed followups
there.

|> in a lot of these tabloid magazines you see ads like:
|> 
|> 'fix your credit history! send xx dollars to...'
|> 
|> im just wondering what 'fixing' entails and if anyone knows how to
|> do this. it seems like any pud off the street who can put an ad in
|> the enquirer can do this, so why can't i?

  There are two main approaches they take (that I know of).

  One of them is to issue you a debit credit card.  A debit card is a card
where you deposit a starting balance in a bank account at the bank issuing the
card, and your credit limit is the amoung of money you deposit.  If you don't
pay, they take the money out of the account.  The idea, supposedly, is that if
you keep this account for a long time and manage to pay off the bills every
month reliably, it will show up in your credit history.

  The other is much less legal.  They access the records of a credit agency
like TRW, searching for someone with the same name as you who has a better
credit history.  Then, they give you that person's social security number and
tell you to use it whenever applying for credit from now on.  You give your
name and the other guy's social security number, and when they look up your
history they see the other guy's.  If you don't do anything obnoxious, the
other guy probably won't ever notice; if you do, you just might get caught,
and the company that told you to do this might too.

-- 
Jonathan Kamens			              USnail:
MIT Project Athena				11 Ashford Terrace
jik@Athena.MIT.EDU				Allston, MA  02134
Office: 617-253-8085			      Home: 617-782-0710

hughes@bigbang.Berkeley.EDU (Eric Hughes) (03/09/91)

In article <1991Feb21.154633.20781@bronze.ucs.indiana.edu> jkonrath@silver.ucs.indiana.edu (jon) said something like:

The "lack of knowledge around me" wrote:
   IF top = 8 THEN
     top = 0
   ELSE
     INC(top)
   END;
where i just did 
   top := (top+1)MOD8

==endquote==

Now wait!  The first code will (on most compilers) execute much faster, 
since there's no division instruction generated.  Put this fragment
inside a loop, and you've got a significant performance difference.


Hack:  a favorite C statement (conditional assignment)
           *( bool ? &x : &y ) = t ;
   I have broken two C compilers with this expression.
   

Hack:  For my work, I am currently converting an interpreter, which
takes a custom semi-text input format, and which is written in 8088
assembly, to a compiler/inner-interpreter pair.  Fine.

But we have a design constraint that all the existing high-level code
has to continue to run while the engines are being worked on.  Ick.

Solution: A custom language, with a compiler written in AWK, which
specifies the exchange language between the compiler and the
i-interpreter.  It allows the generation of text statements for those
verbs which are unconverted, and for postfix expressions for those
which are.  Now I can convert a keyword at a time, switch its output
syntax, reimplement the keyword in C, and the user is none the wiser.
Eventually all this scaffolding for conversion will be thrown out
when a full postfix conversion is completed.  Neat.

Particular gratitude to Jon Bentley, who inspired this approach.

Eric Hughes
P.O. 4789
Berkeley, CA 94704

peter@taronga.hackercorp.com (Peter da Silva) (03/10/91)

hughes@bigbang.Berkeley.EDU (Eric Hughes) writes:
> Now wait!  The first code will (on most compilers) execute much faster, 
> since there's no division instruction generated.

The second code will kick the first one's butt, on any compiler that
transforms "mod 8" to "bitwise-and 7".

Hack:	Writing a TCL script to munge a the new pseudocode standard
	into something the old-pseudocode-standard processor (written
	in spaghetti Fortran) can handle, saving mondo man weeks
	wasted on something that wasn't worth doing in the first place.
-- 
               (peter@taronga.uucp.ferranti.com)
   `-_-'
    'U`

ardai@BASS.BU.EDU (Michael Ardai) (03/10/91)

Actually why not do top = (top+1)&7;
/mike

--
\|/ Michael L. Ardai     ardai@bu-pub.bu.edu   ...!sun!teda!ardai (preferred)
--- -------------------------------------------------------------------------
/|\ Teradyne EDA East    (617) 254-3420 

urlichs@smurf.sub.org (Matthias Urlichs) (03/11/91)

In alt.hackers, article <HUGHES.91Mar9005027@bigbang.Berkeley.EDU>,
  hughes@bigbang.Berkeley.EDU (Eric Hughes) writes:
< In article <1991Feb21.154633.20781@bronze.ucs.indiana.edu> jkonrath@silver.ucs.indiana.edu (jon) said something like:
< 
<< The "lack of knowledge around me" wrote:
<<    IF top = 8 THEN
<<      top = 0
<<    ELSE
<<      INC(top)
<<    END;
<< where i just did 
<<    top := (top+1)MOD8
< 
< Now wait!  The first code will (on most compilers) execute much faster, 
< since there's no division instruction generated.  Put this fragment
< inside a loop, and you've got a significant performance difference.
< 
Ahem, did it occur to anyone that the first example is modulo 9 ?  :-)

ObHack: Well, right now I'm writing a news reading program. The thing is so
full of hacks (both in the good and bad sense) that I don't know where to
begin, so I won't.
However, the _real_ hackery is going to start soon, when I'll be converting
the code from Object Pascal to C++. (I'm getting fed up with having neither
decent macros, inline functions, nor constructor/destructor functions.)

-- 
Matthias Urlichs -- urlichs@smurf.sub.org -- urlichs@smurf.ira.uka.de     /(o\
Humboldtstrasse 7 - 7500 Karlsruhe 1 - FRG -- +49-721-621127(0700-2330)   \o)/