discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

latest stable version?

JB
Jordan Brown
Fri, Jan 23, 2026 11:54 PM

On 1/23/2026 3:40 PM, nop head wrote:

I haven't got any identifiers that look like hex constants. All
identifiers that start with numbers now warn.

Yes, and warnings are not failures.  Exponential-notation-like words
have never been usable as identifiers.  Hex-constant-like words are no
longer usable.  As I said, we now warn that all such names are on thin
ice.  For instance, it is not implausible that 0oXXXXX and 0bXXXXX might
be used for octal and binary constants.

I also consider it strange and confusing that 1e12 is a number, but
1e12x is an identifier, or that 0xDEUCE is a valid identifier but 0xACE
is not.  Or, for that matter, that 1xACE is a valid identifier but 0xACE
is not.

On 1/23/2026 3:40 PM, nop head wrote: > I haven't got any identifiers that look like hex constants. All > identifiers that start with numbers now warn. Yes, and warnings are not failures.  Exponential-notation-like words have never been usable as identifiers.  Hex-constant-like words are no longer usable.  As I said, we now *warn* that all such names are on thin ice.  For instance, it is not implausible that 0oXXXXX and 0bXXXXX might be used for octal and binary constants. I also consider it strange and confusing that 1e12 is a number, but 1e12x is an identifier, or that 0xDEUCE is a valid identifier but 0xACE is not.  Or, for that matter, that 1xACE is a valid identifier but 0xACE is not.
JB
Jordan Brown
Sat, Jan 24, 2026 12:01 AM

On 1/23/2026 3:41 PM, Harvey white via Discuss wrote:

WARNING: Can't find include file 'customSCADlib/lib.scad'. in file ,
line 15

I suppose I should ask "what file" line 15.

Usually that means an unnamed unsaved file - the file in front of you
in the editor.

Ah, ok, classic use of "." in a path, gotcha

I get a subtly different message:

WARNING: Can't find include file 'nonexist'. in file ., line 1

The first dot, after the close quote, is I think just a bug.  The
particular call thinks it's writing a full sentence, so ends with a
period, but then the logging infrastructure goes and adds the "in file"
part.

The second dot I suspect is the result of canonicalizing the empty
string - which, because of long (and arguably bad) UNIX tradition is a
synonym for ".". But really the infrastructure should be smarter than
that, and recognize the empty-name case and say something like "in the
current file" or "in an unsaved file".

On 1/23/2026 3:41 PM, Harvey white via Discuss wrote: >>> WARNING: Can't find include file 'customSCADlib/lib.scad'. in file , >>> line 15 >>> >>> I suppose I should ask "what file" line 15. >> >> Usually that means an unnamed unsaved file - the file in front of you >> in the editor. > > Ah, ok, classic use of "." in a path, gotcha I get a subtly different message: > WARNING: Can't find include file 'nonexist'. in file ., line 1 > The first dot, after the close quote, is I think just a bug.  The particular call thinks it's writing a full sentence, so ends with a period, but then the logging infrastructure goes and adds the "in file" part. The second dot I suspect is the result of canonicalizing the empty string - which, because of long (and arguably bad) UNIX tradition is a synonym for ".". But really the infrastructure should be smarter than that, and recognize the empty-name case and say something like "in the current file" or "in an unsaved file".
NH
nop head
Sat, Jan 24, 2026 12:13 AM

Yes but none of my identifiers look like that. They are mostly part numbers
of real objects.

DEPRECATED: Variable names starting with digits ("6p4mm_disc") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad,
line 42

DEPRECATED: Variable names starting with digits ("10mm_disc") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad,
line 43

DEPRECATED: Variable names starting with digits ("6p4mm_disc") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad,
line 45

DEPRECATED: Variable names starting with digits ("10mm_disc") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad,
line 45

DEPRECATED: Variable names starting with digits ("02531A") will be removed
in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad,
line 24

DEPRECATED: Variable names starting with digits ("02352A") will be removed
in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad,
line 25

DEPRECATED: Variable names starting with digits ("7_segments") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad,
line 28

DEPRECATED: Variable names starting with digits ("02531A") will be removed
in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad,
line 28

DEPRECATED: Variable names starting with digits ("02352A") will be removed
in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad,
line 28

DEPRECATED: Variable names starting with digits ("9DOF_stick") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pcbs.scad,
line 1369

