HNHacker News
TopNewBestAskShowJobs

cmacleod4

383 karma · joined September 8, 2015

Retired programmer, blog at https://colin-macleod.blogspot.com
submissionscomments
cmacleod4··on I moderate /r/kafka; people mistake it as a subreddit about kafka the product
I follow /r/Tcl which is dedicated to the Tcl scripting language, but recently gets lots of inappropriate posts about the products of the TCL electronics company :-(

This is not a new problem, I remember around 25 years ago when the usenet news group comp.windows.news, which was dedicated to Sun's "Network Extensible Window System", became overwhelmed by posts from people who thought it was for news about Microsoft Windows.

cmacleod4··on Marmalade: A British obsession
Hah! All true Britons love marmalade :-)
cmacleod4··on Scaling SQLite to 4M QPS on a Single Server
This is from 2018, but still interesting.
cmacleod4··on Why is Tcl syntax so weird (2013)
Tclsh is not really suitable for use directly as a general-purpose shell. TkCon gets a bit closer - https://wiki.tcl-lang.org/page/Tkcon - but still not great, e.g. if you start a long-running program you will only see its output when it terminates.

I wrote a semi-graphical general-purpose shell in Tcl/Tk for my own use - https://wiki.tcl-lang.org/page/gush . I used this as my main shell at work for 12 years, and only stopped because I retired last year.

cmacleod4··on Why is Tcl syntax so weird (2013)
I wrote a blog post last year trying to explain the under-appreciated radical minimalism of Tcl, and in particular the decoupling of syntax and semantics - https://colin-macleod.blogspot.com/2020/10/why-im-tcl-ish.ht...
cmacleod4··on Ask HN: If the Internet were redesigned today, what changes would you make?
I'm coming to this thread late, so I'm amazed that no-one has mentioned Named Data Networking - see https://en.wikipedia.org/wiki/Named_data_networking and https://named-data.net/ . The basic idea is to manage the "what" rather than the "where". This looks like the future to me.
cmacleod4··on TCL: The Tool Command Language – Lisp for the Masses [video]
I just watched this. Karl Lehenbauer gives a basic intro to the language, making comparisons with Lisp, talks about his own development as a software engineer, and how his company FlightAware uses Tcl for most of their code. I found his personal history the most interesting part, there were lots of things there that made me think: yes, been there, done that :-)
cmacleod4··on The GIL and its effects on Python multithreading
Functions (procs) and other state are not shared between interpreters. So they do need to be reinitialised in each thread. This is not hard to do though. The messages which can be passed between threads can be arbitrary scripts to be executed in the target interpreter, such as proc definitions.
cmacleod4··on The GIL and its effects on Python multithreading
The multiple interpreters communicating by message passing model mentioned towards the end of this article as a way forward is exactly the threading model which Tcl has been using successfully for the last 20 years. For more info see https://www.activestate.com/blog/threads-done-right-tcl/ and https://www.tcl.tk/man/tcl/ThreadCmd/thread.html#M44 .
cmacleod4··on RectCut for dead simple UI layouts
... and has done for at least 25 years :-)
cmacleod4··on Google Groups has banned comp.lang.tcl
Suddenly the ban seems to have been lifted!
cmacleod4··on Google Groups has banned comp.lang.tcl
I downloaded the court order, it's dated Sept. 2013, and the only reference to comp.lang.tcl is one entry in a list of 51 urls - https://fcku.it/comp.lang.tcl/thread/4177846 - not even accessing it via google groups!
cmacleod4··on Google Groups has banned comp.lang.tcl
This same spam has been going for years, but the poster keeps changing their identity. It's always all-caps, lots of references to mafia, assasins, paedofilia etc.
cmacleod4··on Open Source Goes to Mars
So what has changed since Tcl was rejected for use on the Mars Pathfinder because "interpretive language code is too difficult to test" - https://wiki.tcl-lang.org/page/Mars+Rover+Project ??

As usual, this looks rather like Python making a big fuss about achieving something Tcl did long ago :-)

See also https://wiki.tcl-lang.org/page/International+Space+Station .

