OtomotO a day ago

The creator is an incredibly nice and bright person.

I love to talk to them at various meetups and one can feel their love for the language and the intricate design of it.

It's a bit sad it's such a niche of a niche language.

  • em-bee a day ago

    i can confirm that. i met him in vienna a few times. my experience was is exactly like you say.

    • OtomotO a day ago

      He attends like every meetup I attend, so it's easy to run into him :)

helix278 a day ago

Although I'm more of a functional programmer and ADT addict, I still find this language appealing. Reading the manual, it feels like a lot of correct design decision have been made, contrary to languages like C++. Most notably for me: 1) Memory allocation and reference is restricted, leading to less problems with memory management. 2) Syntax is more flexible, allowing for higher levels of abstraction.

HappMacDonald a day ago

I am a huge protester to the "constantly abbreviating words" habit in coding. It may have had a place when source code space had drastic limitations, but today "func, proc, writeln, strcpy" are anathema to me. Also I get that a lot of these in Seed7 examples were lifted unchanged from Pascal, but that just means that I dislike those aspects of Pascal as well.

I am of the camp "use full English words", and "if the identifier is too long then spend the time needed to find a more concise way to say what you mean in fewer or shorter full English words". Incidentally AI can be pretty good at brainstorming that, which is lovely.

  • Jtsummers a day ago

    `func` and `proc` are types in this language, so you could define `procedure` and `function` if you want.

    The other uses of `func` should be changeable with the flexible syntax extensions the language offers, but I haven't dug into that.

  • inkyoto 14 hours ago

    … yet you have contracted «artificial intelligence» to «AI», have not you?

    The case for abbreviated keywords will always exist as some will prefer contractions whereas some will have a preference for fully spelled out words.

    At the opposite side of the spectrum there C / C++ that use neither for functions and procedures but «printf» and «strcpy» – as you have rightfully pointed out which ADA, COBOL and Objective C contrast with

      ADA: «Is_Valid_User_Access_Level_For_Requested_Operation», «Convert_String_To_Standardised_Date_Format»
    
      COBOL: «PERFORM Calculate-Totals VARYING Index FROM 1 BY 1 UNTIL Index > Max-Index»
    
      Objective C: «URLSession: dataTask: didReceiveResponse: completionHandler:»
    
    I do not think that a universal agreement on the matter is even possible.
pepoluan a day ago

"Hello World" really needs to be retired, and "99 Bottles of Beer" should really be a mandatory example program.

  • codr7 a day ago

    I hereby cast my vote for naive recursive Fibonacci.

    https://github.com/codr7/shi#language

    • Someone a day ago

      Why? I would try to find a short program that’s somewhat similar to typical real-world code. I wouldn’t know what my #1 choice for that would be, but naive recursive Fibonacci, it would not be.

      https://www.swift.org/ has better examples: simple web apps, CLI tools, and embedded code.

      • codr7 8 hours ago

        Because the implementation should be familiar to most devs, which makes it easier to see what kind of language you're dealing with.

        Binary sort would be another candidate for me, but people get it wrong in subtle ways and not every language does array updates.

        Your examples don't make much sense to me. A web app using what framework? What does that say about the language? CLI apps could work if you could find one that people recognize and that's small enough for an example.

codr7 a day ago

Too much syntax for me, adding filler words to make it read more like English is a programming language design dead end imo.

msie a day ago

I’ve never liked the idea of the syntax where functions are declared and then assigned to variables. I guess it’s supposed to be elegant?

  • hyperbrainer a day ago

    If functions are first class, then they must be stored as variables. I mean, consider any FP Language.

    • msie a day ago

      They can still be first class without declaring them in this manner.

      • TurboHaskal 12 hours ago

        Sure. But if they are first class and you have a mechanism to assign them to variables then there is no need for syntax sugar.