DEPRECATED: Variable names starting with digits ("9DOF_stick") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pcbs.scad,
line 1405

DEPRECATED: Variable names starting with digits ("5_160430_7") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/fastons.scad,
line 24

DEPRECATED: Variable names starting with digits ("5_160430_7") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/fastons.scad,
line 26

DEPRECATED: Variable names starting with digits ("28BYJ_48") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad,
line 30

DEPRECATED: Variable names starting with digits ("35BYGHJ75") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad,
line 31

DEPRECATED: Variable names starting with digits ("28BYJ_48") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad,
line 33

DEPRECATED: Variable names starting with digits ("35BYGHJ75") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad,
line 33

DEPRECATED: Variable names starting with digits ("2p54header") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pin_headers.scad,
line 27

DEPRECATED: Variable names starting with digits ("2p54joiner") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pin_headers.scad,
line 28

DEPRECATED: Variable names starting with digits ("2p54header") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pin_headers.scad,
line 34

DEPRECATED: Variable names starting with digits ("80ST_faceplate") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad,
line 20

DEPRECATED: Variable names starting with digits ("80ST_faceplate") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad,
line 26

DEPRECATED: Variable names starting with digits ("80ST_faceplate") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad,
line 27

DEPRECATED: Variable names starting with digits ("80ST_faceplate") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad,
line 28

DEPRECATED: Variable names starting with digits ("80ST_faceplate") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad,
line 29

On Fri, 23 Jan 2026 at 23:54, Jordan Brown openscad@jordan.maileater.net
wrote:

On 1/23/2026 3:40 PM, nop head wrote:

I haven't got any identifiers that look like hex constants. All
identifiers that start with numbers now warn.

Yes, and warnings are not failures.  Exponential-notation-like words have
never been usable as identifiers.  Hex-constant-like words are no longer
usable.  As I said, we now warn that all such names are on thin ice.  For
instance, it is not implausible that 0oXXXXX and 0bXXXXX might be used for
octal and binary constants.

I also consider it strange and confusing that 1e12 is a number, but 1e12x
is an identifier, or that 0xDEUCE is a valid identifier but 0xACE is not.
Or, for that matter, that 1xACE is a valid identifier but 0xACE is not.

Yes but none of my identifiers look like that. They are mostly part numbers of real objects. DEPRECATED: Variable names starting with digits ("6p4mm_disc") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad, line 42 DEPRECATED: Variable names starting with digits ("10mm_disc") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad, line 43 DEPRECATED: Variable names starting with digits ("6p4mm_disc") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad, line 45 DEPRECATED: Variable names starting with digits ("10mm_disc") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad, line 45 DEPRECATED: Variable names starting with digits ("02531A") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad, line 24 DEPRECATED: Variable names starting with digits ("02352A") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad, line 25 DEPRECATED: Variable names starting with digits ("7_segments") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad, line 28 DEPRECATED: Variable names starting with digits ("02531A") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad, line 28 DEPRECATED: Variable names starting with digits ("02352A") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad, line 28 DEPRECATED: Variable names starting with digits ("9DOF_stick") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pcbs.scad, line 1369 DEPRECATED: Variable names starting with digits ("9DOF_stick") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pcbs.scad, line 1405 DEPRECATED: Variable names starting with digits ("5_160430_7") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/fastons.scad, line 24 DEPRECATED: Variable names starting with digits ("5_160430_7") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/fastons.scad, line 26 DEPRECATED: Variable names starting with digits ("28BYJ_48") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad, line 30 DEPRECATED: Variable names starting with digits ("35BYGHJ75") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad, line 31 DEPRECATED: Variable names starting with digits ("28BYJ_48") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad, line 33 DEPRECATED: Variable names starting with digits ("35BYGHJ75") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad, line 33 DEPRECATED: Variable names starting with digits ("2p54header") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pin_headers.scad, line 27 DEPRECATED: Variable names starting with digits ("2p54joiner") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pin_headers.scad, line 28 DEPRECATED: Variable names starting with digits ("2p54header") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pin_headers.scad, line 34 DEPRECATED: Variable names starting with digits ("80ST_faceplate") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad, line 20 DEPRECATED: Variable names starting with digits ("80ST_faceplate") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad, line 26 DEPRECATED: Variable names starting with digits ("80ST_faceplate") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad, line 27 DEPRECATED: Variable names starting with digits ("80ST_faceplate") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad, line 28 DEPRECATED: Variable names starting with digits ("80ST_faceplate") will be removed in future releases. in file ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad, line 29 On Fri, 23 Jan 2026 at 23:54, Jordan Brown <openscad@jordan.maileater.net> wrote: > On 1/23/2026 3:40 PM, nop head wrote: > > I haven't got any identifiers that look like hex constants. All > identifiers that start with numbers now warn. > > > Yes, and warnings are not failures. Exponential-notation-like words have > never been usable as identifiers. Hex-constant-like words are no longer > usable. As I said, we now *warn* that all such names are on thin ice. For > instance, it is not implausible that 0oXXXXX and 0bXXXXX might be used for > octal and binary constants. > > I also consider it strange and confusing that 1e12 is a number, but 1e12x > is an identifier, or that 0xDEUCE is a valid identifier but 0xACE is not. > Or, for that matter, that 1xACE is a valid identifier but 0xACE is not. > >
CC
Cory Cross
Sat, Jan 24, 2026 12:34 AM

