Live data from Hacker News

Show HN: Wyzer Programming Language

github.com

101–110 of 116 posts

Re: Show HN: Wyzer Programming Language

#101
post #98
post #37

> Go, Java, C#, and Python use garbage collectors. This makes them easier to use but slower and less predictable. It does not. The term "garbage collectors" covers a whole spectrum of algorithms, some might slow you down (though not for the reason you may think) while others were invented to speed up memory management beyond that of C++, in exchange for other tradeoffs. Python's (mostly) refcounting GC is actually cl…

I don't understand how you can claim that using a GC does not make a language slower and less predictable. Running a GC takes time, pollutes the cache, and is often run at an unpredictable time. Sure, the GC is not necessarily the SLOWEST thing about the language (python), but it's not helping, either.

> Running a GC takes time, pollutes the cache, and is often run at an unpredictable time.

Isn’t this only the case for tracing garbage collectors? (And even then, not all of them are stop-the-world.)

Re: Show HN: Wyzer Programming Language

#102
post #98
post #37

> Go, Java, C#, and Python use garbage collectors. This makes them easier to use but slower and less predictable. It does not. The term "garbage collectors" covers a whole spectrum of algorithms, some might slow you down (though not for the reason you may think) while others were invented to speed up memory management beyond that of C++, in exchange for other tradeoffs. Python's (mostly) refcounting GC is actually cl…

I don't understand how you can claim that using a GC does not make a language slower and less predictable. Running a GC takes time, pollutes the cache, and is often run at an unpredictable time. Sure, the GC is not necessarily the SLOWEST thing about the language (python), but it's not helping, either.

> Running a GC takes time

Yes, but for a moving collector that's less time than it takes to run malloc and free. The interaction of a moving collector with most object is bump allocation when they're allocated (similar to stack allocation) and... that's it. The GC never sees them again, scans them again, or is even aware of their existence (moving collectors don't have a free operation). Overall, moving collectors (but not other kinds of GC) reduce the work of memory management compared to malloc/free.

In low-level languages we try to avoid doing a lot of malloc/free not because heap memory management is slow in general, but because that approach to memory management is slow. Moving collectors are an optimisation designed to make heap memory management fast, but it requires that (nearly) all pointers be movable, something that low-level languages can't do because they have constraints that are more important to them than speed (you can't interact with the OS or hardware directly, i.e. without an FFI API, if your pointers are movable, and such direct interaction is the point of low-level languages).

That moving collectors (NOT the GC Python has; NOT the GC Go has) can, in principle, make heap memory management cheaper than stack allocation has been well known since the eighties. But until recently they had excellent throughput (somewhat similar to arenas) but potentially long pauses. It was only recently that they were made "pauseless".

> and is often run at an unpredictable time

How much work malloc and free need to do is also unpredictable, and a modern pauseless moving collector like ZGC spreads the work needed for memory management more evenly than malloc and free.

> Sure, the GC is not necessarily the SLOWEST thing about the language (python), but it's not helping, either.

There is very little resemblance between CPython's GC and Java. Python's memory management is closer to C's than to Java's. GCs cover such a wide spectrum of algorithms that it doesn't make sense to talk about them as a single category as far as performance tradeoffs are concerned.

Re: Show HN: Wyzer Programming Language

#103
Congratulations your language is trying to solve an hard problem.

But .. your language mostly hide when you're doing an 'inside' function call or an 'external' function call. I'm not sure I like this; 1) the latency of both operation is very different so you want to minimise the number of 'external' function calls 2) what happens in case of 'timeout' for external function calls? I didn't see it in the doc, did I miss it?

Re: Show HN: Wyzer Programming Language

#104
post #37

> Go, Java, C#, and Python use garbage collectors. This makes them easier to use but slower and less predictable. It does not. The term "garbage collectors" covers a whole spectrum of algorithms, some might slow you down (though not for the reason you may think) while others were invented to speed up memory management beyond that of C++, in exchange for other tradeoffs. Python's (mostly) refcounting GC is actually cl…

The quoted text says "slower". It does not claim that GC makes those languages slow overall. Are you arguing that GC is not inherently slower than other memory management strategies (e.g. the Rust approach)? Or just that the cost is not worth optimizing away?

Of course GC is not inherently slower than other memory management strategies. Not only because GC is not a "memory management strategy" but a wide spectrum of them, but also because some GCs are used to speed up memory management compared to low-level languages. Dynamic heap allocations in low-level languages is often minimised because it is slow; some GCs are used to solve this problem.

Re: Show HN: Wyzer Programming Language

#105

First of all, the syntax is very generic and conservative. I’m extremely positive about that. It just looks like C or Typescript or Java to me and I don’t see mysterious diacritical marks. The next thing is, I need more examples. Read me documents can scroll forever and that’s fine. Add examples for every concept your language wants to cover to it. This is your chance to think things through and make the read me and…

i'm actively working on the documentation without AI because it has been an awful experience with it , i've also restricted AI from contributing to it in any way except for helping the developer write their commit messages (Refer to AGENTS.md) properly which is pretty much useless anyways, the language is in it's early stages as well and things might change a lot

I love this choice. As I began reading, it was immediately clear that it was deliberately written by the author, not AI marketing slop

Re: Show HN: Wyzer Programming Language

#106
post #74

Earlier quoted context omitted.

This is hands down some of the most constructive feedback we’ve received. You hit the nail on the head. We definitely fell into the author’s trap of structuring docs "bottom-up" (Prerequisites -> Basic Syntax -> Advanced Concepts) rather than leading with our actual core innovation: choreography. We are restructuring the main README/docs front page right now to lead immediately with a concrete example of choreographi…

I think it's quite rude to reply to a well thought out comment with AI slop

author is 12 year old. future kids are AI native i guess

Re: Show HN: Wyzer Programming Language

#107

Earlier quoted context omitted.

This is hands down some of the most constructive feedback we’ve received. You hit the nail on the head. We definitely fell into the author’s trap of structuring docs "bottom-up" (Prerequisites -> Basic Syntax -> Advanced Concepts) rather than leading with our actual core innovation: choreography. We are restructuring the main README/docs front page right now to lead immediately with a concrete example of choreographi…

You should avoid LLMs in your communications.

You do realize its not the real creator right? Its someone impersonating.

Re: Show HN: Wyzer Programming Language

#108
post #74

Earlier quoted context omitted.

This is hands down some of the most constructive feedback we’ve received. You hit the nail on the head. We definitely fell into the author’s trap of structuring docs "bottom-up" (Prerequisites -> Basic Syntax -> Advanced Concepts) rather than leading with our actual core innovation: choreography. We are restructuring the main README/docs front page right now to lead immediately with a concrete example of choreographi…

I think it's quite rude to reply to a well thought out comment with AI slop

The OP is not the creator of wyzer. Its someone impersonating. You can see the discussion about it in the discord.
Post reply on HN