|
Authored by: darrellb on Thursday, May 10 2012 @ 12:09 PM EDT |
I've written machine code that way, but only in small bits. Anything more than a
a handful of instructions is unworkable.[ Reply to This | Parent | # ]
|
|
Authored by: Anonymous on Thursday, May 10 2012 @ 12:44 PM EDT |
Since 8086 Assembly was my first programming "language", I've actually
taken to doing this -- Well, not with notepad. I've been using my own low level
"toy" languages for many years, and my compiler can target my own VM,
Perl6 Parrot VM, Java VM, or machine code of ARM, MIPS, x86/87, x64 or x86/64 (a
hybrid instruction set that targets both 32 and 64 bit architectures at once).
Oracle's '104 patent is over "simulating" ie executing a bit of the
code to resolve some symbol name to memory address translations. The
"innovation" is "IN A Virtual Machine!" It's like the
1990's equivalent of all the "...On the Internet!". It's
disgraceful.
Also, Java's stack based VM is uber retarded. Every thing's stack based (very
slow pushing and popping args on a stack to even just add). I've been targeting
Davlik and it's register based VM is beautiful, it's more similar to an actual
machine's instruction table. Totally different beast in every way.
To note: I don't have to use the Java API to write programs, but if I don't then
they can't do anything -- Even though I'm writing in a totally different
language than Java!
To print out a line of text to the terminal, I must still call their
java.lang.System.out.println function. There is NO OTHER WAY to get for VM
bytecode to interface with the system. I could provide my own Native C compiled
interface to print out text (with binaries for each and every platform), then
register them with the VM and call them through the VM, but then you might as
well just write the program in C or ASM or anything that compiles to machine
code (not Java), and forgo the VM translation layer. My compiler wraps over the
verbose java.lang.System.out.print* methods and provides me with "say"
eg:
say "Hello World"
ret 0
That's a complete valid Hello World program. I resolve the symbolic reference
to the say and ret functions at compile time. However, since my code compiles
so fast, it is used in many of my programs as Scripting language. That is --
It's stored as text and compiled at runtime. Nearly all Scripting languages
would thus infringe the '104 patent.
To build my interfaces to the Java VM I did in fact write much bytecode by
hand.
If the court finds APIs are copyright-able, then code written in totally
different languages will stop working -- I don't see how GNU classpath would
operate at all.
I've started writing my own non-computer language as well -- I call it Galactic.
It's simple and inspired by machine code. This is so my documentations and
bytecode may be one and the same, and someone like Oracle can't say: "Did
you use symbolic references?" I'll say, "Nope. I only ever used:
/ | -- . / / [_]
"
Yes, this is what patent and copyright have done to me. I'm off writing my own
languages... because English is now dangerous to my way of life.[ Reply to This | Parent | # ]
|
|
|
|
|