Hacker GitHub

← All repos

oils-for-unix/oils

View on GitHub ↗ ★ 3,398 Python

Oils is our upgrade path from bash to a better language and runtime. It's also for Python and JavaScript users who avoid shell!

225 mentions on Hacker News by 35 people: 15 stories, 210 comments · first 2016-11-26 · latest 2025-11-06

Mentions per year 225 mentions · busiest year 2020 (52)
20082026
  1. …the biggest shell program in the world: http://www.oilshell.org/cross-ref.html?tag=ble.sh#ble.sh https://github.com/oilshell/oil/wiki/The-Biggest-Shell-Progr... ---- I did add little hack in the lexer for autocompletion of partial input.…
  2. …and all its sublanguages without any nongreedy repetitions. It's dozens if not hundreds of regexes. https://github.com/oilshell/oil/blob/master/frontend/lexer_d... Though, regular languages are more like a building block for the lexer than…
  3. Oh interesting, I have been thinking about related things for Oil: Shell as an engine for TUI or GUI https://github.com/oilshell/oil/issues/738 That came out of a discussion with someone doing a really ambitious overhaul of terminals and…
  4. …provide an even simpler method that's built in (and it also has readlink builtin to support this) https://github.com/oilshell/oil/issues/587
    comment by chubot · 2020-05-22 · in Good coders borrow, great coders steal
  5. That's the point of Oil: https://github.com/oilshell/oil A new Unix shell. Our upgrade path from bash to a better language. It runs thousands of lines of existing shell scripts unmodified, but there's also a brand new language that will be…
  6. I started down this path last year: https://github.com/oilshell/oil/wiki/Shellac-Protocol-Propos... but cut it out of the Oil project (for the forseeable future). Right now Oil takes the approach of running existing bash completion…
  7. …also suffers from the problem where it doesn't list the commands. I filed a bug for Oil shell here: https://github.com/oilshell/oil/issues/751 I mentioned a couple other "frameworks" there like just, go, Taskfile, etc. But it should really…
    comment by chubot · 2020-05-15 · in Polyglot Makefiles
  8. …That's unfortunately an open problem. As I mentioned here, lexing is "solved" but parsing isn't: https://github.com/oilshell/oil/wiki/Why-Lexing-and-Parsing-... Here are what some recent languages do: Go: Maintain a written spec [1], with…
  9. …be parsed efficiently with particular algorithms. And some people reject CFG in favor of PEG, etc. https://github.com/oilshell/oil/wiki/Parsing-Models-Cheatshe... ---- That is, the recursive grammar issue is not "settled". Whereas regular…
    comment by chubot · 2020-04-23 · in Incremental Regular Expressions (2012)
  10. …of Oil, so you can implement as a library in another language. I'm interested in help too: https://github.com/oilshell/oil/issues?q=eggex+label%3Aeggex One easy contribution is to to translate it back to PCRE syntax, because that's a very…
    comment by chubot · 2020-04-22 · in Incremental Regular Expressions (2012)
  11. …all in bash. https://github.com/akinomyoga/ble.sh Some details from the author on this wiki page: https://github.com/oilshell/oil/wiki/How-Interactive-Shells-... Other big shell programs: https://github.com/oilshell/oil/wiki/The-Biggest-She…
    comment by chubot · 2020-04-21 · in Show HN: Desed – Debugger for Sed
  12. …page with shell: http://www.oilshell.org/releases.html And it's separated into 3-4 functions here: https://github.com/oilshell/oil/blob/master/devtools/release... ---- Shell falls down when you have to generate complex logic as with tables…
    comment by chubot · 2020-04-03 · in Notes on the M4 Macro Language (2008)
  13. ▲ 4
    How Interactive Shells Work
    story by pcr910303 · 2020-03-27 · 0 comments
  14. …really make sense IMO, but there are a bunch of links here about having a shell-agnostic system: https://github.com/oilshell/oil/wiki/Shell-Autocompletion https://github.com/oilshell/oil/wiki/Projects-Already-Doing-...…
    comment by chubot · 2020-03-06 · in Hacking up your own shell completion
  15. …remember all the option names. But I just fixed that and it will be out with the next Oil release. https://github.com/oilshell/oil/commit/ddac119254f9a7045dca7... If anyone wants to add more strictness options to Oil to avoid these types…
  16. ▲ 3
    Compact AST Representation
    story by tosh · 2020-02-05 · 0 comments
  17. …are some (disorganized) links, including the one by Chris Lattner mentioned in a sibling comment: https://github.com/oilshell/oil/wiki/Compact-AST-Representat...
    comment by chubot · 2020-02-03 · in Pointer Compression in V8
  18. …but even that's not enough. Oil has shopt -s strict_errexit and more_errexit that fixes even more. https://github.com/oilshell/oil/issues/476 I'm still looking for feedback and there's probably one more thing I want to change. Although the…
    comment by chubot · 2020-02-01 · in Writing Safe Shell Scripts (2019)
  19. …of many/most parsers is dominated by object allocation. Some vaguely related stuff here: https://github.com/oilshell/oil/wiki/Compact-AST-Representat... Anyway I don't think this will make it into Oil any time in the next year, but I think…
  20. …or you can even distribute them to other machines. I currently run benchmarks on two machines. https://github.com/oilshell/oil/blob/master/benchmarks/osh-p... https://www.oilshell.org/release/0.7.0/benchmarks.wwz/osh-pa... Also, I wrote…
    comment by chubot · 2020-01-27 · in Ambitions for a Unix Shell
  21. …stuff only tangentially related to the project that the author has collected as well (one example: https://github.com/oilshell/oil/wiki/ExternalResources ). this is clearly such a well-organized, thoughtful endeavor that i have absolute…
    comment by keeganpoppen · 2020-01-26 · in Ambitions for a Unix Shell
  22. …# not implemented but is consistent But I'm probably going to implement this safety feature https://github.com/oilshell/oil/issues/552 to solve the well known issue where files that look like flags can confuse code and data. e.g. 'rm *'…
    comment by chubot · 2020-01-26 · in Ambitions for a Unix Shell
  23. ▲ 1
    Shell Agnostic Completions: The Shellac Protocol
    story by pcr910303 · 2020-01-23 · 0 comments
  24. …posts. I learned a lot particularly from these: 1. http://www.oilshell.org/blog/2016/11/06.html 2. https://github.com/oilshell/oil/wiki/Shell-WTFs
    comment by zomglings · 2019-12-01 · in Shell Has a Forth-Like Quality (2017)
  25. …is to replace bash! If you know shell and Python (or C++), I maintain a "help wanted" bug label: https://github.com/oilshell/oil/issues?q=is%3Aissue+is%3Aope... It's almost there, except for speed, but it needs more testing from users. The…
    comment by chubot · 2019-12-01 · in Shell Has a Forth-Like Quality (2017)
  26. If you have some realistic shell benchmarks, please file a bug and link the files: https://github.com/oilshell/oil Oil isn't fast at the moment, but I'm currently optimizing it (auto-translating some code to C++, and eventually…
    comment by chubot · 2019-12-01 · in Shell Has a Forth-Like Quality (2017)
  27. ▲ 2
    Eggex(Oil shell): New syntax for regexes meant to be transpiled
    story by pcr910303 · 2019-11-27 · 1 comment
  28. …so I don't mess up the next time. Over time that has grown into over 1000 lines of shell, e.g. https://github.com/oilshell/oil/blob/master/devtools/release... And this is why I'm writing a shell -- because it's good for automating things…
    comment by chubot · 2019-10-14 · in How to fuck up software releases
  29. …with R, but running the benchmarks is done with shell, and creating the HTML is done with Python: https://github.com/oilshell/oil/blob/master/benchmarks/repor... (and yes this page is meant to be motivation to speed up my principled but…
    comment by chubot · 2019-10-07 · in R is a joy if you treat it like Awk
  30. ▲ 2
    Egg Expressions (Oil Regexes)
    story by chubot · 2019-09-23 · 1 comment
  31. This looks cool! I linked it on my wiki page of alternative shells: https://github.com/oilshell/oil/wiki/ExternalResources (which is cited on the first page of the thesis!) I hope that Oil can a lot of these things in a backward compatible…
  32. …used? Are you part of its development? FWIW I have my own TSV enhancement that is more modest: https://github.com/oilshell/oil/wiki/TSV2-Proposal I hope to find time to prototype it in https://www.oilshell.org/ first. Although it's very…
  33. …users can use efficiently compiled regexes. And I filed this issue to try derivatives awhile ago: https://github.com/oilshell/oil/issues/197 There is a possible performance win, but I'm not sure if it makes sense. If you see anything…
  34. …isn't ideal, but I have some plans to fix that: http://www.oilshell.org/blog/tags.html?tag=awk#awk https://github.com/oilshell/oil/wiki/Structured-Data-in-Oil
    comment by chubot · 2019-08-25 · in Introducing nushell
  35. …lshell.org/release/0.7.pre3/doc/osh-manual.htm... Well actually there's one more thing I want to fix: https://github.com/oilshell/oil/issues/179 That will fix your case, because foo is a function, and the disabling of errexit in || is…
    comment by chubot · 2019-08-25 · in Introducing nushell
  36. …are shell-ish DSLs for most Lisps here, which includes Racket, Clojure, Common Lisp, Scheme, etc. https://github.com/oilshell/oil/wiki/ExternalResources
    comment by chubot · 2019-08-24 · in The Scheme Shell (2006)
  37. …wrappers for all POSIX utils that support GNU-style options. I just filed this as an issue for Oil: https://github.com/oilshell/oil/issues/464 Note that I also plan to provide long options for all shell builtins, mentioned here:…
  38. …--help. Or any tool written in Go, or node.js, etc. I always support long options myself, e.g.: https://github.com/oilshell/oil/blob/master/test/sh_spec.py#... The only case where you don't have long options if you're trying to limit…
  39. …a list of similar ideas done in essentially every language, including every popular Lisp variant: https://github.com/oilshell/oil/wiki/ExternalResources#inter...
  40. …gone down a similar rabbit hole, and written a bunch of code too in that direction. Resources here: https://github.com/oilshell/oil/wiki/Compact-AST-Representat... I wouldn't be surprised that somebody else thought of the same idea -- that…
  41. …own parser. OSH uses the same parser for both the interpreter and the completion engine. https://github.com/oilshell/oil/issues/208#issuecomment-4496...
    comment by yorwba · 2019-06-14 · in What's Happened Since February?
  42. …and parsing of strings, but also being able to use plain tools like "grep", and probably SQL. https://github.com/oilshell/oil/wiki/Structured-Data-in-Oil Note that R has some popular packages that allow SQL syntax over data frames. So…
    comment by chubot · 2019-05-31 · in Better Bash History (2012)
  43. …bash-compatible shell [1]) doesn't support PROMPT_COMMAND, which tons of people appear to be using. https://github.com/oilshell/oil/issues/320 It seems like a weird hack but apparently it works for tons of things! [1] Latest status:…
    comment by chubot · 2019-05-31 · in Better Bash History (2012)
  44. …the PROMPT_COMMAND hook for stuff like this -- are you using something else, or did I miss it? https://github.com/oilshell/oil/issues/320 I will add PROMPT_COMMAND to Oil, but I'm curious if there is something else I should add to support…
    comment by chubot · 2019-05-31 · in Better Bash History (2012)
  45. …instead of writing bash completions in Rust, you could write zsh/fish/bash/Oil completions in Rust. https://github.com/oilshell/oil/wiki/Shellac-Protocol-Propos... A lot of people are already "scraping" bash completions this way, i.e. to…
    comment by chubot · 2019-05-19 · in Shell Completions in Rust
  46. There are some difference listed here: https://github.com/oilshell/oil/blob/master/doc/osh-manual.m... Those are the ones that I thought people might hit. There are surely some other differences, which may or may not matter in practice.…
  47. …completion scripts (with slight patches) (3) scripts generated by virtualenv, git-prompt.sh, etc. https://github.com/oilshell/oil/wiki/How-To-Test-OSH Testing it out is straightforward but maybe not super friendly. That's what I would like…
  48. …setting and getting variables. In C# they have something called "Red-Green Trees" that are similar: https://github.com/oilshell/oil/wiki/Lossless-Syntax-Tree-Pa... In summary, your debugger is not going to show you which nodes are red and…
    comment by chubot · 2019-03-22 · in I Don't Like Debuggers (2000)
  49. …I separated my Oil shell parser into a standalone stdin/stdout filter, which is ready to be fuzzed: https://github.com/oilshell/oil/blob/master/bin/osh_parse.py https://github.com/oilshell/oil/issues/171 I'm already testing it by running…
  50. …and shell. There was some discussion here, even related to bats, but I'm not sure where it went: https://github.com/oilshell/oil/issues/200 [1] The other being how hard it is to write an autocompletion script!
    comment by chubot · 2019-02-21 · in Testing Bash with BATS