I also consider it strange and confusing that 1e12 is a number, but
1e12x is an identifier, or that 0xDEUCE is a valid identifier but 0xACE
is not.  Or, for that matter, that 1xACE is a valid identifier but 0xACE
is not.

I've always been sad you can't use scientific notation in base 16 in, uh, every computer language?

(For those confused: e is not a number is base 10, so 1e12 is unambiguously 110^12, but it is a number in base 16, so 0x1e12 could be 116^18 (in decimal) OR 7698 and so nobody bothers with a special syntax when you can just write 0x1*0x10^0x12 if you intended that)

>I also consider it strange and confusing that 1e12 is a number, but >1e12x is an identifier, or that 0xDEUCE is a valid identifier but 0xACE >is not.  Or, for that matter, that 1xACE is a valid identifier but 0xACE >is not. I've always been sad you can't use scientific notation in base 16 in, uh, every computer language? (For those confused: e is not a number is base 10, so 1e12 is unambiguously 1*10^12, but it is a number in base 16, so 0x1e12 could be 1*16^18 (in decimal) OR 7698 and so nobody bothers with a special syntax when you can just write 0x1*0x10^0x12 if you intended that)
LD
lee.deraud@roadrunner.com
Sat, Jan 24, 2026 3:34 AM

Not really relevant to this specific discussion but certainly appropriate to the title...
Am I the only one who thinks it's WAY past time to retire 2021.01 as the default download?

I have no doubt that particular question came up multiple times long before I got here, but having something of that vintage as (presumably) the "newest" stable version kind of screams "abandoned project", which I know is definitely not the case.

-----Original Message-----
From: Harvey white via Discuss discuss@lists.openscad.org
Sent: Friday, January 23, 2026 9:08 AM
To: nop head via Discuss discuss@lists.openscad.org
Cc: Harvey white madyn@dragonworks.info
Subject: [OpenSCAD] latest stable version?

I'm looking for the latest, but most stable, version of OpenSCAD.  Going through the snapshots, it looks as if 2026.01.19 is it.

Do I have it right?  The website says that the latest stable version 2021.01, which I have.

Thanks.

Harvey


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Not really relevant to this specific discussion but certainly appropriate to the title... Am I the only one who thinks it's WAY past time to retire 2021.01 as the default download? I have no doubt that particular question came up multiple times long before I got here, but having something of that vintage as (presumably) the "newest" stable version kind of screams "abandoned project", which I know is definitely not the case. -----Original Message----- From: Harvey white via Discuss <discuss@lists.openscad.org> Sent: Friday, January 23, 2026 9:08 AM To: nop head via Discuss <discuss@lists.openscad.org> Cc: Harvey white <madyn@dragonworks.info> Subject: [OpenSCAD] latest stable version? I'm looking for the latest, but most stable, version of OpenSCAD. Going through the snapshots, it looks as if 2026.01.19 is it. Do I have it right? The website says that the latest stable version 2021.01, which I have. Thanks. Harvey _______________________________________________ OpenSCAD mailing list To unsubscribe send an email to discuss-leave@lists.openscad.org
HW
Harvey white
Sat, Jan 24, 2026 3:53 AM

