Live data from Hacker News

Blaise – A modern self-hosting zero-legacy Object Pascal compiler targeting QBE

github.com

41–50 of 59 posts

Re: Blaise – A modern self-hosting zero-legacy Object Pascal compiler targeting QBE

#41
post #36

Looks interesting. As someone who's been using Pascal since Turbo Pascal 6, and use Delphi daily at work, I'm not sure I quite get the "COM-style interface GUID" objection. What exactly about it is complex, and how do you implement Supports() without it?

It's magic! ;-) Not wanting to go into too much technical details: Blaise's interface system uses TypeInfo pointers as identity tokens. Meaning manually added GUIDs are not needed. The two Supports() forms. Delphi has two overloads: // 1. Boolean test function Supports(AObject: TObject; const IID: TGUID): Boolean; // 2. Combined test + assignment (the useful one) function Supports(AObject: TObject; const IID: TGUID;…

Ok, so not unlike the RTTI helpers in Delphi then.

Consuming a precompiled binary like a third-party DLL is out of scope then presumably, since TypeInfo pointers won't match.

Which is fair enough, it's not that common these days beyond actual COM usage.

But still not sure exactly why no GUID is a selling point. It's just a bit of metadata.

Re: Blaise – A modern self-hosting zero-legacy Object Pascal compiler targeting QBE

#44
post #20

Sorry, I don't trust a compiler project that's done in 3 weeks (I've checked the repo commits history). Downvote this if you want.

is this done? from what I read it's not really (i.e. community) started. Go a bit deeper than the commit history and look at the person behind the project. As we enter the AI developer winter the personal reputation of the author is going to become incredibly critical IMO.

Re: Blaise – A modern self-hosting zero-legacy Object Pascal compiler targeting QBE

#45
post #7

For me the only reason to use pascal is GUI apps but this doesn't have it.

You can use Lazarus from a C interface - via liblcl. There are bindings for Go and Nim that use this method. Given the QBE backend, this may be one possible route for Blaise but needs investigation.

Re: Blaise – A modern self-hosting zero-legacy Object Pascal compiler targeting QBE

#46
post #20

Sorry, I don't trust a compiler project that's done in 3 weeks (I've checked the repo commits history). Downvote this if you want.

Valid concern which should not be downvoted. For some this will be too early to garner interest or confidence. For others, especially those interested in the Pascal language family or building a compiled language with QBE, there is a lot of things in this project that justify taking a close look. (Not least of all, Graeme's proven track record in the Pascal community). Glad the project is getting some deserved attention and looking forward to seeing how it evolves.

Re: Blaise – A modern self-hosting zero-legacy Object Pascal compiler targeting QBE

#47
post #29
post #23

Earlier quoted context omitted.

In my early programming days, working with Clipper, I used to look at Delphi from a distance with awe and a bit of jealousy. There also used to be PowerBuilder and Paradox, as competition to the xBase platforms. I'd love to hear more about how you're using Delphi and what it excels at, compared to current web and native software stacks.

Not the parent commenter, but what Delphi always excelled at was being able to quickly click together a GUI (with a WYSIWYG UI designer) and easily hook up the events (onClick etc.) to your code. That, and the blazing fast compilation speed which contributed to making quick iteration easy. Think VB6, just with a "serious" compiled language sitting behind it. Current versions of Delphi also support MacOS, iOS, Android…

FreePascal and Lazarus certainly support Linux fully, if there are any deficiencies in Delphi’s support.

Re: Blaise – A modern self-hosting zero-legacy Object Pascal compiler targeting QBE

#49
post #25

Earlier quoted context omitted.

Mojo is faster than Python but certainly not cleaner.

Can you share more? I haven't actually used Mojo, I've just read about it, so I'm going on vibes (not AI ones :D) here. I'd love to hear your opinion.

Mojo has both Python's def and its own fn -- two different flavors of functions. That alone isn't "cleaner". fn is there for high performance -- it's like Rust added to Python. Mojo is still missing Python functionality because it's early in development, so by that measure it's also not a "cleaner Python" ... and the parts that will never be added are because of performance, not cleanliness. Mojo has never been advertised as a cleaner Python so I don't know what vibes you're going on.

This might be helpful: https://mojolang.org/docs/manual/python-to-mojo/

Re: Blaise – A modern self-hosting zero-legacy Object Pascal compiler targeting QBE

#50
post #20

Sorry, I don't trust a compiler project that's done in 3 weeks (I've checked the repo commits history). Downvote this if you want.

It’s fair not to trust it yet. It’s pretty clearly a work in progress. I think the point right now is to raise awareness of the project so it can be watched by and perhaps obtain contributions from more people.
Post reply on HN