Live data from Hacker News

GitHub – nushell/nushell: A new type of shell

github.com

341–350 of 411 posts

Re: GitHub – nushell/nushell: A new type of shell

#341
post #242

Earlier quoted context omitted.

It boggles my mind that people use a language where x = 0 doesn't work and x=$y is a security flaw

> x = 0 doesn't work Maybe it's just me, but I love how the assignment syntax can be used just for a single command: 'MANPAGER=cat man' is a lot nicer than '(MANPAGER = cat; man)'. > and x=$y is a security flaw When is variable assignment a security flaw?

if $y is untrusted input then you need to quote it or you've introduced shell injection attack to the script.

Re: GitHub – nushell/nushell: A new type of shell

#343

Earlier quoted context omitted.

I didn't find it clear, I also thought it was a GitHub project.

I found it clear it wasn't a GitHub project.

The point of a title is to be obvious to everyone (to the extent possible) -- the fact that we found it obvious doesn't remove their confusion.

Re: GitHub – nushell/nushell: A new type of shell

#344

The title is somewhat misleading and makes it seem like this is a GitHub company initiative rather than a project just hosted on GitHub. I've not seen this title format on HN before. Could it be changed?

dang will most certainly change this title when he spots it. I have been tracking HN title changes and they follow a very predictable format. Here are some recent results,

      Universities have formed a company that looks a lot like a patent troll
  was Universities Have Formed a Company That Looks a Lot Like a Patent Troll
  
      Linux with “memory folios”: a 7% performance boost when compiling the kernel
  was Linux with “memory folios”: got a 7% performance boost when compiling the kernel
  
      Strategic Scala Style: Principle of Least Power (2016)
  was Strategic Scala Style: Principle of Least Power (2014)
  
      The rise of E Ink Tablets and Note Takers: reMarkable 2 vs Onyx Boox Note Air
  was The Quiet Rise of E Ink Tablets – ReMarkable 2 vs. Onyx Boox Note Air
  
      Big tech face EU blow in national data watchdogs ruling
  was EU court backs national data watchdog powers in blow to Facebook, big tech
  
      Emacs Love Tale by sdp
  was Emacs Love Tale by Sdp
  
      Future from a16z
  was Andreessen Horowitz goes into publishing with Future
  
      Richard Feynman’s Integral Trick (2018)
  was Richard Feynman’s Integral Trick
  
      The Tinkerings of Robert Noyce (1983)
  was The Tinkerings of Robert Noyce
  
      NIH study offers new evidence of early SARS-CoV-2 infections in U.S.
  was NIH Study Offers New Evidence of Early SARS-CoV-2 Infections in U.S.
  
      Time to sunburn
  was It's surprisingly easy to get a sunburn
  
      The home computer as a cultural object is physically vanishing (2007)
  was The home computer as a cultural object is physically vanishing
  
      Mackenzie Scott gives away another £2B
  was Billionaire Mackenzie Scott gives away another £2bn
  
      A pilot program to include spirituality in mental health care
  was Psychiatry Needs to Get Right with God
  
      What we learned doing Fast Grants
  was What We Learned Doing Fast Grants
  
      Joplin – an open source note taking and to-do application with synchronisation
  was An open source note taking and to-do with synchronisation capabilities
  
      Show HN: Influence, a Go-inspired 1-minute board game
  was Show HN: Influence, a Go-inspired 1min board game
  
      J Concepts in SuperCollider
  was J Concepts in SC (SuperCollider)
  
      Joplin – an open source note taking and to-do application with synchronization
  was Joplin – an open source note taking and to-do application with synchronisation
  was An open source note taking and to-do with synchronisation capabilities
  
      Forzak: A website that curates high-quality educational content
  was Forzak: A website that curates high-quality educational content on the Internet
  
      DraftKings: a $21B SPAC betting it can hide its black market operations
  was DraftKings: A $21B SPAC Betting It Can Hide Its Black Market Operations
  
      We’re no longer naming suspects in minor crime stories
  was Why we’re no longer naming suspects in minor crime stories
  
      Operation Midnight Climax: How the CIA Dosed S.F. Citizens with LSD (2012)
  was Operation Midnight Climax: How the CIA Dosed S.F. Citizens with LSD
  
      Modelplace: AI Model Marketplace by OpenCV
  was Modelplace, the AI Model Marketplace by OpenCV
  
      Don't just shorten your URL, make it suspicious and frightening (2010)
  was Don't just shorten your URL, make it suspicious and frightening
  
      Kuhn's Structure of Scientific Revolutions – outline (2013)
  was The Structure of Scientific Revolutions
  
      How Indian Zoroastrians helped shape modern Iran
  was An Indian Religious Minority Shaped Modern Iran
  
      RFC for 700 HTTP Status Codes (2018)
  was RFC for 700 HTTP Status Codes
  
      RFC for 700 HTTP Status Codes (2012)
  was RFC for 700 HTTP Status Codes (2018)
  was RFC for 700 HTTP Status Codes
  
      How to Be a Stoic (2016)
  was How to Be a Stoic
  
      Researchers fear a scenario in which smart speakers feed sleepers subliminal ads
  was Are advertisers coming for your dreams?
  
      Google Messages end-to-end encryption is now out of beta
  was Google Messages end-to-end encryption no longer in beta
  
      Stabel: A pure concatinative programming language, now with modules
  was Stabel v0.2.0-alpha: A pure concatinative programming language, now with modules
  
      Recording of the week: A Yanomami ceremonial dialogue
  was Recording of the week: A Yanomami ceremonial dialogue
  
      Stabel: A pure, concatenative and statically typed programming language
  was Stabel: A pure concatinative programming language, now with modules
  was Stabel v0.2.0-alpha: A pure concatinative programming language, now with modules
  
      Technology Saves the World
  was Andreessen: Technology Saves the World
  
      Why bother with old technology? (2013)
  was Restoration of vintage computers – Why bother with old technology?
  
      What Happens If an Astronaut Floats Off in Space? (2013)
  was What Happens If an Astronaut Floats Off in Space?
  
      Legal expert says Tether and Binance Coin are likely picks for SEC lawsuit
  was Legal expert says Tether and Binance Coin (BNB) are likely picks for SEC lawsuit
  
      If you think psychological science is bad, imagine how bad it was in 1999
  was If you think Psychological Science is bad, imagine how bad it was in 1999
  
      Six charged in Silicon Valley insider trading ring
  was Six Charged in Silicon Valley Insider Trading Ring