You're not the only one, hence..... I asked.

Harvey

On 1/23/2026 10:34 PM, Lee DeRaud via Discuss wrote:

Not really relevant to this specific discussion but certainly appropriate to the title...
Am I the only one who thinks it's WAY past time to retire 2021.01 as the default download?

I have no doubt that particular question came up multiple times long before I got here, but having something of that vintage as (presumably) the "newest" stable version kind of screams "abandoned project", which I know is definitely not the case.

-----Original Message-----
From: Harvey white via Discuss discuss@lists.openscad.org
Sent: Friday, January 23, 2026 9:08 AM
To: nop head via Discuss discuss@lists.openscad.org
Cc: Harvey white madyn@dragonworks.info
Subject: [OpenSCAD] latest stable version?

I'm looking for the latest, but most stable, version of OpenSCAD.  Going through the snapshots, it looks as if 2026.01.19 is it.

Do I have it right?  The website says that the latest stable version 2021.01, which I have.

Thanks.

Harvey


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

You're not the only one, hence..... I asked. Harvey On 1/23/2026 10:34 PM, Lee DeRaud via Discuss wrote: > Not really relevant to this specific discussion but certainly appropriate to the title... > Am I the only one who thinks it's WAY past time to retire 2021.01 as the default download? > > I have no doubt that particular question came up multiple times long before I got here, but having something of that vintage as (presumably) the "newest" stable version kind of screams "abandoned project", which I know is definitely not the case. > > -----Original Message----- > From: Harvey white via Discuss <discuss@lists.openscad.org> > Sent: Friday, January 23, 2026 9:08 AM > To: nop head via Discuss <discuss@lists.openscad.org> > Cc: Harvey white <madyn@dragonworks.info> > Subject: [OpenSCAD] latest stable version? > > I'm looking for the latest, but most stable, version of OpenSCAD. Going through the snapshots, it looks as if 2026.01.19 is it. > > Do I have it right? The website says that the latest stable version 2021.01, which I have. > > Thanks. > > Harvey > > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org
CC
Cory Cross
Sat, Jan 24, 2026 4:32 AM

On January 23, 2026 7:34:04 PM PST, Lee DeRaud via Discuss discuss@lists.openscad.org wrote:

Not really relevant to this specific discussion but certainly appropriate to the title...
Am I the only one who thinks it's WAY past time to retire 2021.01 as the default download?

On January 23, 2026 7:34:04 PM PST, Lee DeRaud via Discuss <discuss@lists.openscad.org> wrote: >Not really relevant to this specific discussion but certainly appropriate to the title... >Am I the only one who thinks it's WAY past time to retire 2021.01 as the default download? https://github.com/orgs/openscad/projects/2/views/1
GH
gene heskett
Sat, Jan 24, 2026 4:51 AM

On 1/23/26 22:34, Lee DeRaud via Discuss wrote:

Not really relevant to this specific discussion but certainly appropriate to the title...
Am I the only one who thinks it's WAY past time to retire 2021.01 as the default download?

No!   Should have been retired by late 2022. Much has been improved since.
[...]


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Cheers, Gene Heskett, CET.

"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author, 1940)
If we desire respect for the law, we must first make the law respectable.

  • Louis D. Brandeis
    Don't poison our oceans, interdict drugs at the src.
On 1/23/26 22:34, Lee DeRaud via Discuss wrote: > Not really relevant to this specific discussion but certainly appropriate to the title... > Am I the only one who thinks it's WAY past time to retire 2021.01 as the default download? No!   Should have been retired by late 2022. Much has been improved since. [...] > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org Cheers, Gene Heskett, CET. -- "There are four boxes to be used in defense of liberty: soap, ballot, jury, and ammo. Please use in that order." -Ed Howdershelt (Author, 1940) If we desire respect for the law, we must first make the law respectable. - Louis D. Brandeis Don't poison our oceans, interdict drugs at the src.
CM
Curt McDowell
Mon, Jan 26, 2026 7:32 AM

Chris,

Identifiers that start with digits should definitely be phased out. Only
ancient languages like COBOL, LISP, FORTH and TCL allowed it. LISP has
the same problem as OpenSCAD. It just gets to be too ambiguous:

(setq 6e 1.5)

1.5

(setq 6e2 1.5)

