HackerTrans
TopNewTrendsCommentsPastAskShowJobs

Treblemaker

no profile record

comments

Treblemaker
·5 ay önce·discuss
The objections to tcl I see most often seem to reflect an outdated or incomplete understanding of the language and its capabilities.

As with many interpreted languages, maybe it's just too easy to iterate interactively with code until it "just works", rather than taking the time to design the code before writing it, leading to perception that it is a "write-only" language.

However, despite its reputation, even Perl can be written in a way that is human-readable. I agree with you that it is more a reflection of the programmer or the work environment than of the language itself.
Treblemaker
·5 ay önce·discuss
> When "everything is a string" then you have no choice but to literally treat everything as a string.

As someone who has been developing tcl almost daily for more than 30 years, both object oriented and imperative code, I have not found it necessary to think this way.

Can you explain what leads you to this conclusion?
Treblemaker
·5 ay önce·discuss
Similar amount of experience with tcl here (since dc_shell-t was released). I love working in tcl. It can be expressive, redable, sufficiently performant, and makes it easy and fast to develop and test new features and functions in even very complex EDA design flows with 100k lines of code.

I find it curious that so many of the criticisms of tcl are that it doesn't have some feature or behavior of some other language. That has never stopped me from accomplishing what is needed with clear, elegant code.

Rule #10 in the Dodekalogue [0] explains why your preferred comment style is not supported: a command is not expected immediately after the last argument of the previous command. Terminate the command per rule #1 and it is perfectly fine:

puts "Hello" ;# A comment

Isn't that the same number of characters one would type to start a javascript comment? //

Almost any programming language can be beautiful in its simplicity if you work with it on its own terms. tcl doesn't deserve the hate.

[0] Dodekalogue is the common name for the twelve rules that define the syntax and semantics of Tcl. https://wiki.tcl-lang.org/page/Dodekalogue
Treblemaker
·geçen yıl·discuss
Search upthread for "Klines" and "80s"
Treblemaker
·geçen yıl·discuss
100's of Klines of code in continuous development over the last 10 years, still currently maintained and continually adapted for new use cases in Electronic Design Automation (EDA) for logical and physical chip design and verification.

Of course it's possible to create "write-only" code in tcl. But tcl is hardly unique in that respect. Good code design and coding practices help to avoid most issues just as in many other languages.

"Everything is a string" (EIAS) is not what leads to a complete mess; it's failing to go beyond an initial, superficial understanding of the syntax and language capability and general lack of discipline that lead to un-fixable messes.
Treblemaker
·geçen yıl·discuss
Many of the big EDA (Electronic Design Automation) tools continue to use tcl for the command line interface. Some users have created quite complex, customizable design flows spanning multiple tools and even development infrastructure (much, much more than just "stitching tools together) using tcl.
Treblemaker
·geçen yıl·discuss
> It fakes having numbers, which works, but has to be slow.

This hasn't been the case for 25 years, since the 8.0 release. Tcl will store data internally in whatever format it was last used, and only convert if needed. Good coding practice pays attention to this to avoid "shimmering" a value back and forth between different internal representations unnecessesarily.

> It lacks arrays;

It does have associative arrays; and lists when used appropriately can fulfil many roles that would otherwise have been implemented in an array in another language

And tcllib[0], a collection of utilities commonly used with tcl, provides support for a number of different and complex data structions [1], many of which are written in C, not just more tcl scripts.

It's worth noting that Stallman's criticism linked above is more than three decades out of date. As with any programming tool, once you go beyond a superficial understanding of basic syntax, it can serve as a a very expressive and sufficient language.

[0] <https://www.tcl-lang.org/software/tcllib>

[1] <https://core.tcl-lang.org/tcllib/doc/trunk/embedded/md/toc.m...> (see: Data structures)
Treblemaker
·2 yıl önce·discuss
I came here to say this. But also, for those who don't know. this is referring to "Project Hail Mary" by Andy Weir, author of "The Martian".

(Caution, many spoilers in the Wikipedia article) https://en.wikipedia.org/wiki/Project_Hail_Mary
Treblemaker
·2 yıl önce·discuss
De Havilland Dash 8, for example.

https://www.youtube.com/watch?v=h3voCL_CK18&t=14s
Treblemaker
·2 yıl önce·discuss
I am not aware of any reports of aircraft struck by meteors. However,there are planes which have been damaged or destroyed by debris on the runway [0]

[0] https://en.wikipedia.org/wiki/Foreign_object_damage#Runway_d...
Treblemaker
·3 yıl önce·discuss
The perception that ADHD is nothing more than the inability to "sit still and pay attention" is very wrong and very out of date. Before you comment further I would strongly recommend you watch a series presented by one of the leading researchers in neurological basis of ADHD, Dr. Russell Barkley, called "ADHD: "The 30 Essential Ideas Every Parent Needs to Know" [1].

I struggled with many of these things -- primarily time blindness, executive function and impulsiveness -- for most of my almost six decade life, and finally understanding what was happening -- and getting help for it -- has been life-changing.

As one friend put it, he would cut off his left testicle if it meant having working executive function. The idea that I -- and friends and acquaintances who share similar experiences -- are faking it is ignorant and insulting. That you do not suffer is a gift; be grateful. Maybe don't be so dismissive of the struggles and suffering of others.

[1] https://www.youtube.com/playlist?list=PLh4RKnr7ygXsO1ImoyB0K...
Treblemaker
·3 yıl önce·discuss
Yes, according to the documentation, braces in comments should be ignored.

However, the parser is confused by unbalanced braces in comments.

Here's a classic case that turns up occasionally during development:

  proc asdf { args } {
    # if { first draft complex condition } {
    if { final simplified condition } {
      do something
    } else {
      do something else
    }
  }
Sourcing a file with the above comment inside the proc will produce:

  missing close-brace: possible unbalanced brace in comment
Treblemaker
·4 yıl önce·discuss
TIL of Bartosz Ciechanowski. What an incredibly gifted communicator. Thank you!
Treblemaker
·4 yıl önce·discuss
Or this?

Tucker: The Man and His Dream (1988)

https://en.wikipedia.org/wiki/Tucker_(film)