Re: GitHub – nushell/nushell: A new type of shell

#345
post #327

Earlier quoted context omitted.

> shbang'd to bash. Good. Better: #!/bin/sh Best: #!/bin/sh and also not assuming bash anyway!

I wouldn't say putting a sh shebang and assuming bash is better. With a bash shebang at least you're honest about it.

Well yes, absolutely. I phrased that poorly, what I meant was like '/bin/sh is better... Especially if it actually works' or something.

It's easily done though, I've often thought I've written something POSIX compatible and then had shellcheck say nope.

Re: GitHub – nushell/nushell: A new type of shell

#346
post #114

Earlier quoted context omitted.

Can you elaborate?

Not OP, but: MMC = Microsoft Management Console, the collection of "snap in" GUI config tools for all the advanced features beyond Control Panel. MMC can control remote computers, but I believe only one at a time? Unless it's something through Group Policy. Now, the APIs exist to do all this remotely (DCOM), but good luck discovering what they are! And the minimum level of program you'd need to call them would be a C…

Some snapins can connect to multiple servers/computers at once, such as the DHCP MMC snapin. Others can't, like Event Viewer.

IMHO Microsoft went all-in on the object-oriented paradigm and tuned the operating system to work with C++ ABIs and expecting administrators to use tools that use Microsoft or vendor provided DLLs.

