The Computer And General Tech Thread - Software, Hardware, Questions, etc.

Topics that can go away
bradrn
Posts: 5501
Joined: Fri Oct 19, 2018 1:25 am

Re: The Computer And General Tech Thread - Software, Hardware, Questions, etc.

Post by bradrn »

Travis B. wrote: Thu Nov 23, 2023 7:00 pm
bradrn wrote: Thu Nov 23, 2023 6:18 pm
Travis B. wrote: Thu Nov 23, 2023 6:10 pm

It definitely is true that the Julia ecosystem is less mature than some other ones, but it has a lot of potential (it seems to be the closest thing to a proper replacement for Fortran out there, and it can also replace Python and Matlab too).
Unfortunately, these problems seem pretty deeply embedded in how the Julia ecosystem is structured. The explanation in this article, which I’ve also heard elsewhere, is that Julia libraries rely pretty heavily on informal interfaces. (They can’t really be formalised since the type system doesn’t allow for it.) And of course that makes it really easy for different libraries to accidentally have slight inconsistencies in how they use and implement these interfaces, which causes these endless bugs.
The thing is to me this seems to not be all too different from what you find in most high-level, dynamic languages (read: not Haskell or Agda). There is no special reason why Python would be more resistant to such issues aside from the fact that it's more mature than Julia.
There is, though: Python simply doesn’t allow things to be combined as flexibly as Julia does. To quote the article:
Yuri Vishnevsky wrote: For example, I found that the Euclidean distance from the Distances package does not work with Unitful vectors. Others discovered that Julia’s function to run external commands doesn’t work with substrings. Still others found that Julia’s support for missing values breaks matrix multiplication in some cases. And that the standard library’s @distributed macro didn’t work with OffsetArrays.
These problems are simply impossible to get in Python. For instance, it’s quite difficult, and definitely unidiomatic, to define a notion of ‘Euclidean distance’ in Python in such a way that it can work with new and user-defined vector types. Even numpy arrays, in my experience, often don’t work with closely related libraries, unless they explicitly go out of their way to support numpy.

By contrast, Julia explicitly encourages programming in such a way that everything can generically work with everything else… which is a really nice idea, right up until it crashes and burns.
Travis B. wrote: Thu Nov 23, 2023 7:00 pm
bradrn wrote: Thu Nov 23, 2023 6:18 pm Also: ‘a proper replacement for Fortran’ is hyperbolic. As a Forth person, it should make sense to you when I say that Fortran gets its speed from being fairly low-level. (And also a few design choices which allow for extra optimisation, e.g. disallowing pointer aliasing.) Julia has a very good JIT compiler, but it’s still a high-level language. You couldn’t, for instance, reimplement BLAS in Julia (to my knowledge).
Yes, practically nothing will completely replace Fortran, as Fortran is basically as fast as you can get, aside from assembly. And yes, just like with Python, you can call Fortran from Julia need be. The key thing, though, is that Julia is basically the fastest you will get out of a truly high-level, dynamic language without calling an external library, unlike, say, Python, where code in the immediate language one is developing in is dead slow outside of external libraries (e.g. NumPy, SciPy) written in Fortran or C.
Fair enough. (Though surely Julia calls into external libraries too? I can’t imagine it not using BLAS/LAPACK, at least.)
Conlangs: Scratchpad | Texts | antilanguage
Software: See http://bradrn.com/projects.html
Other: Ergativity for Novices

(Why does phpBB not let me add >5 links here?)
Travis B.
Posts: 6017
Joined: Sun Jul 15, 2018 8:52 pm

Re: The Computer And General Tech Thread - Software, Hardware, Questions, etc.

Post by Travis B. »

bradrn wrote: Thu Nov 23, 2023 7:22 pm These problems are simply impossible to get in Python. For instance, it’s quite difficult, and definitely unidiomatic, to define a notion of ‘Euclidean distance’ in Python in such a way that it can work with new and user-defined vector types. Even numpy arrays, in my experience, often don’t work with closely related libraries, unless they explicitly go out of their way to support numpy.