*** - SETQ: 600.0 is not a symbol

Maybe as an interim compromise, only one warning could be printed,
when the first identifier is encountered beginning with a digit, so it
wouldn't be prohibitively annoying.

As a path forward for NopSCADlib, how about using an update script? I'm
attaching a Python script that updates all the subject NopSCADlib
identifiers in all .scad files within a directory, recursively. It could
also be included with the library to allow library users to update their
code with one command. Then you'd be right back onto the latest releases.

-Curt

On 1/23/26 16:13, nop head via Discuss wrote:

Yes but none of my identifiers look like that. They are mostly part
numbers of real objects.

DEPRECATED: Variable names starting with digits ("6p4mm_disc") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad,
line 42

DEPRECATED: Variable names starting with digits ("10mm_disc") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad,
line 43

DEPRECATED: Variable names starting with digits ("6p4mm_disc") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad,
line 45

DEPRECATED: Variable names starting with digits ("10mm_disc") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad,
line 45

DEPRECATED: Variable names starting with digits ("02531A") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad,
line 24

DEPRECATED: Variable names starting with digits ("02352A") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad,
line 25

DEPRECATED: Variable names starting with digits ("7_segments") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad,
line 28

DEPRECATED: Variable names starting with digits ("02531A") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad,
line 28

DEPRECATED: Variable names starting with digits ("02352A") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad,
line 28

DEPRECATED: Variable names starting with digits ("9DOF_stick") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pcbs.scad,
line 1369

DEPRECATED: Variable names starting with digits ("9DOF_stick") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pcbs.scad,
line 1405

DEPRECATED: Variable names starting with digits ("5_160430_7") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/fastons.scad,
line 24

DEPRECATED: Variable names starting with digits ("5_160430_7") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/fastons.scad,
line 26

DEPRECATED: Variable names starting with digits ("28BYJ_48") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad,
line 30

DEPRECATED: Variable names starting with digits ("35BYGHJ75") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad,
line 31

DEPRECATED: Variable names starting with digits ("28BYJ_48") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad,
line 33

DEPRECATED: Variable names starting with digits ("35BYGHJ75") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad,
line 33

DEPRECATED: Variable names starting with digits ("2p54header") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pin_headers.scad,
line 27

DEPRECATED: Variable names starting with digits ("2p54joiner") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pin_headers.scad,
line 28

DEPRECATED: Variable names starting with digits ("2p54header") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pin_headers.scad,
line 34

DEPRECATED: Variable names starting with digits ("80ST_faceplate")
will be removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad,
line 20

DEPRECATED: Variable names starting with digits ("80ST_faceplate")
will be removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad,
line 26

DEPRECATED: Variable names starting with digits ("80ST_faceplate")
will be removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad,
line 27

DEPRECATED: Variable names starting with digits ("80ST_faceplate")
will be removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad,
line 28

DEPRECATED: Variable names starting with digits ("80ST_faceplate")
will be removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad,
line 29

On Fri, 23 Jan 2026 at 23:54, Jordan Brown
openscad@jordan.maileater.net wrote:

 On 1/23/2026 3:40 PM, nop head wrote:
 I haven't got any identifiers that look like hex constants. All
 identifiers that start with numbers now warn.
 Yes, and warnings are not failures. Exponential-notation-like
 words have never been usable as identifiers.  Hex-constant-like
 words are no longer usable. As I said, we now *warn* that all such
 names are on thin ice.  For instance, it is not implausible that
 0oXXXXX and 0bXXXXX might be used for octal and binary constants.

 I also consider it strange and confusing that 1e12 is a number,
 but 1e12x is an identifier, or that 0xDEUCE is a valid identifier
 but 0xACE is not.  Or, for that matter, that 1xACE is a valid
 identifier but 0xACE is not.