Re: GitHub – nushell/nushell: A new type of shell

#347
post #222

Earlier quoted context omitted.

Is it easier? Because I would expect man free to go to the C stdlib.h definition. You’re just familiar with the former and not the latter currently.

Your assumption is wrong. Why would you double down on a bad argument? Don't you have a linux environment to type man free in before making that claim? It's just an overall bad argument. I don't see how `Get-CimInstance -Class Win32_OperatingSystem` is in any way memorable https://www.google.com/search?q=man+free

How is expecting man free to point to the stdlib function a bad argument? man malloc goes to the function so why shouldn't man free? How would anyone just know that the command free exists _without already being familiar with a linux environment_ ?

Re: GitHub – nushell/nushell: A new type of shell

#348

Earlier quoted context omitted.

Powershell is a pretty neat scripting language, especially if you manage Windows boxes or have lots of .net stuff around. It's not a good interactive shell environment though. The commands are way too verbose and the syntax feels clunky for keying in.

I disagree. Yes, the syntax is verbose so that you get sensical names instead of things like 'awk' and 'grep', but that isn't a big deal because a) tab complete[0], and b) user-definable aliases. [0] tab complete works on cmdlets, switches, and variables .

And if one misses the short incomprehensible aliases, the common commandlets have those by default anyway. `cat` is `gc`, `grep` is `sls`, `ls` is `gci`, ...

Same for switches and parameters. You don't have to miss `rm -rf foo/`, it's just `ri -re -fo foo/`

Re: GitHub – nushell/nushell: A new type of shell

#349

This feels extremely like PowerShell, from all the examples, and even cites "draws inspiration from projects like PowerShell", so "a new type of shell" feels very disingenuous unless it has additional novel properties that aren't evident just from these. There's also no support for variables yet if the page is to be believed, which means there's 0 chance of me using this for more than 5 minutes right now. (I'm not tr…

I took it to mean that it was a new type of shell from the perspective of unix/osx users who were presumably their target audience, and who are an audience who might either not know what PowerShell is about our discount it is just a "windows thing" and therefore not relevant to their life. So "new" in the sense of "new to you". You could probably point to just about any technology that claims to be new and pull it ap…

Sure, all work is theft, for some value of theft, but as I've said in a couple of other replies:

* "all these ideas have been done before, in various places" is one thing, "all these ideas have been done before in one program in the same role on all the same platforms" makes me feel like "new [to users who haven't used this other thing shipped with the OS for years on one of the platforms]" is insufficient to use without more explicit qualifiers

* I may be oblivious and missing some cool example, but the flip side to "all ideas implemented before" is "no new tricks", and when someone describes something to me as "a new type of X", I really expect at least one novel thing or composition of things to be present.

After all, I wouldn't describe TIFF as a "new type of image format" just because many people who haven't touched photo/graphics editing probably haven't encountered it, or IE4 as "a new type of web browser" (now) just because a significant fraction of internet users are not old enough to have used it when it had market share. (When it was first released, Active Desktop, for example, while a security nightmare, was indeed a new thing for almost all users.)

Re: GitHub – nushell/nushell: A new type of shell

#350

Earlier quoted context omitted.

Your assumption is wrong. Why would you double down on a bad argument? Don't you have a linux environment to type man free in before making that claim? It's just an overall bad argument. I don't see how `Get-CimInstance -Class Win32_OperatingSystem` is in any way memorable https://www.google.com/search?q=man+free

man free for me shows the BSD library functions manual, maybe it's different in Linux

It's the same on Linux, depending on what manpages you have installed. free(1) is the binary. free(3) and free(3p) are the C function.

If you have more than one installed, `man` might decide to show the first one or it may interactively ask you to pick one, depending on whether it's been configured to be "posixly correct" or not.

Post reply on HN