<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: c3d</title><link>https://news.ycombinator.com/user?id=c3d</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Thu, 09 Apr 2026 08:36:40 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=c3d" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by c3d in "Open source calculator firmware DB48X forbids CA/CO use due to age verification"]]></title><description><![CDATA[
<p>I'm not sure how you draw the conclusion that there is no covered app store. Are you sure <a href="https://github.com/c3d/db48x/tree/dev/library" rel="nofollow">https://github.com/c3d/db48x/tree/dev/library</a> is not covered, for example? More importantly, are you willing to indemnify me if some lawyer decides to argue that this projects falls under the law and that I should pay $7500 per child using it?</p>
]]></description><pubDate>Thu, 05 Mar 2026 07:18:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=47258606</link><dc:creator>c3d</dc:creator><comments>https://news.ycombinator.com/item?id=47258606</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47258606</guid></item><item><title><![CDATA[New comment by c3d in "Open source calculator firmware DB48X forbids CA/CO use due to age verification"]]></title><description><![CDATA[
<p>No, I am not ignoring the GPLv3. This is not a license, but a legal notice that residents of these states, by applying the GPL and freely running software that may violate local laws, are the ones that may have to deal with the consequences.<p>I clarified in a recently updated version of the text, and I refer the readers to this discussion. <a href="https://github.com/c3d/db48x/blob/dev/LEGAL-NOTICE.md" rel="nofollow">https://github.com/c3d/db48x/blob/dev/LEGAL-NOTICE.md</a></p>
]]></description><pubDate>Thu, 05 Mar 2026 07:17:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=47258597</link><dc:creator>c3d</dc:creator><comments>https://news.ycombinator.com/item?id=47258597</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47258597</guid></item><item><title><![CDATA[New comment by c3d in "Open source calculator firmware DB48X forbids CA/CO use due to age verification"]]></title><description><![CDATA[
<p>This is a valid point, and I was aware of it, though the wording was not clear enough. So I clarified in a recent commit. I also added Brazil and New.<p><a href="https://github.com/c3d/db48x/blob/dev/LEGAL-NOTICE.md" rel="nofollow">https://github.com/c3d/db48x/blob/dev/LEGAL-NOTICE.md</a></p>
]]></description><pubDate>Thu, 05 Mar 2026 07:12:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=47258548</link><dc:creator>c3d</dc:creator><comments>https://news.ycombinator.com/item?id=47258548</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47258548</guid></item><item><title><![CDATA[New comment by c3d in "Open source calculator firmware DB48X forbids CA/CO use due to age verification"]]></title><description><![CDATA[
<p>Exactly</p>
]]></description><pubDate>Thu, 05 Mar 2026 06:59:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=47258449</link><dc:creator>c3d</dc:creator><comments>https://news.ycombinator.com/item?id=47258449</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47258449</guid></item><item><title><![CDATA[New comment by c3d in "Open source calculator firmware DB48X forbids CA/CO use due to age verification"]]></title><description><![CDATA[
<p>DB48x certainly has a GitHub site with freely downloadable pieces of software that can run on the calculator. For instance here: <a href="https://github.com/c3d/db48x/tree/stable/library" rel="nofollow">https://github.com/c3d/db48x/tree/stable/library</a><p>Some of these include contributions from third parties.<p>The problem is that the law is written without a precise enough wording that would ensure that there is no risk whatsoever for me. And the penalty is stiff, something like $7500 per child using the software.<p>As for mandating age verification, it's unclear to me how you think that it's possible to deliver an API giving age bracket info (in the case of DB48x, the idiomatic way would be an RPL command that returns that info) without having a facility to enter age or date of birth or something like that. So yes, everyone who reads the text interprets it as mandating age verification.</p>
]]></description><pubDate>Thu, 05 Mar 2026 06:58:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=47258440</link><dc:creator>c3d</dc:creator><comments>https://news.ycombinator.com/item?id=47258440</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47258440</guid></item><item><title><![CDATA[New comment by c3d in "Open source calculator firmware DB48X forbids CA/CO use due to age verification"]]></title><description><![CDATA[
<p>DB48x author here. To be fair, the definitions of "operating system", "application" or "user" are so vague that I decided to<p>1. Not take any risk
2. Take a stand<p>The point is more to draw attention</p>
]]></description><pubDate>Wed, 04 Mar 2026 22:14:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=47254701</link><dc:creator>c3d</dc:creator><comments>https://news.ycombinator.com/item?id=47254701</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47254701</guid></item><item><title><![CDATA[New comment by c3d in "DB48X: High Performance Scientific Calculator, Reinvented"]]></title><description><![CDATA[
<p>A video explaining the philosophy and technology behind the project. 
<a href="https://www.youtube.com/watch?v=jNOA39HnkcM" rel="nofollow">https://www.youtube.com/watch?v=jNOA39HnkcM</a></p>
]]></description><pubDate>Thu, 07 Nov 2024 20:16:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=42080498</link><dc:creator>c3d</dc:creator><comments>https://news.ycombinator.com/item?id=42080498</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42080498</guid></item><item><title><![CDATA[New comment by c3d in "DB48X: High Performance Scientific Calculator, Reinvented"]]></title><description><![CDATA[
<p>Sorry about that ;-)</p>
]]></description><pubDate>Wed, 06 Nov 2024 23:35:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=42071268</link><dc:creator>c3d</dc:creator><comments>https://news.ycombinator.com/item?id=42071268</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42071268</guid></item><item><title><![CDATA[New comment by c3d in "DB48X: High Performance Scientific Calculator, Reinvented"]]></title><description><![CDATA[
<p>It's a tribute to Hewlett and Packard, but taking the first names, and with the individuals reversed for balance.<p>I do not believe there is any possible infringement on a clearly new design, even if that design is intentionally reminiscent of the HP logo.</p>
]]></description><pubDate>Wed, 06 Nov 2024 23:28:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=42071199</link><dc:creator>c3d</dc:creator><comments>https://news.ycombinator.com/item?id=42071199</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42071199</guid></item><item><title><![CDATA[New comment by c3d in "DB48X: High Performance Scientific Calculator, Reinvented"]]></title><description><![CDATA[
<p>In theory yes. In practice, the TI 83/84 are probably not beefy enough, and the NumWorks has a keyboard that makes the endeavour really complicated.</p>
]]></description><pubDate>Wed, 06 Nov 2024 23:28:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=42071196</link><dc:creator>c3d</dc:creator><comments>https://news.ycombinator.com/item?id=42071196</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42071196</guid></item><item><title><![CDATA[New comment by c3d in "DB48X: High Performance Scientific Calculator, Reinvented"]]></title><description><![CDATA[
<p>There are three floating-point representations:<p>- A variable-precision decimal floating point that uses base-1000 internally with 10 bits for 1000 values instead of 1024, so reduced memory waste, and LEB128 for size and exponent encoding. So 1.23 is 5 bytes, and each decimal value has its own precision. The precision only affects computations, not stored objects, so you can adjust the precision for each step of a computation.<p>- IEEE754 hardware accelerated 32-bit and 64-bit binary floating point.<p>In line with RPL, there are many other object types, including arbitrary-precision integers (123 is 2 bytes, 100! is 68 bytes), symbolic expressions, programs, lists, and so on.</p>
]]></description><pubDate>Wed, 06 Nov 2024 23:28:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=42071194</link><dc:creator>c3d</dc:creator><comments>https://news.ycombinator.com/item?id=42071194</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42071194</guid></item><item><title><![CDATA[New comment by c3d in "DB48X: High Performance Scientific Calculator, Reinvented"]]></title><description><![CDATA[
<p>This works with Firefox 132.0, tested on Fedora 41 right now.</p>
]]></description><pubDate>Wed, 06 Nov 2024 23:28:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=42071193</link><dc:creator>c3d</dc:creator><comments>https://news.ycombinator.com/item?id=42071193</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42071193</guid></item><item><title><![CDATA[New comment by c3d in "DB48X: High Performance Scientific Calculator, Reinvented"]]></title><description><![CDATA[
<p>This is done on that page, though on some browsers it requires an explicit page reload. This works with Mozilla 132.0, just tested on Fedora 41.</p>
]]></description><pubDate>Wed, 06 Nov 2024 23:28:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=42071192</link><dc:creator>c3d</dc:creator><comments>https://news.ycombinator.com/item?id=42071192</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42071192</guid></item><item><title><![CDATA[New comment by c3d in "DB48X: High Performance Scientific Calculator, Reinvented"]]></title><description><![CDATA[
<p>SharedArrayBuffer is necessary to run multiple threads with EmScripten.</p>
]]></description><pubDate>Wed, 06 Nov 2024 23:28:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=42071191</link><dc:creator>c3d</dc:creator><comments>https://news.ycombinator.com/item?id=42071191</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42071191</guid></item><item><title><![CDATA[New comment by c3d in "DB48X: High Performance Scientific Calculator, Reinvented"]]></title><description><![CDATA[
<p>Could you open an issue on the project's web site about the trouble you had installing? (<a href="http://github.com/c3d/db48x">http://github.com/c3d/db48x</a>). Thanks!<p>Also, were you aware of this tutorial: <a href="https://www.youtube.com/watch?v=rVWy4N0lBOI&list=PLz1qkflzABy-Cs1R07zGB8A9K5Yjolmlf&index=7" rel="nofollow">https://www.youtube.com/watch?v=rVWy4N0lBOI&list=PLz1qkflzAB...</a></p>
]]></description><pubDate>Wed, 06 Nov 2024 23:28:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=42071188</link><dc:creator>c3d</dc:creator><comments>https://news.ycombinator.com/item?id=42071188</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42071188</guid></item><item><title><![CDATA[New comment by c3d in "DB48X: High Performance Scientific Calculator, Reinvented"]]></title><description><![CDATA[
<p>There is a free iPhone version as well (called DB40X). Maybe some day give it a try?</p>
]]></description><pubDate>Wed, 06 Nov 2024 23:28:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=42071187</link><dc:creator>c3d</dc:creator><comments>https://news.ycombinator.com/item?id=42071187</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42071187</guid></item><item><title><![CDATA[New comment by c3d in "DB48X: High Performance Scientific Calculator, Reinvented"]]></title><description><![CDATA[
<p>A physicist working on the project used this to compute the space contraction for the <a href="https://en.wikipedia.org/wiki/Oh-My-God_particle" rel="nofollow">https://en.wikipedia.org/wiki/Oh-My-God_particle</a>, which presumably traveled at 0.9999999999999999999999951 time the speed of light. You cannot do that with your HP48GX directly using standard formulas, because it only has 12 digits of precision.</p>
]]></description><pubDate>Wed, 06 Nov 2024 23:27:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=42071182</link><dc:creator>c3d</dc:creator><comments>https://news.ycombinator.com/item?id=42071182</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42071182</guid></item><item><title><![CDATA[New comment by c3d in "DB48X: High Performance Scientific Calculator, Reinvented"]]></title><description><![CDATA[
<p>Let's see your Python answers to the following examples:<p>1. What happens if I rotate binary pattern 1001 right by 3 positions on a 18-bit PDP-9?<p><pre><code>  RPL code: 18 STWS 2#1001 3 RRC

  Result: #8001 in base 16, #1000 0000 0000 0001 in base 2.