By contrast, Julia explicitly encourages programming in such a way that everything can generically work with everything else… which is a really nice idea, right up until it crashes and burns.
I personally have found issues with NumPy at work, where if you forget to convert normal Python numbers into NumPy numbers and then attempt to use them with NumPy numbers transparently, Python will allow me to do it, but gives me very odd results.
Ġëbba nuġmy sik'a läka jälåsåmâxûiri mohhomijekene.
Leka ṙotammy sik'a ġëbbäri mohhomijekëlâṙáisä.
Q'omysa. Q'omysa. Q'omysa. Q'omysa. Q'omysa. Q'omysa. Q'omysa.
Travis B.
Posts: 6017
Joined: Sun Jul 15, 2018 8:52 pm

Re: The Computer And General Tech Thread - Software, Hardware, Questions, etc.

Post by Travis B. »

bradrn wrote: Thu Nov 23, 2023 7:22 pm Fair enough. (Though surely Julia calls into external libraries too? I can’t imagine it not using BLAS/LAPACK, at least.)
Oh certainly - Julia is designed with interoperation with other languages, be they languages like C or Fortran, or languages like Python or R, in mind.
Ġëbba nuġmy sik'a läka jälåsåmâxûiri mohhomijekene.
Leka ṙotammy sik'a ġëbbäri mohhomijekëlâṙáisä.
Q'omysa. Q'omysa. Q'omysa. Q'omysa. Q'omysa. Q'omysa. Q'omysa.
bradrn
Posts: 5501
Joined: Fri Oct 19, 2018 1:25 am

Re: The Computer And General Tech Thread - Software, Hardware, Questions, etc.

Post by bradrn »

Travis B. wrote: Thu Nov 23, 2023 7:29 pm
bradrn wrote: Thu Nov 23, 2023 7:22 pm These problems are simply impossible to get in Python. For instance, it’s quite difficult, and definitely unidiomatic, to define a notion of ‘Euclidean distance’ in Python in such a way that it can work with new and user-defined vector types. Even numpy arrays, in my experience, often don’t work with closely related libraries, unless they explicitly go out of their way to support numpy.

By contrast, Julia explicitly encourages programming in such a way that everything can generically work with everything else… which is a really nice idea, right up until it crashes and burns.
I personally have found issues with NumPy at work, where if you forget to convert normal Python numbers into NumPy numbers and then attempt to use them with NumPy numbers transparently, Python will allow me to do it, but gives me very odd results.
I have no idea what you mean by this. For one thing, I’ve never heard of a notion of ‘NumPy numbers’.
Conlangs: Scratchpad | Texts | antilanguage
Software: See http://bradrn.com/projects.html
Other: Ergativity for Novices

(Why does phpBB not let me add >5 links here?)
Travis B.
Posts: 6017
Joined: Sun Jul 15, 2018 8:52 pm

Re: The Computer And General Tech Thread - Software, Hardware, Questions, etc.

Post by Travis B. »

bradrn wrote: Thu Nov 23, 2023 7:33 pm
Travis B. wrote: Thu Nov 23, 2023 7:29 pm
bradrn wrote: Thu Nov 23, 2023 7:22 pm These problems are simply impossible to get in Python. For instance, it’s quite difficult, and definitely unidiomatic, to define a notion of ‘Euclidean distance’ in Python in such a way that it can work with new and user-defined vector types. Even numpy arrays, in my experience, often don’t work with closely related libraries, unless they explicitly go out of their way to support numpy.

By contrast, Julia explicitly encourages programming in such a way that everything can generically work with everything else… which is a really nice idea, right up until it crashes and burns.
I personally have found issues with NumPy at work, where if you forget to convert normal Python numbers into NumPy numbers and then attempt to use them with NumPy numbers transparently, Python will allow me to do it, but gives me very odd results.
I have no idea what you mean by this. For one thing, I’ve never heard of a notion of ‘NumPy numbers’.
NumPy has its own numeric types.
Ġëbba nuġmy sik'a läka jälåsåmâxûiri mohhomijekene.
Leka ṙotammy sik'a ġëbbäri mohhomijekëlâṙáisä.
Q'omysa. Q'omysa. Q'omysa. Q'omysa. Q'omysa. Q'omysa. Q'omysa.
bradrn
Posts: 5501
Joined: Fri Oct 19, 2018 1:25 am

Re: The Computer And General Tech Thread - Software, Hardware, Questions, etc.