cmacleod4··on I May Have to Spend Some Time as a Political Prisoner
Craig Murray's entire blog has now been suspended as he was found guilty of contempt-of-court in relation to some of the info posted there!
cmacleod4··on SQLite: Code of Ethics
Ok, I guess I think of charity as an expression of solidarity, rather than an alternative.
cmacleod4··on SQLite: Code of Ethics
You seem to feel that charity is to be deprecated because it excuses unjust social structures. I think this is a mistake and that charity often challenges such injustices.
cmacleod4··on Show HN: Can’t afford Bloomberg Terminal? No prob, I built the next best thing
Bloomberg operates a group of distributed, redundant data centres with massive compute and network infrastructure to ingest real-time data from every exchange and major market participant in the world, across a huge range of financial asset classes. It then fires the tiny subset of this that you happen to be interested in at any given moment down to your Bloomberg terminal.

In addition there is data that only they have because it's generated as a by-product of their trading functionality. If I'm MegaBank Corp and I want to sell e.g. credit default swaps denominated in Norwegian Krone, I can advertise this by feeding my prices for such deals to Bloomberg so potential clients who also have a BB terminal can see them and click a price they like to make a trade. This gives Bloomberg a pool of liquidity/price info that no independent source has access to.

So there are very strong network effects. Even if you could spend the billions to duplicate the infrastructure and rewrite all the software required, to actually do the same thing you would also need to replicate all the business relationships with data sources.

Disclaimer: I am not a lawyer/cat/financial-advisor/etc, but I used to be a developer at Bloomberg :-)

cmacleod4··on The Making of Lemmings (2015)
That's a blast from the past! I was also a regular at the Kingsway Amateur Computer Club in those days (and club secretary for a while). I remember being impressed by some of the demos of "The Game With No Name". I was a bit older than these guys though, and more interested in "serious" computing, but the connections I made through that club also helped kick off my computing career (academic/telecoms/finance).
cmacleod4··on Ask HN: Extremely brazen phone scammer – what to do?
Recently I ask them cheerfully: Hey, nice to hear from you, how's business, did you scam a lot of people today?
cmacleod4··on Tcl for Web Nerds (2011)
This is pretty old, but still has some useful introductory info. Be aware that the documentation links point to Tcl 8.4 which is now obsolete, the current version is Tcl 8.6.

For a simple contemporary Tcl/web framework, take a look at Wapp - https://wapp.tcl.tk/home/doc/trunk/README.md

cmacleod4··on Why I'm Tcl-Ish
Ok, you don't often need to build your own control flow constructs, but it was exactly that capability that allowed the very successful Expect utility to be built on top of Tcl - https://en.wikipedia.org/wiki/Expect .
cmacleod4··on Why I'm Tcl-Ish
There is quite a wide range of extensions available, if you need to access an external library it's pretty straightforward to wrap it with Swig (https://wiki.tcl-lang.org/page/Swig), and creating new commands in C is also fairly easy, so I'm doubtful that there is much that's really impossible in Tcl :-)
cmacleod4··on Why I'm Tcl-Ish
I'm the blogger here - I think my main point is that the perceived oddness is inextricably linked to Tcl's strengths.
cmacleod4··on Tech giant up for sale must be saved for Britain (ARM)
I posted this yesterday also - https://news.ycombinator.com/item?id=24098096
cmacleod4··on Why it’s hard to kill the Bloomberg terminal (2019)
From the point-of-view of a developer working there, in practice this means that if something breaks in an application I'm responsible for, e.g. when the markets open in Tokyo, which is 5am my time, the company can and will phone me and expect me to log in right away and do whatever it takes to fix the problem :-)
cmacleod4··on Why it’s hard to kill the Bloomberg terminal (2019)
I am one of the devs at Bloomberg, and I'm quite glad not to be accessed by random customers ;-)
cmacleod4··on Who Says Tcl Rules?
Take a look at http://www.androwish.org/index.html/wiki?name=jsmpeg+SDL+Vid... for an experimental approach to displaying Tcl/Tk applications in a web browser.
cmacleod4··on Why Is the Migration to Python 3 Taking So Long?
"ESO VLT has just started to transition from Tk/Tcl to Python" - they might regret this, new Tcl releases tend to take backward compatibility much more seriously than Python :-)
cmacleod4··on Tcl: Everything Is a String
This can be tricky, because programming based on events tends to push you into writing everything as event-handlers, but they get awkward for long-running stateful computations. However Tcl has had coroutines for about 10 years now, and those allow you to bypass this problem completely.

I gave short presentation about applying this approach to scripts combining a responsive GUI with managing multiple parallel Expect sessions at www.eurotcl.eu/program.html#Macleod .

← PreviousPage 6 of 7Next →