Chris, Identifiers that start with digits should definitely be phased out. Only ancient languages like COBOL, LISP, FORTH and TCL allowed it. LISP has the same problem as OpenSCAD. It just gets to be too ambiguous: > (setq 6e 1.5) 1.5 > (setq 6e2 1.5) *** - SETQ: 600.0 is not a symbol Maybe as an interim compromise, only *one* warning could be printed, when the first identifier is encountered beginning with a digit, so it wouldn't be prohibitively annoying. As a path forward for NopSCADlib, how about using an update script? I'm attaching a Python script that updates all the subject NopSCADlib identifiers in all .scad files within a directory, recursively. It could also be included with the library to allow library users to update their code with one command. Then you'd be right back onto the latest releases. -Curt On 1/23/26 16:13, nop head via Discuss wrote: > Yes but none of my identifiers look like that. They are mostly part > numbers of real objects. > > DEPRECATED: Variable names starting with digits ("6p4mm_disc") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad, > line 42 > > DEPRECATED: Variable names starting with digits ("10mm_disc") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad, > line 43 > > DEPRECATED: Variable names starting with digits ("6p4mm_disc") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad, > line 45 > > DEPRECATED: Variable names starting with digits ("10mm_disc") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad, > line 45 > > DEPRECATED: Variable names starting with digits ("02531A") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad, > line 24 > > DEPRECATED: Variable names starting with digits ("02352A") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad, > line 25 > > DEPRECATED: Variable names starting with digits ("7_segments") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad, > line 28 > > DEPRECATED: Variable names starting with digits ("02531A") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad, > line 28 > > DEPRECATED: Variable names starting with digits ("02352A") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad, > line 28 > > DEPRECATED: Variable names starting with digits ("9DOF_stick") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pcbs.scad, > line 1369 > > DEPRECATED: Variable names starting with digits ("9DOF_stick") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pcbs.scad, > line 1405 > > DEPRECATED: Variable names starting with digits ("5_160430_7") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/fastons.scad, > line 24 > > DEPRECATED: Variable names starting with digits ("5_160430_7") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/fastons.scad, > line 26 > > DEPRECATED: Variable names starting with digits ("28BYJ_48") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad, > line 30 > > DEPRECATED: Variable names starting with digits ("35BYGHJ75") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad, > line 31 > > DEPRECATED: Variable names starting with digits ("28BYJ_48") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad, > line 33 > > DEPRECATED: Variable names starting with digits ("35BYGHJ75") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad, > line 33 > > DEPRECATED: Variable names starting with digits ("2p54header") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pin_headers.scad, > line 27 > > DEPRECATED: Variable names starting with digits ("2p54joiner") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pin_headers.scad, > line 28 > > DEPRECATED: Variable names starting with digits ("2p54header") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pin_headers.scad, > line 34 > > DEPRECATED: Variable names starting with digits ("80ST_faceplate") > will be removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad, > line 20 > > DEPRECATED: Variable names starting with digits ("80ST_faceplate") > will be removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad, > line 26 > > DEPRECATED: Variable names starting with digits ("80ST_faceplate") > will be removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad, > line 27 > > DEPRECATED: Variable names starting with digits ("80ST_faceplate") > will be removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad, > line 28 > > DEPRECATED: Variable names starting with digits ("80ST_faceplate") > will be removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad, > line 29 > > > > On Fri, 23 Jan 2026 at 23:54, Jordan Brown > <openscad@jordan.maileater.net> wrote: > > On 1/23/2026 3:40 PM, nop head wrote: >> I haven't got any identifiers that look like hex constants. All >> identifiers that start with numbers now warn. > > Yes, and warnings are not failures. Exponential-notation-like > words have never been usable as identifiers.  Hex-constant-like > words are no longer usable. As I said, we now *warn* that all such > names are on thin ice.  For instance, it is not implausible that > 0oXXXXX and 0bXXXXX might be used for octal and binary constants. > > I also consider it strange and confusing that 1e12 is a number, > but 1e12x is an identifier, or that 0xDEUCE is a valid identifier > but 0xACE is not.  Or, for that matter, that 1xACE is a valid > identifier but 0xACE is not. >
NH
nop head
Mon, Jan 26, 2026 9:43 AM

One warning is too much because I run with stop on warnings. I am
terminally ill, so I have better things to do than rename all my
vitamins to more ugly names and update all my projects.

On Mon, 26 Jan 2026 at 07:33, Curt McDowell via Discuss <
discuss@lists.openscad.org> wrote:

Chris,

Identifiers that start with digits should definitely be phased out. Only
ancient languages like COBOL, LISP, FORTH and TCL allowed it. LISP has the
same problem as OpenSCAD. It just gets to be too ambiguous:

(setq 6e 1.5)

1.5