Post by bradrn »

Travis B. wrote: Thu Nov 23, 2023 7:39 pm
bradrn wrote: Thu Nov 23, 2023 7:33 pm
Travis B. wrote: Thu Nov 23, 2023 7:29 pm

I personally have found issues with NumPy at work, where if you forget to convert normal Python numbers into NumPy numbers and then attempt to use them with NumPy numbers transparently, Python will allow me to do it, but gives me very odd results.
I have no idea what you mean by this. For one thing, I’ve never heard of a notion of ‘NumPy numbers’.
NumPy has its own numeric types.
Ah, I do actually remember this. But I don’t recall ever running into the problems you mention with them.
Conlangs: Scratchpad | Texts | antilanguage
Software: See http://bradrn.com/projects.html
Other: Ergativity for Novices

(Why does phpBB not let me add >5 links here?)
Travis B.
Posts: 6017
Joined: Sun Jul 15, 2018 8:52 pm

Re: The Computer And General Tech Thread - Software, Hardware, Questions, etc.

Post by Travis B. »

bradrn wrote: Thu Nov 23, 2023 7:43 pm
Travis B. wrote: Thu Nov 23, 2023 7:39 pm
bradrn wrote: Thu Nov 23, 2023 7:33 pm

I have no idea what you mean by this. For one thing, I’ve never heard of a notion of ‘NumPy numbers’.
NumPy has its own numeric types.
Ah, I do actually remember this. But I don’t recall ever running into the problems you mention with them.
I don't recall the exact issue I had except for it was really weird and took some time to debug, and if my memory isn't totally off might have had something to do with division or modulus operations where I was mixing NumPy numbers and normal Python numbers because I had forgotten to convert the Python numbers to NumPy numbers first.
Ġëbba nuġmy sik'a läka jälåsåmâxûiri mohhomijekene.
Leka ṙotammy sik'a ġëbbäri mohhomijekëlâṙáisä.
Q'omysa. Q'omysa. Q'omysa. Q'omysa. Q'omysa. Q'omysa. Q'omysa.
User avatar
alice
Posts: 884
Joined: Mon Jul 09, 2018 11:15 am
Location: 'twixt Survival and Guilt

Re: The Computer And General Tech Thread - Software, Hardware, Questions, etc.

Post by alice »

Well, I've learned enough in the past day in this thread to make me seriously reconsider.
I can no longer come up with decent signatures.
bradrn
Posts: 5501
Joined: Fri Oct 19, 2018 1:25 am

Re: The Computer And General Tech Thread - Software, Hardware, Questions, etc.

Post by bradrn »

alice wrote: Fri Nov 24, 2023 3:04 am Well, I've learned enough in the past day in this thread to make me seriously reconsider.
…reconsider what?
Conlangs: Scratchpad | Texts | antilanguage
Software: See http://bradrn.com/projects.html
Other: Ergativity for Novices

(Why does phpBB not let me add >5 links here?)
Travis B.
Posts: 6017
Joined: Sun Jul 15, 2018 8:52 pm

Re: The Computer And General Tech Thread - Software, Hardware, Questions, etc.

Post by Travis B. »

bradrn wrote: Fri Nov 24, 2023 3:13 am
alice wrote: Fri Nov 24, 2023 3:04 am Well, I've learned enough in the past day in this thread to make me seriously reconsider.
…reconsider what?
I think alice means reconsider using Julia.
Ġëbba nuġmy sik'a läka jälåsåmâxûiri mohhomijekene.
Leka ṙotammy sik'a ġëbbäri mohhomijekëlâṙáisä.
Q'omysa. Q'omysa. Q'omysa. Q'omysa. Q'omysa. Q'omysa. Q'omysa.
User avatar
alice
Posts: 884
Joined: Mon Jul 09, 2018 11:15 am
Location: 'twixt Survival and Guilt

Re: The Computer And General Tech Thread - Software, Hardware, Questions, etc.

Post by alice »

