What was Nuke's first scripting language?

36 views
Skip to first unread message

Gonzalo Garramuño

unread,
Jun 26, 2025, 3:07:54 AMJun 26
to fltkg...@googlegroups.com

Matthias Melcher

unread,
Jun 26, 2025, 4:27:47 AMJun 26
to fltk.general
TCL

ggar...@gmail.com schrieb am Donnerstag, 26. Juni 2025 um 09:07:54 UTC+2:

--
ggar...@gmail.com

Gonzalo Garramuño

unread,
Jun 26, 2025, 7:14:38 AMJun 26
to fltkg...@googlegroups.com

Good answer.  Love nuke, but let's keep it just as a play on words.

Do you now remember *WHY* it was called Nuke?

--
You received this message because you are subscribed to the Google Groups "fltk.general" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fltkgeneral...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/fltkgeneral/33fd27d6-e45e-4a90-b931-a5b444ea3dc8n%40googlegroups.com.
-- 
ggar...@gmail.com

Greg Ercolano

unread,
Jun 26, 2025, 11:05:52 AMJun 26
to fltkg...@googlegroups.com

On 6/26/25 01:27, 'Matthias Melcher' via fltk.general wrote:

TCL

    Oh good lord, let's not go there..! :D
    ..but let's visit.

    It was an early edict from Steve Gray to standardize on tcl in the early days of Digital Domain v1.0. I got good enough to write some largish programs in tcl, but it was slow.. slower than perl and awk. Lots and lots of square brackets.
As a language, LISP folks liked it. I could see the appeal; a lot could be done in a single line.

    tcl won out over perl for a few reasons; at the time, early 1993, as a scripting language I think it was the /only/ one that officially provided a GUI (tcl/tk). It also had the better API for integrating with applications, which nuke needed. So nuke adopted tcl, and we all were supposed to write production support tools in TCL for consistency.

    The ASAP system's database was becoming large, and tcl was slow to manage it, so when the requirement for all scripts to be tcl was lifted, I quickly rewrote the slow stuff in perl. Also new sysadmins came in and were good at perl, so it displaced TCL.

    Then of course somewhere in the 2000's everyone started going with python, including maya, and well, everything.

    Would have loved a perl/fltk integration, or even tcl/fltk, but fltk didn't become mature enough to release publicly till much later, right around the time I left DD. I think Bill used FLTK internally, in its pre-public release form, to make it easy to port to other platforms besides SGI (e.g. linux, and later with Matt's help, Windows!)

    That's how I kinda remember things.

Gonzalo Garramuño

unread,
Jun 26, 2025, 12:54:16 PMJun 26
to fltkg...@googlegroups.com

On 6/26/2025 12:05 PM, Greg Ercolano wrote:
>
> On 6/26/25 01:27, 'Matthias Melcher' via fltk.general wrote:
>
>> TCL
>
>     Oh good lord, let's not go there..! :D
>     ..but let's visit.
>
>     It was an early edict from Steve Gray to standardize on tcl in the
> early days of Digital Domain v1.0. I got good enough to write some
> largish programs in tcl, but it was slow.. slower than perl and awk.
> Lots and lots of square brackets.As a language, LISP folks liked it. I
> could see the appeal; a lot could be done in a single line.
>
I come from a later generation.  My generation's first approach to
programming was "BASIC", which was standard on all home computers, very
much like python now or javascript on the web.  Easy to learn, you could
do graphics with it, but it was also slow.  You had to learn assembler,
which I did from a book at the time and i "got it" right away. 
Assembler was really fast BUT it was not portable from one CPU to
another.  It also allowed me to hack games to give them infinite lives
and the like which I loved.  The new kid on the block at the time was a
weird language called "C" (which I also bought a book to learn from and
did NOT get at first).
>     tcl won out over perl for a few reasons; at the time, early 1993,
> as a scripting language I think it was the /only/ one that officially
> provided a GUI (tcl/tk). It also had the better API for integrating
> with applications, which nuke needed. So nuke adopted tcl, and we all
> were supposed to write production support tools in TCL for consistency.

Back at Carlos Sorin Cine, in Argentina, I did the same route you took,
from awk to Perl, which I loved for its speed, as I was writing EDLs
from Avid (the best editing system at the time) to Advance which did not
have any way to input EDL files (Advance was from Parallax which
promised to be a Flame -- that's why Nuke got its ugly name --
replacement but always had problems with its hard disk corruption). 
Advance and its paint package at the time were also ahead of its time,
like Nuke.

That's when I started at DD.  I rewrote the Job System at DD in a day
after borrowing a TCL book from Paul Van Camp.  When he saw that, he
started mentoring me like you did and convinced Wook at the time, who
was opposed to having non-programmers touch code, from giving me access
to a "C" compiler as I had seen so many problems during the making of
Titanic that I knew at the time I could fix them for the next project
when it came around.
>
>     The ASAP system's database was becoming large, and tcl was slow to
> manage it, so when the requirement for all scripts to be tcl was
> lifted, I quickly rewrote the slow stuff in perl. Also new sysadmins
> came in and were good at perl, so it displaced TCL.
>
>     Then of course somewhere in the 2000's everyone started going with
> python, including maya, and well, everything.
At ILM I was opposed to Python as I had seen a more elegant language
called Ruby that mixed the best of Perl and Python.  Of course, since it
was mainly Japanese technology and was arriving later to the then
nascent ML experiments where python was being used, python clearly won
over.  Apple did adopt it thou, for their package manager and it is
likely the best package manager on the market, imo, even if it tends to
update all your dependencies unless you tell it not to do so.
>
>     Would have loved a perl/fltk integration, or even tcl/fltk, but
> fltk didn't become mature enough to release publicly till much later,
> right around the time I left DD.
When I left ILM, and went back to DD, I rewrote the rush UI in Ruby and
had Ruby/fluid also working directly in it in about a week, spitting
both "C" and "Ruby" code.  Wook at the time was also convinced to go
with python and with the mess I was bringing with mrTranslator, I said
no thanks and had a mental breakdown.  At the time every company was
hacking each other with no respect to privacy.  This time around, we
have learnt to behave somewhat better, I think.
Rewriting FLTK's in Ruby brought the benefit that it was really easy to
maintain and support multiple backends but it introduced a compile
dependency.

Greg, you asked me what language I prefer and so far I still have not
found the next rust or python.  Would you and Matt (since he answered
first) care to evaluate a language for me (one from the Go ML
perspective and one from the good old timer performance and simplicity
perspective)?

--
ggar...@gmail.com

Reply all
Reply to author
Forward
0 new messages