So Many Programming Languages

แชร์
ฝัง
  • เผยแพร่เมื่อ 27 ม.ค. 2025

ความคิดเห็น • 391

  • @edumorango
    @edumorango 10 หลายเดือนก่อน +608

    Lua on the frontend, Elixir on the backend and Turso database - the Brazilian stack

    • @ReverseJP
      @ReverseJP 10 หลายเดือนก่อน +77

      Brazil mention

    • @weirdnerd1309
      @weirdnerd1309 10 หลายเดือนก่อน +51

      Basado

    • @Toonj00
      @Toonj00 10 หลายเดือนก่อน +5

      now read it backwards in ancient agyptian

    • @pc1234asdf
      @pc1234asdf 10 หลายเดือนก่อน +8

      If you're not using Elixir for a web backend all that means is you don't know the power of the beam vm.

    • @mattburgess5697
      @mattburgess5697 10 หลายเดือนก่อน +1

      @@pc1234asdfOr you really like it but you just struggle to find the time to learn it well enough to use your current stack. :(

  • @PhatPazzo
    @PhatPazzo 10 หลายเดือนก่อน +154

    I’m paraphrasing here:
    “There are people who haven’t used Lua for more than three hours, but still have strong opinions.”
    “I don’t have strong opinions a Python. I’ve only used it for about 100 hours.“
    Earlier: “Haskell is useless.”
    Come on, you’re just trolling us now, aren’t you?

    • @plaintext7288
      @plaintext7288 10 หลายเดือนก่อน

      Haskell is useless (I haven't written a single line of code in it)

    • @yash1152
      @yash1152 10 หลายเดือนก่อน +3

      he does on haskell, no surprise
      > _"common, u're just trolling us now, arent u?"_

    • @renx81
      @renx81 10 หลายเดือนก่อน +15

      He doesn't really know what he's talking about yet thinks he does (as evidenced by his take on WASM). Classic Dunning-Krueger.

    • @vojtastruhar8950
      @vojtastruhar8950 10 หลายเดือนก่อน

      if lang == "Haskell":
      raise UselessException()

    • @BosonCollider
      @BosonCollider 10 หลายเดือนก่อน +2

      Judging from his time learning ocaml, he doesn't have the background to evaluate Haskell imho. I don't necessarily disagree with the conclusion due to the ecosystem, but Haskell as a language does have some really amazing things that would blow his mind and that more mainstream languages should have
      In particular I don't think prime has tried a language with Software Transactional Memory yet (i.e. like Haskell, Clojure, and pypy before the python3 schism). You just write threaded shared-memory programs without any channel or message passing boilerplate, and it just works without locks or race conditions because the language just has support for transactions and optimistic concurrency like in a SQL database.

  • @nathanevans1064
    @nathanevans1064 10 หลายเดือนก่อน +85

    You might think you hate MATLAB but use it for 100 hours and then you’ll really hate it

    • @philsburydoboy
      @philsburydoboy 10 หลายเดือนก่อน +10

      100%. Rewrote an entire neuroscience lab’s operations software in C# because their matlab implementation was insane.

    • @CockatooDude
      @CockatooDude 10 หลายเดือนก่อน +2

      Use it for anything control theory related though and you'll love it more than anything.

  • @OzzadarDev
    @OzzadarDev 10 หลายเดือนก่อน +53

    Prime just made the classic argument for mmos for Lua:
    “Dont worry, it gets good after the tutorial!”

    • @Xeit
      @Xeit 10 หลายเดือนก่อน +2

      After 200 hours*

    • @OzzadarDev
      @OzzadarDev 10 หลายเดือนก่อน +2

      @@Xeit modern tutorials in video games

  • @archimedesbird3439
    @archimedesbird3439 10 หลายเดือนก่อน +60

    10:45 If you could read Cyrillic...

    • @max_me_is
      @max_me_is 10 หลายเดือนก่อน +5

      Sneaky TOS

    • @ProtossOP
      @ProtossOP 10 หลายเดือนก่อน +3

      We’ve got a snitch over here

    • @ivanjermakov
      @ivanjermakov 10 หลายเดือนก่อน +4

      No surprise twitch mods are very strict about being english-only.

    • @JohnSmith-yl2fh
      @JohnSmith-yl2fh 10 หลายเดือนก่อน +2

      Ruzzians everywhere

    • @nerdError0XF
      @nerdError0XF 10 หลายเดือนก่อน +1

      Лол

  • @d.-_-.b
    @d.-_-.b 10 หลายเดือนก่อน +180

    Running an entire company on Web Assembly apps gives me an OrgWASM

    • @b3owu1f
      @b3owu1f 10 หลายเดือนก่อน +5

      Speaking my language. Extism is next level WASM.. making it seamless/easy to support most languages in just about any host language/platform with the bonus of sandboxed safety per module and in many causes much improved performance over host language.

    • @Real-Name..Maqavoy
      @Real-Name..Maqavoy 10 หลายเดือนก่อน

      You clearly can't spell.. #@d.-.-.b

    • @dgo4490
      @dgo4490 10 หลายเดือนก่อน

      Yeah if all you have is crap software that doesn't get massacred by wasm's poor performance, lack of features and poor scalability.

    • @b3owu1f
      @b3owu1f 10 หลายเดือนก่อน

      @@dgo4490 Wasm's poor performance? That depends on what language you are using to write and target wasm for. Zig, Rust and C put out really good wasm code. The runtimes on various languages may not be great, but they are improving as well all the time. Took the JVM almost 2 decades to improve performance noticeably. WASM is already more performant in most runtimes. I mean I guess if you are running WASM in NodeJS and writing WASM with NodeJS.. you may have a valid point. But write some WASM in Zig or Rust or even Go if you can get past Go runtime being part of each .wasm output, and you can get some pretty good performance.

    • @d.-_-.b
      @d.-_-.b 10 หลายเดือนก่อน +1

      It's definitely not easy to achieve when you suffer from a periodic monotile dysfunction, known as Flaccembly.

  • @Robin_Goodfellow
    @Robin_Goodfellow 10 หลายเดือนก่อน +9

    I have fond memories of Lua. My compilers class in college did a semester long assignment where we built a lexer, parser, and interpreter in Lua. That professor's unit tests, to this day, are some of the best I've ever encountered. Passing those tests was like crack.

  • @leetaeryeo5269
    @leetaeryeo5269 10 หลายเดือนก่อน +2

    That whole WASM talk really reminded me of the pro/con debates about targeting JVM/.NET, and how we used to have Java in the browser with Java Applets. Gives me a lot of flashbacks there with the whole "compile to WASM/JVM and run everywhere!" argument.

  • @jack-d2e6i
    @jack-d2e6i 10 หลายเดือนก่อน +12

    Odin is super clean syntax and readable.

  • @FrodoAlaska
    @FrodoAlaska 10 หลายเดือนก่อน +23

    Man, I really enjoyed this video actually. Just sitting down and talking about shit, hearing Prime's crispy voice in 1.5x speed. Listening to Prime--an actual experienced developer--talk about these topics that get discussed constantly is very... refreshing? Listening to you feels worthwhile, while reading about these topics on twitter/X where everyone thinks they're the second coming of John Carmack is soul-sucking. I'm all for the reaction content (those are amazing as well) but you just can't get better than a one and one discussion with the one and the only Prime.
    And Rust can suck my big balding head.

    • @dacam29
      @dacam29 10 หลายเดือนก่อน +3

      It is even better at 3X 😏

  • @KyleHarrisonRedacted
    @KyleHarrisonRedacted 10 หลายเดือนก่อน +6

    “You should use narrow scoped languages”
    / PHP’s confidence was boosted

  • @MyCodingDiary
    @MyCodingDiary 10 หลายเดือนก่อน +2

    Every video you make is a masterpiece. Keep 'em coming!

  • @ForeverZer0
    @ForeverZer0 10 หลายเดือนก่อน +44

    0:16 "Odin is geared towards graphics" is a real misnomer about Odin that is purposefully pushed to try and give the language an identity. It does absolutely nothing special with graphics, nor have anything "built-in" to the language for graphics. The took the code from other developers bindings projects for OpenGL, GLFW, etc., and slapped them into the "vendor" directory to be available for a default install. There is no special "low-level language optimization" being don, anyone could accomplish the same by simply adding/creating these bindings themselves, as is done with literally every other language and project that uses them. It is mildly convenient to get a project up and running quickly without, but anyone who is serious about making a game are going to spend an afternoon to fine-tune some custom bindings that are purpose built for their needs.

    • @JohnDoe-vb3ks
      @JohnDoe-vb3ks 10 หลายเดือนก่อน +10

      Well, convenience matters, a lot. Also for every one "who is serious about making a game" there's about X times people, who'll just download Unity/Godot/whatever and play with it. So making something sitting in between "just download Godot binary, and you're ready to go" and "spend an afternoon to fine-tune some custom bindings" may be quite valuable.

    • @ForeverZer0
      @ForeverZer0 10 หลายเดือนก่อน +5

      @@JohnDoe-vb3ks If you are using Godot/Unity, then you aren't using Odin, so not sure how that is even relevant. Saving a copy/paste of a file or two one time could be classified as "convenient" in the strictest sense of the word, but let's not pretend that it is some extraordinary feature that makes an entire language geared towards a specific "graphics programming. Actual language features and syntax would be far more relevant, not a copy/paste of files to the vendors directory.
      I have nothing to against Odin, I merely pointed out that objectively there is nothing about it that makes it "geared towards graphics" more/less than other language, and this reputation has been artificially pushed and parroted.

    • @wondays654
      @wondays654 10 หลายเดือนก่อน +6

      @@ForeverZer0 "Odin is a general-purpose programming language with distinct typing built for high performance, modern systems and data-oriented programming. " is literally their definition of what the language is. I don't know how the whole "graphics programming" was purported. From what I understand, Odin was created because Ginger Bill didn't like some things in C and made a language for "the joy of programming". So I completely agree with you.

    • @azmanic
      @azmanic 10 หลายเดือนก่อน +3

      ​@@ForeverZer0 "artificially pushed and parroted" why do you make is sound like some conspiracy theory haha? I think a lot of it comes from the fact that is has a built in way of dealing with SoA and AoS and methods to access them in very useful ways which is a big thing in graphics and game programming (along with it just being a systems language). Also the fact that the only real production software written in Odin is graphics based (JangaFX suite).

    • @kenneth_romero
      @kenneth_romero 10 หลายเดือนก่อน +4

      @@ForeverZer0the joy of programming is the big one. this language has made me enjoy programming so much. I actually have been just building stuff for fun, rather than school or to get better for a job.
      also heavy influences from Go and Python are apparent and really do push the "just get stuff done" mentality of the language. Wish the tooling for it were better, but Windows has the best support rn.

  • @orterves
    @orterves 10 หลายเดือนก่อน +4

    5:47 this is a very bad take without explaining further. A repo that comes with a devcontainer configuration is strictly better than a repo without one because *you don't have to use the devcontainer if you don't want to* . But the people who do want to get a simple self contained and consistent environment to work in

  • @andythedishwasher1117
    @andythedishwasher1117 10 หลายเดือนก่อน

    lol my dev stack almost centers on Docker, but the whole point of the stack is to avoid actually centering on anything, so I have non-Docker ways of running the whole thing alongside the Docker way, both baked into separate automation handles. I make options for everything and depend on nothing I can avoid depending on.

  • @Randorandom232
    @Randorandom232 10 หลายเดือนก่อน +88

    Haskell is a good language to learn functional programming.

    • @user-pe7gf9rv4m
      @user-pe7gf9rv4m 10 หลายเดือนก่อน +1

      I agree. If you use a language that "has" it but let's you do everything else too, you never end up using the functional tools since you're always gonna want to take the easy way out. Haskell makes it sink or swim. It's hard and painful certainly for a lot of people but it also means you learn a lot more and a lot faster if you can stick it out.
      Edit:
      So, Haskell (and OCaml too actually, many FP languages) a good language for the same niches that other sort of runtimed languages (CLR .NET, JVM environment, BEAM). But each of the languages think in different ways. Some people think in a more imperative squirrely-brace way, some people like an abstract declarative way which is why Go and Elixir won't really compete with each other even though they're both for concurrent live web application servers, because they appeal to two very distinct crowds of types of developers. Go is very imperative style, Elixir is functional style.
      So it's also not just about the applicability niches (web servers, game development, mobile apps, real time embedded) but also the psychologies of the people who want to do those things.

    • @SimGunther
      @SimGunther 10 หลายเดือนก่อน +4

      OCaml is also a great choice for functional programming! ❤

    • @Mth-Ryan
      @Mth-Ryan 10 หลายเดือนก่อน +2

      I agree. I learned how to solve problems in a functional approach with Haskell. And this made it much easier to learn other languages, including Rust.

    • @SimGunther
      @SimGunther 10 หลายเดือนก่อน +2

      @@Mth-Ryan The trick is to start with functional programming because if you with procedural languages first, it will make Haskell feel like a chore to write code for any project.

    • @_Lumiere_
      @_Lumiere_ 10 หลายเดือนก่อน +10

      I hear Haskell is pretty good for learning Haskell

  • @nevokrien95
    @nevokrien95 10 หลายเดือนก่อน +19

    Counter argument for narrow scoped languges:
    Learning a generic languge gives you a strong basis for anything you do.
    For instance I know a bit of elixir because I build a website with it. Now someone wants me to build a website with them.
    I am gona use python... ik python. For 3 years so I could build a stable python application

    • @arcanephysics7384
      @arcanephysics7384 10 หลายเดือนก่อน +4

      I agree, this is actually what I like about Rust. I like being able to only know one language and be able to manage okay in all kinds of different languages. Of course some languages are better, and should be preferable, in certain domains. Regardless, versatility is nice to have.

    • @tychoides
      @tychoides 10 หลายเดือนก่อน +1

      I think that the best is to use general purpose language that fits as DSL in a specific use case. Python is just like that. R is good but too much focused in stats and the ecosystem is only stats. Python has everything under the Sun. In astronomy people use to make custom scripting languages for data reduction packages. All suck. The altenative was IDL, a Matlab for images. People start discovering Python and now all astro is using Python as scripting language. I think that sometimes a DSL might be good, but the ecosystem is important too.

    • @nevokrien95
      @nevokrien95 10 หลายเดือนก่อน +1

      @tychoides what you are describing also happened with deep learning a few decades ago. This is why I known python in the first place.
      It's my second languge after java because I wanted to do ai and ai is basically just python.
      I do really like learning other languges but seeing python In webdev (django) a bit more in depth really changed how I see it as a whole.
      Like its the worst language for everything until there is tooling and packages. And then it gives you just the right amount of abstruction.

    • @vitalyl1327
      @vitalyl1327 10 หลายเดือนก่อน +1

      There is no such thing as a "general purpose" language.

    • @hamm8934
      @hamm8934 10 หลายเดือนก่อน

      @@vitalyl1327yes there is lol

  • @adjbutler
    @adjbutler 10 หลายเดือนก่อน +8

    Prime knows all languages except for Python. Amazing ignorance.

  • @samw5983
    @samw5983 10 หลายเดือนก่อน +5

    Odin is a pretty good low level good generally purpose language. The reason there's a lot of graphics/games dev around it is mainly because,
    1) There's bindings to DX, OpenGL, Vukan, SDL2, RayLib & Metal packaged with it. And if you want to uses those with a LL language that isn't C/C++, isn't OOP & easier to learn then Rust, you've got what Zig, Odin and maybe Jai;
    2) The community around Odin is still very very small. So curtain parts are going to get over enthused, to the determent of Odin. Plus the only commercial use of it is JangaFX's programs; and
    3) Not gonna lie. It do be nice for graphics programming but unlike Jai it's not explicitly built for it. It's just a nice language to use.
    You really should try to get Bill back on & try it for a week/month. Even if that's just remaking some of your old tooling.

  • @replikvltyoutube3727
    @replikvltyoutube3727 10 หลายเดือนก่อน +15

    Write frontend in Free Pascal and write backend in Free Pascal.
    Free Pascal W

    • @replikvltyoutube3727
      @replikvltyoutube3727 10 หลายเดือนก่อน +3

      These guys really basically the perfect language AND don't take money for it.. so much potential wasted

    • @freesoftwareextremist8119
      @freesoftwareextremist8119 9 หลายเดือนก่อน

      My memories of writing Pascal honestly are not that rosy. But Lazarus is pretty cool.

  • @snowSecurityneeded
    @snowSecurityneeded 10 หลายเดือนก่อน +16

    I would like alt world where lua became the language for browsers.

    • @eveleynce
      @eveleynce 10 หลายเดือนก่อน +1

      lua's main drawback is javascript's main advantage, which are the coroutines.

    • @hamm8934
      @hamm8934 10 หลายเดือนก่อน +1

      @@eveleyncethis

  • @tonyb3123
    @tonyb3123 10 หลายเดือนก่อน +9

    Odin is great for game programming in general. Not just graphics, but whole games in Raylib and SDL are delightful to make in Odin.
    I tend to prefer Zig above Odin for games myself, but mostly because I vibe with Zig's comptime. I like having the choice between the two

  • @Ari-lv8nc
    @Ari-lv8nc 10 หลายเดือนก่อน +66

    GDScript is a language with one purpose

    • @Pasora
      @Pasora 10 หลายเดือนก่อน +10

      And to me it does it pretty well. I really like the simplicity of it while still having the benefits of fast compile times and an incredibly smooth experience. Really like the async await system of it too.

    • @一本のうんち
      @一本のうんち 10 หลายเดือนก่อน +5

      it's not a programming language. it's a scripting language for 1 specific software similar to formulas in excel.

    • @lakelimbo
      @lakelimbo 10 หลายเดือนก่อน +36

      @@一本のうんち uh, what? It is a programming language... and scripting languages are also programming languages, lol

    • @RenderingUser
      @RenderingUser 10 หลายเดือนก่อน +10

      Godot mentioned. Let's goooo

    • @kshyr811
      @kshyr811 10 หลายเดือนก่อน

      it's wonderful

  • @M0du5Pwn3n5
    @M0du5Pwn3n5 10 หลายเดือนก่อน +2

    Could not disagree more. The best future for programming is one where we finally get some decent general-purpose languages again, and you can use them for basically anything.
    This "right language for the job" attitude is awful. It's true that some languages are better suited to some tasks. It's also true that learning a number of languages makes you a better programmer.
    But those benefits are profoundly outweighed by the cost of the grass-is-greener mentality that leads to developers who never learn things deeply and never become very productive because they're always looking for the hot new language that's going to make them so much more productive.
    And the benefits are also outweighed by how much effort it adds to collaboration. There's just this constant churn of needing to learn a new language to work on some new project over and over and over.
    And what makes this so much worse is that while some languages are maybe slightly better at some task than a good general purpose language, people want that to be true so badly that they distort reality to make it true. The world of programming is absolutely full of people with answers in hand desperately looking for questions. They take the tool and go out looking for problems that it might be the best tool for. And they don't find them - they invent them. They create abstraction on top of abstraction to prove that their tool is good if you use this certain abstraction. And wow, other tools aren't as good at that abstraction that was invented because this tool handles it idiomatically! And these people keep insisting that their tool is obviously the best way to do this thing even though they're 100x less productive than the people using some of the supposedly worse general-purpose tools.
    The "right language for the job" is usually an article of faith, and there's an enormous amount of confirmation bias when people find instances of it. Learning a programming language well is a huge investment, and you would be a fool not to think that affects your judgment of its utility. It makes it extremely easy to convince yourself that it really was totally worth it.
    But it isn't. The benefits, and there are some benefits sometimes - although often the claimed benefits aren't real - are just not worth it.
    The problem is that it's just been so long since we had GOOD general-purpose programming languages. You can use C, but it has all of these big unergonomic annoyances, or you can use any of these other languages that are all good at one thing, but otherwise garbage. And it's been like this so long now that people have forgotten what it was like when the good, most ergonomic languages actually were general purpose languages. That's why you're enjoying Go and feeling so productive: it's starting to go in the direction of a good general-purpose programming language. Rust tried, but then got really unergonomic. Zig is going in that direction. Odin is going in that direction. Jai looks promising.
    You say these are "low-level" or "systems level" languages, but they're not - they can express extremely high-level concepts. You can write a garbage collector in C - in fact most garbage collectors are written in C! Programming languages let you build arbitrarily complex abstractions. Any "systems language" can express higher-level concepts. That's what a function is! And it's not symmetrical. Low-level languages can express high-level concepts, but "high-level" languages mostly can't express low-level concepts to the same degree. A good systems language can express low-level concepts and also express high-level concepts that are just as ergonomic as a "high-level" language.
    Computers are not screwdrivers. CPUs are general purpose. The fundamental computation needs of one program and another are not actually THAT different. There is nothing you can't write in C -it's just that C is kind of annoying to write in compared to the niceties of some other language. We just need a new C. We do not need a million languages that waste everyone's time pretending to be 15% better at each specialized task. There are actual, general-purpose Right Answers.
    We're just so used to bad answers that we think there's no such thing as good general-purpose. We're so used to tradeoffs between piecemeal malloc and garbage collection that we find it hard to believe there are actually memory management strategies that are both performant and pleasant to work with. We're so used to languages that have to give up utility in a bunch of domains to be half-decent in one domain that we can't even imagine an actually good general-purpose language.
    Find a good C programmer and you're not going to hear a lot of "yeah, sorry, C just can't really do that". Maybe there isn't a good existing library for it, sure. And writing it in C is annoying for a lot of historical reasons, like headers and makefiles. But you're not going to hear "C can't really do that" the same way as you're going to hear "C# isn't really for that kind of application, sorry".

  • @marcusrehn6915
    @marcusrehn6915 10 หลายเดือนก่อน +1

    Have you ever built something large with a large team using Lua?
    Just curious, honestly. If less is more even in larger UI projects.

  • @MyCodingDiary
    @MyCodingDiary 10 หลายเดือนก่อน

    You're doing a fantastic job. Don't ever stop creating!

  • @markhou
    @markhou 9 หลายเดือนก่อน

    Julia for front-end, PHP back-end, and Visual Basic for middleware

  • @JH-pe3ro
    @JH-pe3ro 10 หลายเดือนก่อน +2

    Lua + Forth = a world conquest combo. Use Lua to generate code for a Forth system, and you have a really high-level setup that can also go really low-level. But you have to embrace some "building the language" as you go along. I'm already doing that, although I do use some Python for build stuff.

    • @CallousCoder
      @CallousCoder 10 หลายเดือนก่อน

      I never used lua but I like forth

  • @5tevend
    @5tevend 10 หลายเดือนก่อน

    Another issue with WASM is writing something in one language and then having to debug an issue on the browser

  • @ryangrogan6839
    @ryangrogan6839 10 หลายเดือนก่อน

    Im guilty of 6:00... i want to be sure I can squash any prod bugs during development, like CORS, reverse proxy configs, etc. I made a docker image specifically for running Django as a container but still allowing you to edit source and take advantage of hot reload

  • @alexpyattaev
    @alexpyattaev 10 หลายเดือนก่อน +1

    Wasm is for making browser games. Or 3D collab software. Any resource intensive frontend, basically.

  • @AnitaSV
    @AnitaSV 10 หลายเดือนก่อน

    wasm is also the target for bootstrap compiler for zig. That makes so much sense.

  • @thezachdrake
    @thezachdrake 10 หลายเดือนก่อน +13

    This is why I use Julia. It's designed especially for data and science computing.

    • @tychoides
      @tychoides 10 หลายเดือนก่อน

      But it is a bad scripting language and a bad system programing language. The compilation times and jit lag is still bad enough that for short scripts python is faster (I time it from the terminal). You can precompile, but still is not good enough and quite inmature. So not good for scripts. And you don't have true compilation, so no Julia libraries that you can call. I have tried to use Julia for data science and python is comparable or faster (Polars dataframes are really good). Using vectorized operations on large datasets are not advantageous in Julia. However, Julia is excellent for simulations, specially those involving differential equations. Julia makes more sense for Neural Networks that Python, but Julia cannot make libraries or executables as C++, so all work went to Python and C++. NN frameworks in Julia exist but they cannot compete with TensorFlow and PyTorch with all the money and development behind them.

    • @tychoides
      @tychoides 10 หลายเดือนก่อน

      @@fastasasharkTest Python+Polars vs Dataframe.jl, Polars is much better. Also the Julia LSP takes 10-30 secs in start. Pylance is javascript and is instantaneous. If any program in javascript is faster than your chosen language, then you have issues. Python is slow, nobody fights that. But you call C/C++/Fortran/Rust libraries. And those are fast, even with Python overhead.But Julia pretends to be a full stack, but it isn't. I would not make a script in Julia. I would not make a simulation in Python, I would use Julia. I would use C++ or Rust to make libraries. Julia is a DSL, is time to accept it.

    • @9s-l-s9
      @9s-l-s9 10 หลายเดือนก่อน

      lol
      Julia people really want it to have success, but it's just not happening

    • @the_mastermage
      @the_mastermage 10 หลายเดือนก่อน +3

      ​@@9s-l-s9I would like Julia to have success because it's just plain better for my use case which is mainly scientific programming
      So I want to crunch alot of numbers quickly. And also don't want to stay as close to my scientific notation as possible. Meaning less nested loops (which you can't avoid in Mathematical Sciences because you have indexes over which you iterate.)
      But I am not without criticism. The inability to compile to binary is a crucial flaw, while not for my intends I don't understand why they do not have this.
      Additionally I find the Julia way of doing traits very lackluster and I would like to have interfaces included. Instead of weird abstract supertyping

  • @j_stach
    @j_stach 9 หลายเดือนก่อน

    Starting arrays at 1 is superior because the length of the array is the same value as the greatest index. No "len - 1" everywhere. Lua is beautiful

  • @Gennys
    @Gennys 10 หลายเดือนก่อน +1

    When he's talking about WASM is this the same thing that a long time ago they compiled doom to run on the browser with? Or was that a different project?

  • @kiddkai
    @kiddkai 8 หลายเดือนก่อน

    I use lua extensively for openresty development earlier in my career to route traffic’s dynamically down to all the microservices the company build, pretty fun language to work with.

  • @Heater-v1.0.0
    @Heater-v1.0.0 10 หลายเดือนก่อน +15

    Who is getting burned by Rust?
    Rust works at a really low level and people have happy experiences using it bare metal on embedded micro-controllers etc. Rust works at an abstract enough level people use it happily for doing things on the server they would otherwise done in node.js or whatever.

    • @Heater-v1.0.0
      @Heater-v1.0.0 10 หลายเดือนก่อน +6

      @pnk4996 I don't know if Rust is "the best language", whatever that means. However it can do everything all the other dozen and more languages I have had to learn and use in my 40 year programming career could do. With the huge bonus that Rust provides in correctness and reliability over compiled languages, and the huge boost in performance over interpreted languages.

    • @parkourbee2
      @parkourbee2 10 หลายเดือนก่อน +3

      Yeah I'm currently learning rust and I love most of the design choices and can imagine myself using it for like everything... once I've actually learned it. At least one catch is the upfront cost of learning it, which isn't negligible. Not really a cost if you're coming from C++, but coming from garbage-compiled langs and there's a lot to learn.

    • @ItsCOMMANDer_
      @ItsCOMMANDer_ 10 หลายเดือนก่อน

      @pnk4996 utrftftrp (use the right f*cking tool for the right purpose), no language can be THE best, even though c is goated

    • @Aras14
      @Aras14 10 หลายเดือนก่อน

      There is dioxus, literally rust on the front end. And I don't like to use it.

    • @Heater-v1.0.0
      @Heater-v1.0.0 10 หลายเดือนก่อน +1

      @@Aras14 I have not done much front end development but it's clear that JS reigns supreme there because that was is everywhere. My feeling is that JS is sweet when used as originally intended, a sprinkling of script thrown in to pages to get some interaction going. I was appalled though to find myself using React that is huge and complex and needs a build system to get anything going. Essentially throwing away the whole point of Javascript. At that point one might as well build with any other language. I see no reason Rust is not a good candidate for front end work at that level of complexity. Having said that I only discovered Dioxus recently and have yet to try it. What is it about Dioxius you dislike?

  • @defeqel6537
    @defeqel6537 10 หลายเดือนก่อน

    Is WASM always interpreted, or can the implementation just compile it to native code and run it like that? That would be pretty great, though it is way too late to affect iOS or Android, and thus the whole platform/tech will be limited in scope (consumers have already rejected alternative OSs like Ubuntu, Libre or Sailfish/Mer).

  • @jam_4769
    @jam_4769 10 หลายเดือนก่อน +1

    Prime is building an analogy portfolio

  • @diadetediotedio6918
    @diadetediotedio6918 10 หลายเดือนก่อน +4

    Also, I think the "one language for a specific purpose" is both a good take and also in some level bullshit (relating to the title of your video as well).
    It is good because specialization tends to make better tools fit to their specific purposes, it is good for organization and also allows for more conciseness in what you are trying to express with code.
    And it is also bullshit because learning more languages do not imply in a loss, it expands your domain over all the languages you've already learned by generalizing the knowledge, having competition is also extremely good and factually one of the most common reasons I heard from people is that they "don't want needing to learn so much" (which is lazyness³; you also don't need to learn everything, because competition exists and thus you can work with whatever you want most of the time), and also because the more specialized you are the more you lose context about the world of other things, and the more you need that 'recurrence' and fragmentation inside one workload. You can see this with people using JSON, but still inventing more and more protocols around it, or with alternative solutions to protobuf that tries to cover logic or some other bs, or even with Lua where there are like dozens of versions of it trying to generalize it for more cases or for performance-based tasks (like lua-jit or Luau [the roblox version of Lua with types and other features]). I'm also not saying this is bad, but specialization can be a good or a bad thing and it is generally harder to know the exact domain of the problems you are trying to solve (the problems you are tring to find in the real world to specialize in) than to make a general-purpose language that can be used in certain contexts more than others. I think we should have even MORE languages, more and more and more of them, because no one will fullfil all the needs of all programmers ever.
    This is one of the reasons of why I think AI's can hurt the developer environment much more than aid, they are good at specific things they have tons of material to train on, and their general tendency is not to innovate but to homogeinize everything (the wet dreams of the "we already have many languages" person).

  • @DeanRTaylor
    @DeanRTaylor 10 หลายเดือนก่อน

    I just think creativity and doing what you are passionate about is what really kicked off software as a huge industry. When it was all science it was used for mathematics mainly, when the nerds started doing nerdy things we got home pcs and mobile phones.
    All that is to say, if people wanna create a backend runtime for a frontend language, I'm completely happy to see and learn about it because creativity breeds progress. I disagree with forcing specific languages only for specific tasks.

  • @jly_dev
    @jly_dev 9 หลายเดือนก่อน

    docker reduced our new employee onboarding and env setup by like 90%

  • @lcarv20
    @lcarv20 10 หลายเดือนก่อน +1

    If you use wasm for rendering html, yeah then it’s not a “w”, but if you use it to do heavy and complex computations then yes, it’s great. Great examples are media editors & renderers, games, etc.

  • @sonicjoy2002
    @sonicjoy2002 10 หลายเดือนก่อน +56

    Just learn C#, it solves all your problems👹

    • @thavrisco1632
      @thavrisco1632 10 หลายเดือนก่อน +11

      65 megabyte executable

    • @b3owu1f
      @b3owu1f 10 หลายเดือนก่อน +11

      ROFL. So does Java. Go. Python. NodeJS. Rust. Zig. C. The list goes on.

    • @LilArquebus
      @LilArquebus 10 หลายเดือนก่อน +11

      I’m a self taught dev. I started by learning C#. Not really sure why but now I know a tiny bit and I am picking up Python super quick and it feels very easy. Can someone explain why everyone memes on C#. I’m genuinely curious, I just want to learn.

    • @Shywizz
      @Shywizz 10 หลายเดือนก่อน +2

      @@LilArquebus Ask that to C#'s brother, Java.

    • @deidyomega
      @deidyomega 10 หลายเดือนก่อน +9

      @@LilArquebus C# is a microsoft product, it was also created to be a competitor to another language. Those two reasons alone give it meme status. It's also kinda lost its place in the world. If you want speed, there are faster languages, if you want more expressive, there are better languages.
      The only companies who use it are in industries that move *very* slowly. Its a fine language, but a lot of the ideas aren't as common in modern development. MVC being an example, you don't see that in the react/node world.
      I've also personally been burned with C# + lightswitch back in the day, and so I don't trust trying their newer tech (blazor for example).

  • @Edikzord
    @Edikzord 10 หลายเดือนก่อน

    "Zig is a general-purpose programming language and toolchain for maintaining robust, optimal and reusable software." - Zig mentioned!

  • @boredstudent9468
    @boredstudent9468 10 หลายเดือนก่อน +6

    The biggest usecase of Lua is Minecraft ComputerCraft

  • @filko3578
    @filko3578 10 หลายเดือนก่อน +1

    Yes, I think it makes sense to design languages for specific areas. I see Golang as being well suited for cloud/network/CLI and small GUI applications with GTK, and not much more. Zig for low-level and specially optimized tools. Odin for graphics. R for statistics. Python for machine learning and automation. JavaScript strictly for the frontend, and nothing more. That's my take on this.

    • @defeqel6537
      @defeqel6537 10 หลายเดือนก่อน

      While I agree on the premise, I think Zig and Odin overlap considerably, there is nothing inherently "graphics" about Odin.

    • @filko3578
      @filko3578 10 หลายเดือนก่อน

      You're right about this. I thought quote:
      "Odin provides official libraries for all major graphics APIs: OpenGL, Vulkan, Direct3D11, Direct3D12, Metal, and WebGL 1 & 2.
      Odin additionally brings you officially maintained bindings for popular libraries such as SDL2, GLFW, raylib, microui, miniaudio and much more, in its vendor library!"
      makes more sense for graphics stuff@@defeqel6537

  • @jhonyortiz5
    @jhonyortiz5 10 หลายเดือนก่อน

    One thing ive been thinking aboit is hoe wasm may be a good plugin language. Maybe not as good as lua in some ways but wasm can be fast and more importantly, it would allow people to create plugins from different languages. I think zellij uses a wasm plugin system so we'll see how that goes. For portability wasm seems like a goos option. And as people mention, you dont write wasm, you target wasm. Having said that, i think wasm and docker have some similarities but they are also very different.

  • @alexisJonius
    @alexisJonius 9 หลายเดือนก่อน

    I need a guide on what language to use for what purpose 😵‍💫 when do i use C? C#? C++? Python? How does one decide for each project?

  • @seventyfive7597
    @seventyfive7597 10 หลายเดือนก่อน

    When I was young I was taught Fortran 77, COBOL and PL/1, and then I discovered Borland Pascal, do you think it is the language of the future?

  • @sho3bum
    @sho3bum 10 หลายเดือนก่อน +2

    Language oriented programming ... Sounds like racket

    • @vitalyl1327
      @vitalyl1327 10 หลายเดือนก่อน

      Racket, or any other Lisp with proper macros, or even Forth. Any meta-language is entirely on the other level, unreachable for the fixed languages.

  • @ak2f
    @ak2f 10 หลายเดือนก่อน

    dev containers suck, but toolbox or distrobox IS different and it's worth trying. Having the possibility just install stuff and do not mess up your host system, but still not being in a sandbox completely disconnected from what you have on the host. It's just something you have to experience, it's just different then dev containers in so many ways.

  • @maximofernandez196
    @maximofernandez196 10 หลายเดือนก่อน +6

    lua cause damn I love lua

  • @JonitoFischer
    @JonitoFischer 10 หลายเดือนก่อน +4

    Zig is awesome!

  • @svenmify
    @svenmify 10 หลายเดือนก่อน

    I’m not sure about the whole narrow scoped languages thing. I know a couple of languages really well (c#, JavaScript, assemblyscript and typescript, php, solidity, haxe, and currently learning rust), but it’s such a pain that when I want to mess around with something for a bit, I’d have to first learn lua or zig or whatever.
    I do get it, languages designed for specific tasks tend to be better for that task. If performance is critical, better use something where you can fine tune the memory layout so everything is optimised as much as possible, and not rely on a managed memory system.
    But at the same time, the more languages someone has to learn, the less time they have to really master one or two specific languages.

  • @az8560
    @az8560 10 หลายเดือนก่อน +1

    on how many billion devices does wasm run?

  • @mitch9254
    @mitch9254 10 หลายเดือนก่อน

    odin is what you use when you want c without the bullshit. i think it's also pretty much feature complete as opposed to ongoing beta like zig and jai

  • @OzzyTheGiant
    @OzzyTheGiant 10 หลายเดือนก่อน

    Thank you for calling out people setting up their environment around containers. I've been in that situation. Had a tech lead build everything with Kubernetes from the ground up and developing with it was and absolute PAIN!

  • @rebel1324
    @rebel1324 10 หลายเดือนก่อน +6

    Lua is fun until when you face the metatable.
    Also it is completely normal to start index from 1.

  • @snrd
    @snrd 10 หลายเดือนก่อน

    What I am looking forward though are the plans to have access to the several Web APIs directly from WASM so that we can finally ditch javascript/typescript completely and have a programming language agnostic frontend target for the web.

  • @hidroshot5948
    @hidroshot5948 10 หลายเดือนก่อน +1

    there's an answer to your question and its one lett- char long, C

  • @rusty_knife
    @rusty_knife 10 หลายเดือนก่อน

    i find the whole wasm on the backend thing weird... like we already have the jvm which does basically the same thing but way better?

  • @nightshade427
    @nightshade427 10 หลายเดือนก่อน

    Debug c/cpp wasm in chrome with dwarf, source mapped, stepping, memory inspection, etc

  • @Elixz89
    @Elixz89 10 หลายเดือนก่อน

    For 1 base indexing you should keep the muscle memory of 0 base indexing and always write +1 behind the index

  • @megetmorsomt
    @megetmorsomt 6 หลายเดือนก่อน

    Languages to watch: Mojo, Nim, Zig, Odin & Roc

  • @byronservies4043
    @byronservies4043 10 หลายเดือนก่อน +1

    Best possible? Sure. But 99.9% of developers have no choice what language their moron bosses make them use.

  • @swannie1503
    @swannie1503 10 หลายเดือนก่อน

    I feel like people only like lua because they like neovim. Outside out that echo chamber, I find it hard to believe people really out there rockin with it like it’s “the best” at anything.

  • @mattymattffs
    @mattymattffs 10 หลายเดือนก่อน

    One based or zero based is fine. The problem is when languages mix the two... And yes, i work in a language that does that

  • @diegolikescode
    @diegolikescode 10 หลายเดือนก่อน

    I have lost an interview that would 2x my salary because I said that I preffer JS rather than TS. The guy said I didn't know what I was saying.

  • @CallousCoder
    @CallousCoder 10 หลายเดือนก่อน +1

    One based indexing is the devil and makes no sense from a low level point of view

  • @bearwolffish
    @bearwolffish 10 หลายเดือนก่อน

    If domain specific there are a ton of languages to me, if general there about 3, and I can get by with 2.

  • @danailenei9959
    @danailenei9959 10 หลายเดือนก่อน

    Idk, I used docker for dev environment in multiple projects, it was pretty cool. It sucks if you do not know docker I guess

  • @pagenotfound_code_404
    @pagenotfound_code_404 10 หลายเดือนก่อน

    Is this an argument for and idea for "Language-Oriented Programming Languages" like Racket and JetBrains MPS?

  • @50c42
    @50c42 10 หลายเดือนก่อน

    Listening to this while writing a blazor WASM application lol

  • @andythedishwasher1117
    @andythedishwasher1117 10 หลายเดือนก่อน

    "It's so rare you do indexing" ... what? Do you just use libraries for everything or something? Indexing is everywhere. Need to get the first item in a list? Index. Need to do something based on your position in a loop? Index. Need to get rid of a file extension by removing the last four characters of a string? Index. How are you avoiding this? Lol "give me the iterator". Mf I am the iterator. Or at the very least my Copilot is. Honestly jk, enjoy your tools but that threw me for a loop.

  • @Andy_B.
    @Andy_B. 10 หลายเดือนก่อน

    if I learn *one* languagage, I must learn the syntax, methods, libraries . etc.
    what tf do you mean with "use each language for a different / specific task?"
    When shall I start applying then... ?!

  • @diadetediotedio6918
    @diadetediotedio6918 10 หลายเดือนก่อน +2

    WASM can be used to replace the need of docker in future, and also to replace JS in browsers, so it kinda is a W.

    • @diadetediotedio6918
      @diadetediotedio6918 10 หลายเดือนก่อน

      And the thing 4:46 is that the performance difference should not be extreme.

    • @viniciusmachadorodrigues1724
      @viniciusmachadorodrigues1724 10 หลายเดือนก่อน

      Nope, wasm doesn't have access to DOM, it need JS for that.

    • @diadetediotedio6918
      @diadetediotedio6918 10 หลายเดือนก่อน +3

      @@viniciusmachadorodrigues1724
      It is not a "nope" bro, you can use JS as a thin wrapper for other languages, and in the future proper DOM support can come. It can also be used to replace JS in most of the tasks that require speed.

    • @phene-449
      @phene-449 10 หลายเดือนก่อน

      @@viniciusmachadorodrigues1724 there is already a workaround for that in the rust ecosystem. look into web-sys. all of the rust frameworks are built on top of that. it's not even a performance issue either. many of the rust frameworks outperform popular javascript frameworks in dom rendering and it's not even close on the server. the issue is converting utf-8 strings to utf-16 and there is currently no solution to code splitting.

    • @brawlgammer4424
      @brawlgammer4424 10 หลายเดือนก่อน +4

      I'm sick of the WASM hype, shit was supposed to "take over" like 15 years ago. I'm still waiting.

  • @porky1118
    @porky1118 10 หลายเดือนก่อน +1

    2:00 Skill issue?
    I use Rust for everything. Especially for short scripts it's very nice and useful, and I never had a problem.
    And I also wrote multiple GUI applications. The GUI is a little cluncy, since I don't use actual GUI frameworks, but it's still better than most of Unity Engine, especially when it comes to usability and shortcuts.
    My Rust games aren't that great, but at least I feel comfortable to continue working on them years later.

  • @neomangeo7822
    @neomangeo7822 9 หลายเดือนก่อน

    I find it very common where a lot of people create or advocate for certain tech, and while on the surface it sounds brilliant, the development experience (especially at scale) is actually atrocious.

  • @pldcanfly
    @pldcanfly 10 หลายเดือนก่อน +1

    Doing lua for wow addons made me write way better js.

  • @complexity5545
    @complexity5545 10 หลายเดือนก่อน +2

    Why is Prolog not making a comback? Lol
    I like ThePrimeTime because it gauges what the regular programmers are using (and I try to go the opposite way): Odin?

    • @vitalyl1327
      @vitalyl1327 10 หลายเดือนก่อน

      Prolog came back as miniKanren and alike - it works better as an embedded DSL than as a standalone language.

    • @natescode
      @natescode 10 หลายเดือนก่อน

      Because we have cHaT GiPitEe

    • @vitalyl1327
      @vitalyl1327 10 หลายเดือนก่อน

      @@natescode And Prolog is a very powerful tool for LLMs. I am using Prolog as an LLM reasoning tool, forcing a critic agent to convert the reasoning essence into Prolog and evaluate it, providing feedback if logic fails.

  • @natescode
    @natescode 10 หลายเดือนก่อน

    Zig is a domain focused language.

  • @Ikkepop
    @Ikkepop 10 หลายเดือนก่อน

    wouldn't wasm for the backend just be a reinvention of the JVM?

    • @bionic_batman
      @bionic_batman 10 หลายเดือนก่อน

      software development is really running in circles

  • @joschomo1010
    @joschomo1010 10 หลายเดือนก่อน +8

    In data sci there is python, and R if you're an old professor. I don't get why software web dev people need 3 dozen different frame works and languages

    • @davr9724
      @davr9724 10 หลายเดือนก่อน +7

      In embedded there is C and C++. Has been that way for decades. Rust is just starting to be considered for new projects only.

    • @d3stinYwOw
      @d3stinYwOw 10 หลายเดือนก่อน

      @@davr9724 And Nim in embedded also emerges :)

    • @nchomey
      @nchomey 10 หลายเดือนก่อน +5

      Aren't there various frameworks for python? Django, fastapi, etc.. All sorts of machine learning stuff - spacy, scikit, huggingface etc

    • @CudiKid121
      @CudiKid121 10 หลายเดือนก่อน

      Umm. You are confusing libraries with framework. ​@@nchomey

    • @tychoides
      @tychoides 10 หลายเดือนก่อน +1

      @@nchomeyDjango was the only way for a long time. But still python webframework ecosystem pales in comparison to js. In machine learning there is only one true array language, numpy. Every other alternative, as jax, xarray, cupy, usually implement most of numpy api. Pandas is build on top on numpy, but is getting support for Array columnar data. And regarding your examples: spacy is for natural languages, scikit is a bunch of classical machine learning algorithms. scikit-image is the same for images, statmodels is for more advance statistical modelling, huggingface is like github for models, and provides a library to load pretrained models. So they are different libraries for different stuff. There nothing like the web frameworks that are just different libraries for the same use case.

  • @disgruntledtoons
    @disgruntledtoons 10 หลายเดือนก่อน

    "Write in C, write in C..."

  • @FryGuy1013
    @FryGuy1013 10 หลายเดือนก่อน +2

    I've used lua over 100 hours for wow addon development and i still think it's awful

  • @eveleynce
    @eveleynce 10 หลายเดือนก่อน

    lua is one of my favorite languages ever, but I almost never use it, because there's nothing I could do in lua that I couldn't do equally well in C# or powershell 7 lol, I just don't do the sorts of things lua is really good at

  • @fillman86
    @fillman86 10 หลายเดือนก่อน

    I hate having to learn different languages, it’d be so much nicer if there were less and they were maybe compiled differently -_-

  • @CallousCoder
    @CallousCoder 10 หลายเดือนก่อน

    “Docker is shit abd developing before docker sucked” But docker wasn’t the solution to the suck! The problem is that the fact we use crap programming languages that don’t build static binaries! In the 90s we just build a static binary and as long as the OS and CPU matched it just ran. So docker is an extra abstraction to a problem that doesn’t fix the root cause. And IT is great in not solving the root cause but treating the symptom! We are more like fucking doctors than engineers.

  • @dunebuggy1292
    @dunebuggy1292 10 หลายเดือนก่อน

    There should be infinity languages.

  • @gadgetboyplaysmc
    @gadgetboyplaysmc 10 หลายเดือนก่อน

    Lua's typesafety sucks though. Used it quite a bit on Defold. Even the "JSDoc" equivalent of it feels like a hack.

  • @blackhaze3856
    @blackhaze3856 10 หลายเดือนก่อน

    I started using C and php and after several years trying new technologies I keep using php and C. Oh! And Go! This one looks good.

  • @pif5023
    @pif5023 10 หลายเดือนก่อน

    I am very bullish on Wasm, I hope it becomes something. Not much for the front end but as a shared compilation target when you don’t need super performances. An actual solution to Java, JS and .NET (I will spare Python because little scripts are still useful). Imagine to compile just once and have a Wasm executable that runs everywhere for real without the need of an interpreter. I would circumvent the browser if possible, just have OSes offer the ABIs. Perhaps it is just a dream.

  • @mxz2024
    @mxz2024 10 หลายเดือนก่อน +1

    HTML is the best programming language periode.

  • @ivanjermakov
    @ivanjermakov 10 หลายเดือนก่อน

    The only things I cringed on when writing Lua are the 1-based indexing and 3 different syntactical ways to write a function call..

  • @davr9724
    @davr9724 10 หลายเดือนก่อน +3

    I think there might be a pseudo-code language in the future that can translate into application specific languages. That way the refactoring workload isn't as large when a new language or new language features go out into the future.

    • @gigitrix
      @gigitrix 10 หลายเดือนก่อน

      Transpiling isn't that new. To me it seems more likely that focus will shift in that inevitable microservicey direction and converge on protobufs-style strongly typed communication between services regardless of the domain specific language implementation for that component

    • @user-pe7gf9rv4m
      @user-pe7gf9rv4m 10 หลายเดือนก่อน

      @@gigitrix Isn't this the sort of Smalltalk direction?

    • @antongorov5275
      @antongorov5275 10 หลายเดือนก่อน

      Most likely no. There is no reason as to why you can't transpile one language into another. In fact, there are many existing transpiler to C/C++ such as il2cpp, Cython.

    • @davr9724
      @davr9724 10 หลายเดือนก่อน

      @@antongorov5275 I'm talking about a pseudo-code language that isn't meant to run as is, only to be translated to application specific languages.

    • @antongorov5275
      @antongorov5275 10 หลายเดือนก่อน

      @@davr9724 Wouldn't it make more sense to just transpile an existing language that already has a wide usage. Creating another programming language won't solve the problem of some languages being better at different things.

  • @Julzaa
    @Julzaa 10 หลายเดือนก่อน

    No AGEN???

  • @totally_not_a_troll
    @totally_not_a_troll 10 หลายเดือนก่อน +1

    Meh, weak take imho.
    Sure, I wouldn't jump at java to parse an xml or plot a graph.
    But you can have UI frameworks in any language. No language is speshul, look at me, I have syntax that is for UI. Da fak sort of argument is that. Just grab a UI framework.
    Do we live in an era with no real desktop UI frameworks? Yeah, kinda. But that's besides the point.
    What will actually happen is having languages based on level. It's what we have today. Hardware level languages, low level general languages, mid level general purpose languages, high level scripting languages. And Haskell.

  • @dunnoconz
    @dunnoconz 10 หลายเดือนก่อน +5

    zigler

  • @MrMeltdown
    @MrMeltdown 10 หลายเดือนก่อน

    Oh right a programming language for specific tasks…. But why not perl?