Travis B. wrote: Fri Nov 24, 2023 11:17 am
bradrn wrote: Fri Nov 24, 2023 3:13 am
alice wrote: Fri Nov 24, 2023 3:04 am Well, I've learned enough in the past day in this thread to make me seriously reconsider.
…reconsider what?
I think alice means reconsider using Julia.
alice thinks you're correct
I can no longer come up with decent signatures.
User avatar
Raholeun
Posts: 262
Joined: Wed Jul 11, 2018 9:09 am
Location: sub omnibus canonibus

Re: The Computer And General Tech Thread - Software, Hardware, Questions, etc.

Post by Raholeun »

My Linux Mint won't let me browse since updating it to v21. It shows I am connected to my home wifi network, but no browser will load a page. Other networks won't let me browse either. Debugging this is difficult, but my best guess is that it is an issue with the realtek drivers. How to ask for help in the appropriate forums, with no access to the web (without having to juggle usb drives with log files)?
bradrn
Posts: 5501
Joined: Fri Oct 19, 2018 1:25 am

Re: The Computer And General Tech Thread - Software, Hardware, Questions, etc.

Post by bradrn »

Raholeun wrote: Sat Nov 25, 2023 6:34 am My Linux Mint won't let me browse since updating it to v21. It shows I am connected to my home wifi network, but no browser will load a page. Other networks won't let me browse either. Debugging this is difficult, but my best guess is that it is an issue with the realtek drivers. How to ask for help in the appropriate forums, with no access to the web (without having to juggle usb drives with log files)?
Use a phone? (Or another computer.)

Also: what do you mean by 'won't let me browse'? What sort of error message are you getting? Does ping work at least?
Conlangs: Scratchpad | Texts | antilanguage
Software: See http://bradrn.com/projects.html
Other: Ergativity for Novices

(Why does phpBB not let me add >5 links here?)
User avatar
Raholeun
Posts: 262
Joined: Wed Jul 11, 2018 9:09 am
Location: sub omnibus canonibus

Re: The Computer And General Tech Thread - Software, Hardware, Questions, etc.

Post by Raholeun »

Using my phone or work laptop to peruse the forums for answers is OK, but the potential solutions mentioned there I have tried. Without success unfortunately. In the past the Mint forum people have been if great help, but then I could easily post what was printed in the terminal online and ask for tips. This won't work now .

It's just that no page will load in any browser. Pinging does work (so I thought, but should recheck).
bradrn
Posts: 5501
Joined: Fri Oct 19, 2018 1:25 am

Re: The Computer And General Tech Thread - Software, Hardware, Questions, etc.

Post by bradrn »

Raholeun wrote: Sat Nov 25, 2023 8:18 am Using my phone or work laptop to peruse the forums for answers is OK, but the potential solutions mentioned there I have tried. Without success unfortunately. In the past the Mint forum people have been if great help, but then I could easily post what was printed in the terminal online and ask for tips. This won't work now .
You can still take photos of the screen and upload them to the forum. It’s less convenient, but I have debugged issues that way when there’s no alternative.
It's just that no page will load in any browser. Pinging does work (so I thought, but should recheck).
Now that I think of it, you can also try running ip addr to see your network interfaces.

This is also a really good guide: https://wiki.archlinux.org/title/Networ ... connection. It’s on the Arch Linux Wiki, but a lot of the suggestions are very generic.
Conlangs: Scratchpad | Texts | antilanguage
Software: See http://bradrn.com/projects.html
Other: Ergativity for Novices

(Why does phpBB not let me add >5 links here?)
Travis B.
Posts: 6017
Joined: Sun Jul 15, 2018 8:52 pm

Re: The Computer And General Tech Thread - Software, Hardware, Questions, etc.

Post by Travis B. »

Nachtswalbe wrote: Wed Nov 29, 2023 9:39 pm Has anyone actually made a programming language on their own and what is the product lifecycle?
I'm responding to you so you'll get notified, but as mentioned in the original thread I am the author of zeptoforth, which is a Forth implementation cum operating system for a number of ARM Cortex-M-based microcontroller for things such as the RP2040 (which is in the Raspberry Pi Pico).

