Is it possible to build a computer (Turing complete) using only diode logic without transistors? I know DTL was a thing, but from what I could tell, they used transistors to amplify signals.
It's certainly possible to make a computer without transistors, using diode logic for most functions. All computers prior to 1953 avoided transistors, and some of these heavily used diode logic.
But eventually you need some form of amplification and inversion.
Inversion you can easily achieve using transformers (at least, if you are passing discrete pulses rather than continuous logic levels through the logic. This was common in the 1940s and 50s) - simply swap the secondary winding connections.
Amplification : assuming you have ruled out valves (vacuum tubes) as well as transistors, you are limited in your options. Relays are an obvious choice, for clock rates up to a few Hz. Above that, there are tricks you can play on transformers to amplify current changes by using smaller currents in other windings to bring their cores in and out of saturation. I've never heard of anyone exploiting this form of "magnetic amplifier" for computing, so it may not be possible.
On the other hand, the Elliot 803 was a transistor computer, but it implemented its logic functions using magnetic cores, with just one transistor per gate to provide gain.
Impossible. With nothing but diodes, and I suppose you allow resistors, the output levels of any chunk of logic will span a smaller range than the input levels. Forward voltage drops would add up until there'd be no signal. There has to be amplification in every gate, or at least in many places.
The biggest show stopper though, is that with just diodes there'd be no way to invert a signal. That means no XOR gates, or half-adders and full-adders, no way to test if two bits are the same or different. You'd have to design a diode circuit where if the input goes up, the output goes down, and by at least as much as the input went up.
Finally, there'd be no way to store a bit. There has to be some way to maintain state, such as a program counter, registers, call stacks or something equivalent. Flip-flops are easy to make with cross-connected NOR or NAND gates. But we don't have those in pure diode logic.
That said, it doesn't mean a little bit of diode logic isn't helpful. A couple diodes can make a cheap little OR gate in a TTL circuit, if done right, saving a chip that might be only 1/4 utilized. (In fact, I had a two diode OR gate in my science fair project, years ago.)
Now, since getting larger voltages and inversion of signals is important, I'm starting to wonder - if you allow inductors, you can invert voltages and create voltages outside the range of the inputs. Although still passive components, thus losing energy every step of the way, I wonder if there might be some fun to be had contemplating diode-inductor logic...?
I have been working on a diode resistor gate that I call Light Logic and with a single gate I can create all eight basic gates, Buffer, NOT, AND, NAND, OR, NOR, XOR and XNOR. My project is posted on Hackaday as, SHEDDING A BIT OF LIGHT ON SOME LOGIC. Not fast but it proves that DRL can do it all if folks do not restrict themselves to signal diodes and resistors. Think out of the box. Very basically a Light Logic gate is a LED coupled to a photo resistor/LDR. This combination acts as a switch much as a NPN transistor. Input 1N914 diodes are wired ahead of the LED and power and output are wired to the LDR much as a DTL gate. Granted the LDR does have a pronounced reaction time but this is a new way to create gates and my goal is a 100 percent transistor and relay free processor. Point, keep stray light from being exposed to the LDR.
This is a tough question. I know that "AND" gates can be made from diodes and that single pull-double throw relays can provide the inversion and amplification. So it looks like it is possible (theoretically)! However, it should be noted that diode logic cannot act as a direct replacement for normal transistor logic in most scenarios due the fact that it uses a path to ground instead of the input being pulled high (or low, as with a PNP transistor). Anyways, good luck!