Hacker Newsnew | past | comments | ask | show | jobs | submit | dwheeler's commentslogin

This has many similarities to the Heartbleed vulnerability: it involves trusting lengths from an attacker, leading to unauthorized revelation of data.

Many people use Octave https://octave.org/ which is compatible (generally) with Matlab, supports this simple syntax, and is open source software. Indeed, I've taken at least one class where the instructor asked people use Octave for these kinds of calculations.

Yep -- Octave was very helpful for me in school.

Octave is not particularly fast.

RunMat is very fast (orders of magnitude -- see benchmarks).


That's only true if future improvements are easy to create as past ones, that customers care as much about those improvements, and there are no other differentiators.

For example, many companies do well by selling a less capable but more affordable and available product.


I love having built-in local natural language translation implemented by AI, which Firefox provides. Local models have different properties than remote properties, and natural language translation is a useful thing. AI should be added when it solves a real need, and the risks can be minimized (or at least controlled). The goal shouldn't be to use AI, the goal should be to solve problems for humans.


The Linux Foundation's Open Source Security Foundation (OpenSSF) has released a free online course "Secure AI/ML-Driven Software Development (LFEL1012)". It discusses protecting your software development environment, creating more secure software, and reviewing changes.


Yes, you need training if you want something good instead of slop. For example, when asked to write functions that can be secure or insecure, 45% of the time they'll do it the insecure way, and this has been stable for years. We in the OpenSSF are going to release a free course "Secure AI/ML-Driven Software Development (LFEL1012)". Expected release date is October 16. It will be here: https://training.linuxfoundation.org/express-learning/secure...

Fill in this form to receive an email notification when the course is available: https://docs.google.com/forms/d/e/1FAIpQLSfWW8M6PwOM62VHgc-Y...


Summarizes what's happened in the Open Source Security Foundation (OpenSSF) since its founding five years ago.


Using AI assistants != Vibe Coding.

AI can be a helpful assistant but they are nowhere near ready for letting loose when the results matter.


Exactly this, if you're babysitting the AI, you are, by definition, _not_ vibe coding. Vibe coding means not reading the resulting code, and accepting that things will break down completely in four or five iterations.


Brother most of them ain't even assisting. Management just forces it.


Citation needed.

I'm not sure what you mean by "Unix specification". But if you mean the international standard POSIX, yes, people care. Red Hat routinely participates in POSIX spec revision.

There are a very few deviations where you have to enable "POSIXLY_CORRECT". If that's what you mean, then you can turn that on. But in every area that matters, Linux distros implement the POSIX spec by default, and you can even turn on the POSIXLY_CORRECT mode to exactly follow it. They extend beyond it, but that is allowed and expected.

The people who build the tools in Linux distros care a lot. I know the implementors of dash and GNU make routinely refer to POSIX. The Linux distros don't have to as much with POSIX because that is generally a conpleted work and it's the maintainers of the tools who must address the updates to POSIX.


The UNIX specification is not the same as POSIX: https://en.wikipedia.org/wiki/Single_UNIX_Specification.

You might say "their exact view of what UNIX is isn't important and POSIX is," but POSIX is not the UNIX spec. You might think the Unix spec isn't important - and it really isn't today. Linux generally targets what is important and what users care about - and that isn't the UNIX spec. It is often the same as the UNIX spec, but not always and there are deviations.


Posix is a subset of the Unix standard - it's necessary, but not sufficient to pass Unix certification.


Action! is a cool language.

However, by design it did not support recursion, directly or indirectly: https://atariwiki.org/wiki/Wiki.jsp?page=Action Variables were assigned constant locations, which made things easier for the cpu, but that's a harsh limitation.

It was only available on Atari and for a while you had to have a cartridge to run its programs. For many, these were deal-breakers, as you couldn't release your programs to many.

As always, trade-offs, but pretty big ones.


I believe that static assignment is the default for Turbo as well. If you want re-entrant/recursive calls, they were selectively enabled through a directive.

But at least it was directly supported by Turbo.

6502 and stack frames don’t really get along. 65816 was a much better citizen in that regard.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: