Go to bottom

What is the language you use to program a demo and why?

category: code [glöplog]
So many people coding in assembly and nobody in machine code? Lamers!


Okay okay, I've used 6507 assembly for my first public demo. Right now I'm using a bit more abstracted language created by KK/DMA to generate and link 6507 machine code for my upcoming SillyVenture demo. That language is close to assembly but more readable and allows control structures, like this:

Code:x=20 {wsync COLUBK=a=colors,x x--}>=0

instead of
Code: ldx #20 .loop: sta wsync lda colors,x sta COLUBK dex bpl .loop

I'm also using a lot of Python to create tables, convert graphics and generate unrolled loops etc., and C++/Visual Studio 2013 Pro for my first PC demo.
added on the 2014-11-26 14:16:38 by Kylearan Kylearan
Kylearan, I thought that languages for the toolkit were kind of a secondary topic? But you are right, I guess most people would not sit in Assembly-only environment. To prepare my data and graphics I mostly use Processing (for prototyping), C++ (to write new tools) and Matlab (to prepare new data etc). There are few things which are still done in Assembly, but it is usually done when it is simpler to re-use the effect code for some kind of data rearrangement.
added on the 2014-11-26 14:26:04 by introspec introspec
C++, because the last time I made an intro in 100% assembler was in '04 and I don't really miss those times.
added on the 2014-11-26 14:33:21 by Trilkk Trilkk
My first real demo was coded in asm on C64 directly in the monitor available in SuperSnapShot v5. But prior to that, I was so happy when I get introduce to LOGO Writer on PCJr at school (in the '80s).

My last release, on GP2X and win32, was coded in C which is better for portability anyway. I do have few asm lines for handling dual-cpu stuff on GP2X, but it's not my code. Probably if the GP2X would have been "alive" longer and more popular, I would have consider other long project... after I release a library to handle hardware features on this device.
added on the 2014-11-26 15:23:27 by F-Cycles F-Cycles
Probably if the GP2X would have been "alive" longer and more popular, I would have consider other long project... after I release a library to handle hardware features on this device.

Next year: The Chalcogens II?
added on the 2014-11-26 16:09:44 by Scali Scali
F# for me for nearly everything these days, including my latest SNES prod. :) Besides that, some C/C++, C#, Uno, Asm, the usual stuff..
added on the 2014-11-26 16:47:40 by ferris ferris
ah, forgot "why"; basically I like FP ^^
added on the 2014-11-26 16:49:21 by ferris ferris
Back in the last century, i was a pure asm guy... These days though, Haskell (hi ferris! :)
added on the 2014-11-26 18:29:46 by blala blala
Ferris: is there a video of your recent workshop? Any resources you can reccomend? Started on my first f# project, a rewrite of my synth compiler, using fparsec.
added on the 2014-11-26 18:40:19 by revival revival
blala: woo, another one :D:D o/

revival: nah, unfortunately no video was recorded. It was pretty ground-up too; I don't think I really covered anything you wouldn't get from fsharpforfunandprofit or something like that anyways :) . (Btw the "Thinking Functionally" series on that site rules!) When I'm a little less burned out I need to get the slides corrected and uploaded :P

I've actually never used fparsec, but I know parsec is rad, so it's probably kickass :D ! Is it going well?
added on the 2014-11-26 19:39:51 by ferris ferris
I code in c++ and glsl because my groupmates do. Although I hate c++.

I'd love to code again in Lisp, Clojure, Haskell or F#. But nobody will appreciate the "look ma, no assets. all procedural!" thing when it's not 64k, even if the techniques are the same.
added on the 2014-11-26 19:56:13 by cupe cupe
Cupe: have you considered the livecoding approach? A buddy of mines working on some stuff in that vein for SBCL at least :D
added on the 2014-11-26 20:07:30 by ferris ferris
Asm for all demostuff, including tools and offline precalc, developed w/ Asm-One and other native (old) tools running in WinUAE. Mainly because that's the way I learnt it and after more than 20 years it feels very natural ( == always knowing "where to start").
When I touch any other language I tend to treat it as C. :/
Before I have been programming mostly in Javascript and Assembly. But now due to fortunate and unfortunate conciquences I'm programming C++, Java and C# more and more. I feel that C++ is really unconventional. I do like C but C++ ugh, feels unfinished.
added on the 2014-11-26 20:16:19 by branch branch
Will it sound strange if I say that all my Oric demos are just C calling assembler subroutines?
added on the 2014-11-26 20:47:45 by Dbug Dbug
C/C++ w/intrinsics, assembly when necessary or when I use my timemachine and transport back to 1995. Trash like JS and Python when I'm forced to by whatever circumstance.
added on the 2014-11-26 20:49:22 by superplek superplek
Oh, and Uno.
added on the 2014-11-26 20:49:54 by superplek superplek
Ferris: I've livecoded visuals in scheme (with fluxus), even publicly on stage. Is that what you mean? I'd love to do that kind of thing with Common Lisp... Or maybe give Clojure a spin since my parentheses are a bit rusty by now, so I might as well switch over.
added on the 2014-11-26 21:30:41 by cupe cupe
C/C++ and inline asm
added on the 2014-11-26 21:39:29 by rudi rudi
C++ mostly still (with the occasional assembly for tiny startup routines or full-fledged synths ;) but seriously contemplating C# or something similar for the next newschool prods. Most computation time is spent in the GPU nowadays anyway so the slightly lower performance doesn't really count and the productivity gain is tremendous (also: "unsafe". Boom. Almost native speed.).

And interestingly I might even join the F# bandwagon - at least I realize how the C# I write at my job is getting more and more functional every day :), and come to think of it - isn't a demo just a gian function of time? ;)
added on the 2014-11-26 23:14:18 by kb_ kb_
at least I realize how the C# I write at my job is getting more and more functional every day :), and come to think of it - isn't a demo just a gian function of time? ;)
Bingo :D

Cupe: ah sweet, didn't know that; that's exactly what I mean :D got any videos?
added on the 2014-11-27 00:46:16 by ferris ferris
Ferris: no, I always forget about telling people to do some documentation. FWIW, I found two pictures (not embedding because offtopic). I'm always interested in projects or performances in that direction, so pointers to your friend's project would be much appreciated :)

Blala: If me meet at a party I'd be very much interested in seeing some code or hearing about your workflow with Haskell if you'd like to share :)
added on the 2014-11-27 01:27:18 by cupe cupe
Currently: C/C++, HLSL/GLSL/CUDA, [N]ASM
added on the 2014-11-27 01:55:42 by las las
I love functional stuff but I code in C++ and GLSL because by now I can work very quickly in those languages. I try to be stateless and aim for a pure function of time anyway since that just makes everything easy and more stable.
added on the 2014-11-27 02:05:09 by fizzer fizzer
C++ / GLSL. Considering switching to D for the sole purposes of not having to deal with header files - which I find to be a huge time sink - and retain "linkability" without having to write wrappers (I believe) to C libraries. Recently saw Scott Meyers give a talk on the D conference, which was pretty disheartening with regards to C++.
added on the 2014-11-27 12:34:31 by xeche xeche


Go to top