(setq 6e2 1.5)

*** - SETQ: 600.0 is not a symbol

Maybe as an interim compromise, only one warning could be printed, when
the first identifier is encountered beginning with a digit, so it wouldn't
be prohibitively annoying.

As a path forward for NopSCADlib, how about using an update script? I'm
attaching a Python script that updates all the subject NopSCADlib
identifiers in all .scad files within a directory, recursively. It could
also be included with the library to allow library users to update their
code with one command. Then you'd be right back onto the latest releases.

-Curt
On 1/23/26 16:13, nop head via Discuss wrote:

Yes but none of my identifiers look like that. They are mostly part
numbers of real objects.

DEPRECATED: Variable names starting with digits ("6p4mm_disc") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad,
line 42

DEPRECATED: Variable names starting with digits ("10mm_disc") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad,
line 43

DEPRECATED: Variable names starting with digits ("6p4mm_disc") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad,
line 45

DEPRECATED: Variable names starting with digits ("10mm_disc") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad,
line 45

DEPRECATED: Variable names starting with digits ("02531A") will be removed
in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad,
line 24

DEPRECATED: Variable names starting with digits ("02352A") will be removed
in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad,
line 25

DEPRECATED: Variable names starting with digits ("7_segments") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad,
line 28

DEPRECATED: Variable names starting with digits ("02531A") will be removed
in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad,
line 28

DEPRECATED: Variable names starting with digits ("02352A") will be removed
in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad,
line 28

DEPRECATED: Variable names starting with digits ("9DOF_stick") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pcbs.scad,
line 1369

DEPRECATED: Variable names starting with digits ("9DOF_stick") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pcbs.scad,
line 1405

DEPRECATED: Variable names starting with digits ("5_160430_7") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/fastons.scad,
line 24

DEPRECATED: Variable names starting with digits ("5_160430_7") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/fastons.scad,
line 26

DEPRECATED: Variable names starting with digits ("28BYJ_48") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad,
line 30

DEPRECATED: Variable names starting with digits ("35BYGHJ75") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad,
line 31

DEPRECATED: Variable names starting with digits ("28BYJ_48") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad,
line 33

DEPRECATED: Variable names starting with digits ("35BYGHJ75") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad,
line 33

DEPRECATED: Variable names starting with digits ("2p54header") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pin_headers.scad,
line 27

DEPRECATED: Variable names starting with digits ("2p54joiner") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pin_headers.scad,
line 28

DEPRECATED: Variable names starting with digits ("2p54header") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pin_headers.scad,
line 34

DEPRECATED: Variable names starting with digits ("80ST_faceplate") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad,
line 20

DEPRECATED: Variable names starting with digits ("80ST_faceplate") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad,
line 26

DEPRECATED: Variable names starting with digits ("80ST_faceplate") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad,
line 27

DEPRECATED: Variable names starting with digits ("80ST_faceplate") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad,
line 28

DEPRECATED: Variable names starting with digits ("80ST_faceplate") will be
removed in future releases. in file
../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad,
line 29

On Fri, 23 Jan 2026 at 23:54, Jordan Brown openscad@jordan.maileater.net
wrote:

On 1/23/2026 3:40 PM, nop head wrote:

I haven't got any identifiers that look like hex constants. All
identifiers that start with numbers now warn.

Yes, and warnings are not failures.  Exponential-notation-like words have
never been usable as identifiers.  Hex-constant-like words are no longer
usable.  As I said, we now warn that all such names are on thin ice.  For
instance, it is not implausible that 0oXXXXX and 0bXXXXX might be used for
octal and binary constants.

I also consider it strange and confusing that 1e12 is a number, but 1e12x
is an identifier, or that 0xDEUCE is a valid identifier but 0xACE is not.
Or, for that matter, that 1xACE is a valid identifier but 0xACE is not.


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

