frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Ask HN: Not treated respectfully by colleague – advice?

107•golly_ned•3d ago•119 comments

Ask HN: Is AWS down again?

75•ajdude•21h ago•35 comments

Tell HN: macOS 26 is making me have regrets for the first time in 12yrs

14•trumbitta2•1d ago•13 comments

Tell HN: OpenAI now requires ID verification and won't refund API credits

196•retube•3d ago•117 comments

Ask HN: Dealing with "blocked" emails after DNS issue

3•nvahalik•23h ago•2 comments

Ask HN: Advice for creating a USB device linking 2 computers

20•WorldDev•2d ago•42 comments

Killer WiFi cards can block VPNs

10•willprice89•1d ago•2 comments

Ask HN: What are you doing this week?

4•SafeDusk•13h ago•7 comments

Ask HN: How should new programmers learn in the AI era?

8•loa_observer•1d ago•11 comments

Bugbunny: Securing VibeCoded Apps

5•zaddyzaddy•22h ago•0 comments

Google Demanded My Drivers Lic Before Letting Me Read an Article

77•keernan•3d ago•31 comments

Ask HN: Good LLM Observability Platforms?

5•seany62•1d ago•5 comments

What do you guys do to improve your focus?

13•pervysage•1d ago•14 comments

Ask HN: Has anyone deployed your own MCP server connector to ChatGPT?

4•QueensGambit•1d ago•3 comments

Ask HN: Do Java and .NET developers avoid learning new tech?

4•jerawaj740•14h ago•5 comments

Ask HN: Anyone else use FreePascal as their low level language?

19•rlawson•4d ago•11 comments

M5 Macs Support Memory Integrity Enforcement

14•abalone•2d ago•0 comments

Ask HN: Best open source opsgenie alternatives?

2•Poomba•1d ago•2 comments

Ask HN: What is a passkey and why is everybody asking for one lately?

22•CGMthrowaway•3d ago•6 comments

iPhone Safari Lost Bookmarks

2•vocatan•1d ago•2 comments

The Windows 7 Renaissance? StatCounter shows surge in usage

4•Stasshe•1d ago•5 comments

Ask HN: Rigorous study on what jobs are declining due to AI now?

7•AznHisoka•2d ago•6 comments

Is there an IDE that can use the local open-source model?

3•haebom•2d ago•9 comments

Ask HN: Any good books for a layman on history of quantum computing?

25•bmau5•5d ago•6 comments

Using jet engines for power generation at AI centers.

13•testrun•2d ago•5 comments

Ask HN: What's needed for a minimal production Docker deployment?

5•bcye•2d ago•4 comments

Ask HN: What do you use for focus without coffee jitters?

13•jaemo•4d ago•22 comments

Would the .NET community benefit from an open-source MassTransit fork?

9•Nakib•3d ago•7 comments

Ask HN: Where should an experienced developer start learning AI development?

15•productiveminds•4d ago•8 comments

Ask HN: Best practices for research code?

13•Eugeleo•5d ago•5 comments
Open in hackernews

Ask HN: Anyone else use FreePascal as their low level language?

19•rlawson•4d ago
Like most devs I have a couple high level languages (Java/Python/PHP) but my low level language was always C/C++. However after 25 years I was still shooting myself in the foot on the regular. I evaluate Go, Rust and fpc. I'm too dumb for Rust, Go's was close but lack of exceptions and classes made it not for me. Fpc hit the sweet spot. The syntax is a little clunky but I have classes when I need them, exception handling, memory management - both auto and manual and cross platform support. Plus I can fit in my head - unlike C++

Comments

Rochus•4d ago
FP is an interesting language. In my opinion, it is somewhat problematic that different language concepts (Delphi, etc.) have been more or less merged into FP, resulting in redundant object models, for example. Pascal as a language also has various historical legacy issues (dangling else, block overhead, global namespace, etc.), which Wirth corrected in Modula and Oberon. The compiler is huge and apparently difficult to maintain (see e.g. https://github.com/rochus-keller/freepascal/). The resulting, optimized x86 code achieves about 70% of GCC compiled C code (see e.g. https://forum.lazarus.freepascal.org/index.php?topic=64261.0), and it turned out that desctructors and some built-in data structures are extremely slow. So I went on to implement my own Pascal/Oberon descendant (see https://github.com/rochus-keller/micron/, work in progress).
rlawson•4d ago
Thanks! I will check it out
Agingcoder•3d ago
Pascal is not a low level language - quite the opposite. That being said, various implementations provide low level facilities, including turbo pascal back in the days , and free pascal which I did use in the early 2000s.

If I were you, if you like fpc, I’d actually look into Ada ( the OO part is a bit odd granted but works ). You’ll get extremely high control over low level stuff ( it’s used in the embedded world ) along with high expressivity and excellent performance.

fuzztester•3d ago
In what way is the OO part a bit odd?
Agingcoder•3d ago
The way you express it is different from most other languages I’ve come across. It doesn’t make it bad in any way ( I’ve written Ada professionally), just unusual. Basically Ada already provides natively substantial capabilities relative to encapsulation, modularities, generics etc but in a procedural context. The designers bolted on OO facilities on top of said existing mechanisms.

While it may look reasonably clean in the link below, I’ve always found it integrates badly with an existing codebase, the primary problem being that the ‘boundaries’ of the objects are not clearly visible.

https://learn.adacore.com/courses/Ada_For_The_CPP_Java_Devel...

I will add that the existing non oo features are excellent and I would even argue that in many cases you don’t need OO.

fuzztester•3d ago
Thanks.

>I will add that the existing non oo features are excellent and I would even argue that in many cases you don’t need OO.

Somewhat the same in Python, because of the built-in data structures such as lists, dicts and sets, and the ability to compose them.

uncircle•3d ago
Not me personally, but I just finished playing a retro FPS set in 1980s Czechoslovakia whose game engine is written in Pascal: https://store.steampowered.com/app/824600/HROT/
shoo•3d ago
Out of curiosity, where were your pain points with Go regarding lack of classes? Go offers types, methods & interfaces, that gets you pretty far while avoiding inheritance. I found it pretty reasonable and not limiting (coming from a background with C/C++/Java then years of python).
rlawson•2d ago
After so many years as a Java dev my brain thinks in classes so not having classes or exceptions made it a constant struggle. Nothing against Go, more about me.
mikewarot•3d ago
I've been using it for a while. The string handling is magic compared to that of C/C++ with pointers and nulls and the constant need to allocate and free memory to get things done.

The only downside is the documentation. Listing the parameters of a function and not explaining the purpose of the function, or what those parameters actually mean, is not proper documentation.

Borland set a fairly high bar with the Turbo Pascal 3 manual.

zigzag312•3d ago
If you consider Go as a low level language, you might want to try C# which can be as low level as Go while having a lot of high level features. NativeAOT compiler allows you to statically link native libraries or create native shared libraries (.dll/.dylib/.so) that can be consumed from other languages. It's kind of 2-in-1 language, but the ecosystem is primarily focused on the high level part, so you can only depend on small portion of it.

If you are OK with less popular languages you can check any of these: Nim, Hylo (formely Val), Vale, D, or Zig.

I haven't tried any of these yet, but they all have piqued my interest. Nim is probably the easiest one.