</code></pre>
What about if I do this on 6 36-bit words?<p><pre><code>  RPL code: 6 36 * STWS 2#1001 3 RRC

  Result: #20 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0001
</code></pre>
2. What is the symbolic expression of the determinant of some 2x2 matrix?<p><pre><code>  Program: [[1 y]['2+x' b]] DET

  Answer: 'b-(x+2)·y' (shows graphically on calculator screen)
</code></pre>
3. What is the output voltage of a voltage divider with input voltage 100V, R1=4kΩ, R2=10Ω<p><pre><code>  Program: R1=4_kΩ R2=10_Ω V=100_V 'ROOT(ⒺVolt Divider;[V1];[1_V])' EVAL

  Result: [ V1=99.75 V ]

  Note that ⒺVolt Divider is a built-in equation, but you can of course put your own.
</code></pre>
4. Verify if Ramanujan constant exp(sqrt(163)*pi) is an integer.<p><pre><code>  Program: « 'exp(√ 163·Ⓒπ)'60 PRECISION →Num FractionalPart »
  Result: -7.50E⁻¹³, so no, not an integer, but really close
</code></pre>
5. Verify Maxwell's value for the speed of light, epsilon0 * mu0 * c^2 = 1.<p><pre><code>  Program: '(√(Ⓒε0·Ⓒμ0))⁻¹'  →Num 
  Result: 299 792 458.00 m/(F↑(¹/₂)·H↑(¹/₂))
  Convert to SI units: UBASE
  Result: 299 792 458. m/s
  Convert to feet per second: ³⁷⁴ ⁷⁴⁰ ⁵⁷² ⁵⁰⁰/₃₈₁ ft/s or 983 571 056.43 ft/s.

  (if you subtract the Ⓒc constant, you get -0.00031 11057 21 m/s)