One warning is too much because I run with stop on warnings. I am terminally ill, so I have better things to do than rename all my vitamins to more ugly names and update all my projects. On Mon, 26 Jan 2026 at 07:33, Curt McDowell via Discuss < discuss@lists.openscad.org> wrote: > Chris, > > Identifiers that start with digits should definitely be phased out. Only > ancient languages like COBOL, LISP, FORTH and TCL allowed it. LISP has the > same problem as OpenSCAD. It just gets to be too ambiguous: > > > (setq 6e 1.5) > 1.5 > > (setq 6e2 1.5) > *** - SETQ: 600.0 is not a symbol > > Maybe as an interim compromise, only *one* warning could be printed, when > the first identifier is encountered beginning with a digit, so it wouldn't > be prohibitively annoying. > > As a path forward for NopSCADlib, how about using an update script? I'm > attaching a Python script that updates all the subject NopSCADlib > identifiers in all .scad files within a directory, recursively. It could > also be included with the library to allow library users to update their > code with one command. Then you'd be right back onto the latest releases. > > -Curt > On 1/23/26 16:13, nop head via Discuss wrote: > > Yes but none of my identifiers look like that. They are mostly part > numbers of real objects. > > DEPRECATED: Variable names starting with digits ("6p4mm_disc") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad, > line 42 > > DEPRECATED: Variable names starting with digits ("10mm_disc") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad, > line 43 > > DEPRECATED: Variable names starting with digits ("6p4mm_disc") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad, > line 45 > > DEPRECATED: Variable names starting with digits ("10mm_disc") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/radials.scad, > line 45 > > DEPRECATED: Variable names starting with digits ("02531A") will be removed > in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad, > line 24 > > DEPRECATED: Variable names starting with digits ("02352A") will be removed > in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad, > line 25 > > DEPRECATED: Variable names starting with digits ("7_segments") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad, > line 28 > > DEPRECATED: Variable names starting with digits ("02531A") will be removed > in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad, > line 28 > > DEPRECATED: Variable names starting with digits ("02352A") will be removed > in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/7_segments.scad, > line 28 > > DEPRECATED: Variable names starting with digits ("9DOF_stick") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pcbs.scad, > line 1369 > > DEPRECATED: Variable names starting with digits ("9DOF_stick") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pcbs.scad, > line 1405 > > DEPRECATED: Variable names starting with digits ("5_160430_7") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/fastons.scad, > line 24 > > DEPRECATED: Variable names starting with digits ("5_160430_7") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/fastons.scad, > line 26 > > DEPRECATED: Variable names starting with digits ("28BYJ_48") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad, > line 30 > > DEPRECATED: Variable names starting with digits ("35BYGHJ75") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad, > line 31 > > DEPRECATED: Variable names starting with digits ("28BYJ_48") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad, > line 33 > > DEPRECATED: Variable names starting with digits ("35BYGHJ75") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/geared_steppers.scad, > line 33 > > DEPRECATED: Variable names starting with digits ("2p54header") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pin_headers.scad, > line 27 > > DEPRECATED: Variable names starting with digits ("2p54joiner") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pin_headers.scad, > line 28 > > DEPRECATED: Variable names starting with digits ("2p54header") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/pin_headers.scad, > line 34 > > DEPRECATED: Variable names starting with digits ("80ST_faceplate") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad, > line 20 > > DEPRECATED: Variable names starting with digits ("80ST_faceplate") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad, > line 26 > > DEPRECATED: Variable names starting with digits ("80ST_faceplate") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad, > line 27 > > DEPRECATED: Variable names starting with digits ("80ST_faceplate") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad, > line 28 > > DEPRECATED: Variable names starting with digits ("80ST_faceplate") will be > removed in future releases. in file > ../../../Nextcloud/CHRIS/Projects/RepRaptor/OpenSCADLibs/NopSCADlib/vitamins/servo_motors.scad, > line 29 > > > On Fri, 23 Jan 2026 at 23:54, Jordan Brown <openscad@jordan.maileater.net> > wrote: > >> On 1/23/2026 3:40 PM, nop head wrote: >> >> I haven't got any identifiers that look like hex constants. All >> identifiers that start with numbers now warn. >> >> >> Yes, and warnings are not failures. Exponential-notation-like words have >> never been usable as identifiers. Hex-constant-like words are no longer >> usable. As I said, we now *warn* that all such names are on thin ice. For >> instance, it is not implausible that 0oXXXXX and 0bXXXXX might be used for >> octal and binary constants. >> >> I also consider it strange and confusing that 1e12 is a number, but 1e12x >> is an identifier, or that 0xDEUCE is a valid identifier but 0xACE is not. >> Or, for that matter, that 1xACE is a valid identifier but 0xACE is not. >> > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org