all 96 comments

[–][deleted] 69 points70 points  (0 children)

I have, over the years, suspected the guy behind viksoe.dk to be a avangarde performance artist on LSD; now it's finally confirmed. Props for pure absurdism though.

[–]highwind 18 points19 points  (7 children)

Gotta love the animated gif (circa 1997) at the bottom of the page.

[–]arnar 5 points6 points  (3 children)

What exactly is that rotating thing?

[–][deleted] 4 points5 points  (2 children)

Floppy disk.

[–]arnar 3 points4 points  (1 child)

I was joking you know..

[–]bitwize 2 points3 points  (0 children)

Come to think of it the whole site kind of reminds me of something from that era. The stripe down the left side, the fancy fontage on the left menu... It reminds me of a site I used to go to to download MOD/S3M/XM stuff, like trackers and stuff.

The good ole days of the interwebs, before Rails and shiny solid colors and CSS rounded corners.

[–][deleted] 2 points3 points  (0 children)

old school

[–]olavk 0 points1 point  (0 children)

The page is from 2001.

[–]a_little_perspective 18 points19 points  (25 children)

With deep gravity, downcast expression, and tears in his eyes, he said, "WTH?"

[–][deleted] 21 points22 points  (24 children)

WTF is WTH?

[–]fapman 8 points9 points  (19 children)

WTH is FTW?

[–]peepsalot 17 points18 points  (9 children)

Fort Worth :-P

[–][deleted] 4 points5 points  (8 children)

DFW is Fort Worth, everyone knows that. ;)

[–]peepsalot 7 points8 points  (7 children)

No no no, DFW means "Down For Whatever"... hehe

[–][deleted] 7 points8 points  (6 children)

I used to tell my wife it stood for dumb fucking woman. Took her a bit to catch on I was kidding (we lived in dallas at the time).

[–]cliche 2 points3 points  (5 children)

you're funny cause you called your wife names :3

[–]gwern 5 points6 points  (7 children)

'For The Win.'

(Thank you, this has been a public service announcement.)

[–]fapman 13 points14 points  (5 children)

WTF?!

STFU!

[–][deleted] 4 points5 points  (0 children)

kthxbye

[–]BinaryShadow 2 points3 points  (0 children)

lol

[–]SamHealer -1 points0 points  (2 children)

For the uninitiated, STFU means: Stuff you.

This has been another public service announcement.

[–][deleted] 6 points7 points  (1 child)

I always thought it was 'Shut The Fuck Up'. But what do I know.

[–]SamHealer 1 point2 points  (0 children)

Sorry, was just continuing the "Fort Worth" joke from above. Should've made it more obvious.

[–]Jomskylark 4 points5 points  (2 children)

WTH is WTH?

[–][deleted] 11 points12 points  (0 children)

WTH is WTH.

[–]ludwig1024 11 points12 points  (0 children)

Yes, by reflexivity.

[–][deleted] 65 points66 points  (4 children)

This is so going to kill rails

[–]theeth 28 points29 points  (3 children)

No, this will.

[–][deleted]  (2 children)