As for the product lifecycle, the main lifecycle is bringing everything up and running from nothing, which is long since complete by this point, adding a wide range of highly useful but non-critical functionality for the user's benefit (think things such as intertask communication/synchronization constructs, heap allocation, memory pools, object-orientation, etc.), adding support for peripherals built into the microcontrollers (such as UART's, SPI, I2C, ADC, PWM, etc.), which is largely complete for the RP2040 but is nowhere near complete for STM32 microcontrollers due to the sheer quantity of peripherals stuffed into them (and which for that reason will probably never be complete), adding support for other external chips controlled by the microcontroller, and adding support for additional microcontrollers.

Examples of such external chips include SDHC cards (and the FAT32 filesystem on top of them), the CYW43439 radio chip on the Raspberry Pi Pico W (and an IPv4 stack on top of that), which is pretty complete for WiFi but does not support Bluetooth because I don't have any real demand for it (and I suspect it would be overly complicated too), SSD1306 OLED bitmap displays, and ST7735S 16-bit color LCD displays. Supporting more external chips is a more open-ended affair, driven largely by demand and my own desires as to what I would like to support.

As for adding support for more microcontrollers, I am currently adding support for the STM32H745, but this is relatively low-priority as I do not see much demand for it as it is a rather expensive chip, and embedded hobbyists are drawn to inexpensive chips like moths to a lightbulb.
Ġëbba nuġmy sik'a läka jälåsåmâxûiri mohhomijekene.
Leka ṙotammy sik'a ġëbbäri mohhomijekëlâṙáisä.
Q'omysa. Q'omysa. Q'omysa. Q'omysa. Q'omysa. Q'omysa. Q'omysa.
User avatar
Raholeun
Posts: 262
Joined: Wed Jul 11, 2018 9:09 am
Location: sub omnibus canonibus

Re: The Computer And General Tech Thread - Software, Hardware, Questions, etc.

Post by Raholeun »

bradrn wrote: Sat Nov 25, 2023 3:56 pm
Raholeun wrote: Sat Nov 25, 2023 8:18 am Using my phone or work laptop to peruse the forums for answers is OK, but the potential solutions mentioned there I have tried. Without success unfortunately. In the past the Mint forum people have been if great help, but then I could easily post what was printed in the terminal online and ask for tips. This won't work now .
[Advice]
So I ended up just wiping the thing and installing Ubuntu 22 from USB. No regrets yet, hardly any hassle compared to how stressful it was to install and properly configure Linux Mint.
User avatar
Raphael
Posts: 4039
Joined: Sun Jul 22, 2018 6:36 am

Re: The Computer And General Tech Thread - Software, Hardware, Questions, etc.

Post by Raphael »

How on Earth am I supposed to handle this LogoFAIL news?

https://arstechnica.com/security/2023/1 ... re-attack/

FWIW, for my mainboard model, the latest update (or something) on the manufacturer's website is from 2015. And I have no idea how to update a UEFI.
User avatar
Raphael
Posts: 4039
Joined: Sun Jul 22, 2018 6:36 am

Re: The Computer And General Tech Thread - Software, Hardware, Questions, etc.

Post by Raphael »

Raphael wrote: Wed Dec 06, 2023 12:51 pm How on Earth am I supposed to handle this LogoFAIL news?

https://arstechnica.com/security/2023/1 ... re-attack/

FWIW, for my mainboard model, the latest update (or something) on the manufacturer's website is from 2015. And I have no idea how to update a UEFI.
Bump?
Travis B.
Posts: 6017
Joined: Sun Jul 15, 2018 8:52 pm

Re: The Computer And General Tech Thread - Software, Hardware, Questions, etc.

Post by Travis B. »

Raphael wrote: Wed Dec 13, 2023 1:01 pm
Raphael wrote: Wed Dec 06, 2023 12:51 pm How on Earth am I supposed to handle this LogoFAIL news?

https://arstechnica.com/security/2023/1 ... re-attack/

FWIW, for my mainboard model, the latest update (or something) on the manufacturer's website is from 2015. And I have no idea how to update a UEFI.
Bump?
The key thing to remember about this exploit is the attacker already needs to have root access on your system... and by that point you're up a creek anyways.
Ġëbba nuġmy sik'a läka jälåsåmâxûiri mohhomijekene.
Leka ṙotammy sik'a ġëbbäri mohhomijekëlâṙáisä.
Q'omysa. Q'omysa. Q'omysa. Q'omysa. Q'omysa. Q'omysa. Q'omysa.
Post Reply