</code></pre>
6. Check the Collatz conjecture on 989345275647<p><pre><code>  Program: « if dup 1 ≠ then if dup 2 mod then 3 × 1 + else 2 ÷ end Collatz end » 'Collatz' STO 989345275647 Collatz

  Result: 1 (conjecture is verified)
</code></pre>
7. Given that it's now Nov 7, 00:07:51 and that a program I started on Nov 1st at 23:15:27 just finished, how long did it run?<p><pre><code>  Program: 20241107.000751_date 20241101.231527_date - 1_h convert UVAL →HMS
  Result: 120:52:24
</code></pre>
(the "1_h convert UVAL →HMS" should really just be →HMS, but at the moment, →HMS is not smart enough to convert from days)</p>
]]></description><pubDate>Wed, 06 Nov 2024 23:23:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=42071146</link><dc:creator>c3d</dc:creator><comments>https://news.ycombinator.com/item?id=42071146</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42071146</guid></item><item><title><![CDATA[New comment by c3d in "DB48X: High Performance Scientific Calculator, Reinvented"]]></title><description><![CDATA[
<p>> Why not?<p>Keystroke count and progressive computations.<p>Let me illustrate using an example from a YouTube video called "The hardest Exam Question : Only 6% of students solved it correctly" (<a href="https://www.youtube.com/watch?v=NfgEPsm9Jzw" rel="nofollow">https://www.youtube.com/watch?v=NfgEPsm9Jzw</a>), which is about a simplified formulation for (sqrt(2)-1)^10.<p>The first remark is that a CAS-capable calculator like DB48x can help with the symbolic part of the computation shown in the video. However, to be fair, DB48x still lacks some of the relevant HP48 interactive equation manipulation features to be able to demonstrate that. So let's focus for now on the numerical part.<p>The author shows that (sqrt(2)-1)^10 is the same as 3363-2378*sqrt(2). Let's evaluate that using bc.<p>Attempt 1: bc, then (sqrt(2)-1)^10-(3363-2378*sqrt(2))<p>Result: -985. Er... What?<p>OK. What is the option for precision again? man bc. Search for precision. Mentions the @ operator. Does not seem to do it. 5 minutes of search later, find that precision is called scale, that I need the -S option. I could also presumably use the -l option, which experimentally seems to set the scale to 20. Starting to remember why I am not a big fan of bc ;-)<p>Trying again. bc -l<p>(sqrt(2)-1)^10-(3363-2378*sqrt(2)) now gives me:<p>-.00000000000000000402.<p>Counting "bc -l" and ENTER keys, that's I believe 42 keystrokes.<p>Trying again with db48x: I need 23 keys using the most naive RPN data entry. The result is -1.57861 99E⁻²⁰ with the default 24-digit precision.<p>I can also enter the same algebraic expression as in bc directly in the simulator using copy-paste. I get a nice graphical rendering of the expression, which I can check, and then just one key (EVAL/=) to get the numerical value.<p>As another example, let's try to check if the Ramanujan constant in an integer:<p>bc -l<p>e(sqrt(163)*pi(20))<p>262537412640768743.98947654935272888605<p>That does not look like an integer to me. And it's way more than the 20 digits I would expect from scale. What is weird is that it gives me a false sense of accuracy, all the digits after "43.9" are bogus, as shown by switching the scaling to 100:<p>bc -l -S100<p>e(sqrt(163)*pi(100))<p>262537412640768743.9999999999992500725971981856888793538563373369908\
627075374103782106479101186073126534265238592035363<p>21 keystrokes, and a result that is a bit hard to interpret with the default precision (scaling). In other words, it's pretty easy to get bogus numerical results and not know it.<p>With DB48x, after selecting a precision of 100, 11 keystrokes including menu selection to get the pi constant, and I get:
 262 537 412 640 768 743.99999 99999 99250 07259 71981 85688 87935 38563 37336 99086 27075 37410 37821 06479 10118 60730 76<p>> At least I can easily copy the results and the code to a document which avoids transcription errors.<p>This is also true with the DB48x simulator, which supports copy and paste both ways. This is how I copied the values above, or entered the exact same algebraic expression as in bc into the simulator.</p>
]]></description><pubDate>Wed, 06 Nov 2024 22:31:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=42070557</link><dc:creator>c3d</dc:creator><comments>https://news.ycombinator.com/item?id=42070557</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42070557</guid></item><item><title><![CDATA[New comment by c3d in "DB48X: High Performance Scientific Calculator, Reinvented"]]></title><description><![CDATA[
<p>> I admire the project, although I would probably have taken a different path (emulation) to get the biggest effect with the smallest possible effort :-)<p>Emulators are stuck in the past, since they need to rely on the HP ROMs. So all the nice new features in DB48x, like variable-precision decimal arithmetic, support for higher-resolution graphics and colour, tail-recursion optimization, object size optimizations, polar and rectangular complex numbers or vectors, or the extensive Markdown-based builtin help would all be impossible to implement.<p>> I wish there was a good HP50G emulator for iOS — there used to be one, but it was abandoned (contact me if you want to develop it and would like to get the source code, it was under the GPL and I got it from the author).<p>I have two pretty good emulators on my iPhone, one is iHP48, the other is i48. Both can emulate the HP50G if you load the correct ROM, IIRC.<p>That being said, I second the idea that if you got the source in GPL form, you should publish them on GitHub. Or share with me and I will do it, possibly restore it (I have vague plans to restore Emu71 as well, when I'm done with DB48x).</p>
]]></description><pubDate>Wed, 06 Nov 2024 22:29:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=42070528</link><dc:creator>c3d</dc:creator><comments>https://news.ycombinator.com/item?id=42070528</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42070528</guid></item></channel></rss>