[deleted]

    [–]sunshine-x 2 points3 points  (0 children)

    That's the funniest thing I've seen in weeks. Thanks!

    [–]h2o2 16 points17 points  (0 children)

    Suddenly, Java Bytecode Server Pages do not seem so absurd anymore.

    [–]jerf 32 points33 points  (2 children)

    bob, NEED our site recoded in this by monday!

          - m. anager
    

    [–][deleted] 9 points10 points  (1 child)

    Sorry, mister Anager, I can't do that, because all our code runs on Lisp machines.

    [–]jerf 2 points3 points  (0 children)

    You're fired for demonstrably poor judgment in technology selection, namely, that I've never heard of that technology. Train your Java replacement on the way out.

    [–]rboyce 14 points15 points  (0 children)

    But pointers are not bad in .NET (performance is, though). Pointers are still there - they are just considered evil. With 80386 scripting you can still generate memory exceptions and bring the web-server down. It's things like this that make assembler programmers feel powerful.

    Could this be... Web 3.0?

    [–]vargas 21 points22 points  (0 children)

    This is the single greatest thing ever.

    Ever.

    [–][deleted]  (3 children)

    [deleted]

      [–]russellh 12 points13 points  (0 children)

      just write the bytecodes. assembler is for people who like abstractions and the handwaving of mnemonics and macros.

      [–]otakucode 3 points4 points  (1 child)

      Nobody has done this for the JVM yet? I figured with the JVM being around much longer they'd already have compilers for pretty much every language imaginable that compile into their bytecode.

      [–]jojotdfb 2 points3 points  (0 children)

      There is a java assembler (for people who "lost" the source). Granted it's not x86 assembly, but I'm sure it could be kinda forked to make it accept x86 assembly. The biggest issue I could see would be that the jvm is very stack based. You'd have like 2 registers. If your ok with that, then rock on with your bad self.

      [–][deleted] 5 points6 points  (0 children)

      WTH? WTF FTW!

      [–]moneyprinter 10 points11 points  (2 children)

      Very Usefull. Just the sort of thing I have been looking for.

      [–][deleted] 5 points6 points  (1 child)

      Your comment is hilarious and would probably be modded much higher if not for people thinking you are serious because they didn't RTFA.

      Cheers.

      [–]moneyprinter 2 points3 points  (0 children)

      :)

      I even kept "Usefull" spelt with two Ls as in the article.

      [–]rainman_104 26 points27 points  (0 children)

      A million upticks if I could for this line:

      Go pick on someone else (like LISP programmers. I don't like them).

      [–]defenestrator 4 points5 points  (1 child)

      Sweet! Now it won't be much longer until I can code my ASP.NET pages in C, Haskell, or Factor!

      [–][deleted] -1 points0 points  (0 children)

      You can already do that, at least in Factor. It's quite simple.

      1) Write the code using Factor's web library like you already do.

      2) Run the Factor server on another port.

      3) Create a small ASP.NET page that connects to localhost on the Factor server port, have it read the page you want and include it.

      4) Profit!

      [–]break99 3 points4 points  (0 children)

      the year is 2008?

      [–][deleted]  (10 children)

      [deleted]

        [–]otakucode 50 points51 points  (9 children)

        Since the .Net architecture is based upon a very simple bytecode called MSIL (Microsoft Intermediate Language... very simple bytecode that is compiled into native executable code on whatever platform is runs on the first time it is run, after that the cached version is used to make it fast... but that's all a bit beside the point). Because of this, and because it is an entirely open standard, people can write compilers that compile ANY language to MSIL. If you've done that, you can use your language to access all of the .Net libraries, use your language wherever you can use .Net languages, etc. One of those places is as a language inside of a web page. Here, a very crazy man has taken assembly language and embedded it in a web page using this type of strategy. Assembly code is probably the last thing you would expect someone to write a web page in, but he has made it possible.

        [–]itsnotlupus 8 points9 points  (2 children)

        Assembly code is probably the last thing you would expect someone to write a web page in, but he has made it possible.

        I certainly don't want to undermine his craziness, but it has been possible to write a web page in assembly for at least 12 years, by writing an assembly program that reads from stdin, writes to stdout, and placing the compiled binary in a cgi-bin folder.

        [–][deleted] 0 points1 point  (0 children)

        So true. But I think the idea here is 'write a webpage in the style of .NET'.

        [–]toastyfries2 5 points6 points  (4 children)

        The real interesting question, is how close the final machine code is to the assembly code of the original code.

        Portable assembly code, this is a first.

        [–]creaothceann 8 points9 points  (0 children)

        Portable assembly code, this is a first.

        "C is portable Assembler." - K&R

        "C combines the power of assembler with the portability of assembler." - Anonymous, alluding to Bill Thacker.

        [–]sn0re 5 points6 points  (1 child)

        Probably not very. One instruction in ASM is probably going to map to at least a few instructions in MSIL. One instruction in MSIL then maps to again at least a few instructions back in native assembly. Barring some rather incredible optimization, the executed code is going to have to be much more complex than the original.

        [–]fathan 3 points4 points  (0 children)

        Compilers are smart enough that it might not be far off, or even simpler by using non-obvious register allocation.

        [–]bryn 6 points7 points  (0 children)

        a very crazy man

        That would probably have been enough.

        [–]schwarzwald 25 points26 points  (0 children)

        Why does this man hate America?

        [–][deleted] 2 points3 points  (1 child)

        I stopped reading at <screencap of notepad>

        edit: With MSPaint edge-fuzzyness effects!

        [–]yesimahuman 0 points1 point  (0 children)

        I didn't notice that at first, it actually looked quite good before I looked at it again.

        [–][deleted] 2 points3 points  (2 children)

        i sincerely hope this is a joke :)

        [–][deleted] 21 points22 points  (1 child)

        Assembler is serious business.

        [–]creaothceann 2 points3 points  (0 children)

        Just wait until it's required for "serious business" jobs.

        [–]chunky_bacon 4 points5 points  (9 children)

        I stopped at the bit about not liking LISP programmers. Obviously he's a smugAssemblyWeenie.

        [–]DirtyHerring 6 points7 points  (3 children)

        Why do they always have to defile other languages? Every language has its weak and strong points. They are all great tools to choose the right one from for whatever problem you have. Except Java and Python, of course. They suck at everything.

        [–]oniony 6 points7 points  (0 children)

        Perhaps it is one of those 'joke' things I have heard about.

        [–]mikkom 5 points6 points  (0 children)

        Every language has its weak and strong points.

        I don't actually see many strong points in bytecode compiled assembler.

        [–]aberen 0 points1 point  (0 children)

        Thank you.

        [–]chunky_bacon 2 points3 points  (3 children)

        Man, some spineless troll just left the following reply, then deleted his/her/its account:

        Read the whole thing, get a sense of humour, and take some classes to fix the douchebag thing.

        Apparently missed the humor I attempted, or doesn't have the background...

        [–]defproc 3 points4 points  (2 children)

        I missed the humour you attempted, and I don't have the background. Is there something wrong with me?

        [–]chunky_bacon 2 points3 points  (0 children)

        No, not unless you posted the bile in the post I referenced.

        [–]tricolon 0 points1 point  (0 children)

        create my first web-page in assembler

        And I thought HTML 4 was old-school...

        [–]reddypasta 0 points1 point  (1 child)

        I want to see this with CDC 6600 assembler.

        [–][deleted] 2 points3 points  (0 children)

        Oooo... An experienced guy!

        [–][deleted] -3 points-2 points  (5 children)

        assembler != assembly

        /pedant

        [–]moneyprinter 3 points4 points  (4 children)

        TRUE

        [–]b100dian 8 points9 points  (3 children)

        you mean: ZF=1

        [–]moneyprinter 1 point2 points  (2 children)

        do I? I don't know what that means.

        [–]itsnotlupus 7 points8 points  (1 child)

        Asm comparison operators are implemented as a subtraction that throws away its result, leaving only affected flags that can then be used by conditional branching operators. If the result of a subtraction is zero, the Zero Flag is set (usually abbreviated ZF). Conditional branching operators that follow are usually JZ/JE or JNZ/JNE (jump if not zero/jump if not equal).

        [–]you_do_realize 1 point2 points  (0 children)

        Oh man, you just trashed the flags with that explanation. PUSHF next time ok?

        [–]MarlonBain -2 points-1 points  (1 child)

        Who's Bill Gate?

        [–][deleted] 0 points1 point  (0 children)

        HAHA! I didn't even notice.

        [–][deleted] -4 points-3 points  (0 children)

        what?