You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(19) |
Jul
(96) |
Aug
(144) |
Sep
(222) |
Oct
(496) |
Nov
(171) |
Dec
(6) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(4) |
Feb
(4) |
Mar
(9) |
Apr
(4) |
May
(12) |
Jun
(6) |
Jul
|
Aug
|
Sep
(1) |
Oct
(2) |
Nov
|
Dec
|
2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
(52) |
Aug
(47) |
Sep
(47) |
Oct
(95) |
Nov
(56) |
Dec
(34) |
2003 |
Jan
(99) |
Feb
(116) |
Mar
(125) |
Apr
(99) |
May
(123) |
Jun
(69) |
Jul
(110) |
Aug
(130) |
Sep
(289) |
Oct
(211) |
Nov
(98) |
Dec
(140) |
2004 |
Jan
(85) |
Feb
(87) |
Mar
(342) |
Apr
(125) |
May
(101) |
Jun
(60) |
Jul
(151) |
Aug
(118) |
Sep
(162) |
Oct
(117) |
Nov
(125) |
Dec
(95) |
2005 |
Jan
(141) |
Feb
(54) |
Mar
(79) |
Apr
(83) |
May
(74) |
Jun
(125) |
Jul
(63) |
Aug
(89) |
Sep
(130) |
Oct
(89) |
Nov
(34) |
Dec
(39) |
2006 |
Jan
(98) |
Feb
(62) |
Mar
(56) |
Apr
(94) |
May
(169) |
Jun
(41) |
Jul
(34) |
Aug
(35) |
Sep
(132) |
Oct
(722) |
Nov
(381) |
Dec
(36) |
2007 |
Jan
(34) |
Feb
(174) |
Mar
(15) |
Apr
(35) |
May
(74) |
Jun
(15) |
Jul
(8) |
Aug
(18) |
Sep
(39) |
Oct
(125) |
Nov
(89) |
Dec
(129) |
2008 |
Jan
(176) |
Feb
(91) |
Mar
(69) |
Apr
(178) |
May
(310) |
Jun
(434) |
Jul
(171) |
Aug
(73) |
Sep
(187) |
Oct
(132) |
Nov
(259) |
Dec
(292) |
2009 |
Jan
(27) |
Feb
(54) |
Mar
(35) |
Apr
(54) |
May
(93) |
Jun
(10) |
Jul
(36) |
Aug
(36) |
Sep
(93) |
Oct
(52) |
Nov
(45) |
Dec
(74) |
2010 |
Jan
(20) |
Feb
(120) |
Mar
(165) |
Apr
(101) |
May
(56) |
Jun
(12) |
Jul
(73) |
Aug
(306) |
Sep
(154) |
Oct
(82) |
Nov
(63) |
Dec
(42) |
2011 |
Jan
(176) |
Feb
(86) |
Mar
(199) |
Apr
(86) |
May
(237) |
Jun
(50) |
Jul
(26) |
Aug
(56) |
Sep
(42) |
Oct
(62) |
Nov
(62) |
Dec
(52) |
2012 |
Jan
(35) |
Feb
(33) |
Mar
(128) |
Apr
(152) |
May
(133) |
Jun
(21) |
Jul
(74) |
Aug
(423) |
Sep
(165) |
Oct
(129) |
Nov
(387) |
Dec
(276) |
2013 |
Jan
(105) |
Feb
(30) |
Mar
(130) |
Apr
(42) |
May
(60) |
Jun
(79) |
Jul
(101) |
Aug
(46) |
Sep
(81) |
Oct
(14) |
Nov
(43) |
Dec
(4) |
2014 |
Jan
(25) |
Feb
(32) |
Mar
(30) |
Apr
(80) |
May
(42) |
Jun
(23) |
Jul
(68) |
Aug
(127) |
Sep
(112) |
Oct
(72) |
Nov
(29) |
Dec
(69) |
2015 |
Jan
(35) |
Feb
(49) |
Mar
(95) |
Apr
(10) |
May
(70) |
Jun
(64) |
Jul
(93) |
Aug
(85) |
Sep
(43) |
Oct
(38) |
Nov
(124) |
Dec
(29) |
2016 |
Jan
(253) |
Feb
(181) |
Mar
(132) |
Apr
(419) |
May
(68) |
Jun
(90) |
Jul
(52) |
Aug
(142) |
Sep
(131) |
Oct
(80) |
Nov
(84) |
Dec
(192) |
2017 |
Jan
(329) |
Feb
(842) |
Mar
(248) |
Apr
(85) |
May
(247) |
Jun
(186) |
Jul
(37) |
Aug
(73) |
Sep
(98) |
Oct
(108) |
Nov
(143) |
Dec
(143) |
2018 |
Jan
(155) |
Feb
(139) |
Mar
(72) |
Apr
(112) |
May
(82) |
Jun
(119) |
Jul
(24) |
Aug
(33) |
Sep
(179) |
Oct
(295) |
Nov
(111) |
Dec
(34) |
2019 |
Jan
(20) |
Feb
(29) |
Mar
(49) |
Apr
(89) |
May
(185) |
Jun
(131) |
Jul
(9) |
Aug
(59) |
Sep
(30) |
Oct
(44) |
Nov
(118) |
Dec
(53) |
2020 |
Jan
(70) |
Feb
(108) |
Mar
(50) |
Apr
(9) |
May
(70) |
Jun
(24) |
Jul
(103) |
Aug
(82) |
Sep
(132) |
Oct
(119) |
Nov
(174) |
Dec
(169) |
2021 |
Jan
(75) |
Feb
(51) |
Mar
(76) |
Apr
(73) |
May
(53) |
Jun
(120) |
Jul
(114) |
Aug
(73) |
Sep
(70) |
Oct
(18) |
Nov
(26) |
Dec
|
2022 |
Jan
(26) |
Feb
(63) |
Mar
(64) |
Apr
(64) |
May
(48) |
Jun
(74) |
Jul
(129) |
Aug
(106) |
Sep
(238) |
Oct
(169) |
Nov
(149) |
Dec
(111) |
2023 |
Jan
(110) |
Feb
(47) |
Mar
(82) |
Apr
(106) |
May
(168) |
Jun
(101) |
Jul
(155) |
Aug
(35) |
Sep
(51) |
Oct
(55) |
Nov
(134) |
Dec
(202) |
2024 |
Jan
(103) |
Feb
(129) |
Mar
(154) |
Apr
(89) |
May
(60) |
Jun
(162) |
Jul
(201) |
Aug
(61) |
Sep
(167) |
Oct
(111) |
Nov
(133) |
Dec
(141) |
2025 |
Jan
(122) |
Feb
(88) |
Mar
(106) |
Apr
(113) |
May
(203) |
Jun
(185) |
Jul
(124) |
Aug
(80) |
Sep
|
Oct
|
Nov
|
Dec
|
From: Harald O. <har...@el...> - 2025-02-24 14:04:51
|
Dear Tcl/Tk folks, the biweekly Tcl/Tk telco happened today with great participation. Here are the notes: 1) Release calender. Published by Don Porter as informal TIP: https://core.tcl-lang.org/tips/doc/trunk/tip/713.md Thanks for this. This is highly appreciated. Discussed in the meeting with no objections. Last 8.6 and 9.0 version are announced. This is a call for comments. There is no vote of the TIP planned. It would be great to spread this out to other projects depending on it. 2) Ticket : crash on epol when page is reloaded https://core.tcl-lang.org/tcl/tktview/010d8f3885642212cf2c There was no opinion on this. Steve will make a branch for review of the current solution/workaround. 3) fossil settings Schelte has looked into it. Thanks a lot for this !!! With TCL and Tk, the E-Mail notification is now working. You may activate notification by clicking on your name in the upper right corner, if logged in. Then, click on "Email Alerts". It would be great to have an administrator contact: There is a well hidden page informing about the administrator. There is only one possible. Most fossils are differently configured. I would love, if Schelte would take care for configuration. My own ones (tclws,bwidget) even do not allow user registration. I tried to change this and succeeded on tclws. I encourage Schelte to create a login now. On bwidget, I have no administrator rights and login creation is not activated. I am not sure if this is due to the login group... 4) TCLTLS as bundled package Thanks to Brian O'Hagan and team for the great release. Fine to adopt this as a bundled package. Ask Ashok for Windows build. TIP to do so. Make directly criterias to unbundle (example: no maintainer). Proposal is to target 9.1. HTTP Version 3 (udp based) is not supported and requires another solution. A ready-made library would be great. 5) Orphaned packages Torsten, Ashok and Steve will take care of a list. It may be hosted at any place. Andreas has this list: https://akupries.tclers.tk/hoard/tcl/index_bychange.html 6) European Conference Update Will take place in Bologna/Italy 10/11th of July 2025. The hotel is close to the train station in the town center. Webside may be ready next Monday. 7) Docker to run TCL Public docker image planned. - Tcl/Tk/SQLite/TCLLib/CloudTk Might get a Batteries Included version Easy to use, was demonstrated on the Mac platform. 8) Next meeting in two weeks 10th of March, 2025 12:00 UTC Thank you all ! Harald |
From: Jan N. <jan...@gm...> - 2025-02-21 16:53:26
|
Op ma 10 feb 2025 om 18:37 schreef Jan Nijtmans: > This is a CFV for TIP 711. Let's have the vote in by > noon 2025/02/21 UTC [clock format 1740139200] > Here are the results: Vote-Summary: Accepted 8/0/0 Votes-For: AK, AN, HO, JN, MC, RA, RM, SL Votes-Against: none Votes-Present: none This means, TIP #711 was accepted. There is a "core-9-0-branch" now from which Tcl 9.0.x will be derived. The "trunk" is now open for Tcl 9.1 development. The TIP #711 implementation can now be found on "trunk". Regards, Jan Nijtmans |
From: Marc C. <cul...@gm...> - 2025-02-21 03:24:18
|
TIP #711: YES - Marc On Mon, Feb 10, 2025 at 11:38 AM Jan Nijtmans <jan...@gm...> wrote: > Hi all, > > This is a CFV for TIP 711. Let's have the vote in by > noon 2025/02/21 UTC [clock format 1740139200] > > My vote: > > TP #711: YES. > > Thanks, > Jan Nijtmans > > _______________________________________________ > Tcl-Core mailing list > Tcl...@li... > https://lists.sourceforge.net/lists/listinfo/tcl-core > |
From: Steve L. <st...@di...> - 2025-02-21 00:53:55
|
On 11 Feb 2025 at 1:39 AM +0800, Jan Nijtmans <jan...@gm...>, wrote: > This is a CFV for TIP 711. Let's have the vote in by > noon 2025/02/21 UTC [clock format 1740139200] TIP #711: YES It is sufficient but perhaps not ideal. -- Steve |
From: Reinhard M. <rei...@m4...> - 2025-02-20 18:44:38
|
Hi, Am 10.02.2025 18:37, schrieb Jan Nijtmans: > This is a CFV for TIP 711. Let's have the vote in by > noon 2025/02/21 UTC [clock format 1740139200] My (first) vote: TP #711: YES. cu Reinhard |
From: Rolf A. <tcl...@po...> - 2025-02-20 18:32:57
|
Jan Nijtmans writes: > Hi all, > > This is a CFV for TIP 711. Let's have the vote in by > noon 2025/02/21 UTC [clock format 1740139200] My vote: TP #711: YES. After the change from tri-state to 0/1 return this is an acceptable minor improvement, although I would have preferred a more ambitious approach along the line of Ashoks proposal. rolf |
From: Harald O. <har...@el...> - 2025-02-20 07:45:53
|
Dear TCL/Tk team, please allow me to invite you to the BiWeekly Tcl/Tk Telco on: Date: 2025-02-24 Time: 12:00 UTC URL: https://meet.jit.si/TclMonthlyMeetup Possible discussion points: - Tcl/Tk release calender - fossil settings - TCLTLS as bundled package - Orphaned packages - European Conference Update Happy to meet you there, Harald |
From: Brian G. <bri...@ea...> - 2025-02-20 06:02:26
|
I don’t see any reason not to move the tag. -Brian (from mobile device) > On Feb 19, 2025, at 19:40, Steve Landers <st...@di...> wrote: > > > I just noticed the release tag hasn’t been moved to Tcl 9.0.1 and Tk 9.01 in the respective repositories. The consequence is the Download page still points to 8.6. > > Does anyone object to moving the release tag (which currently points to 8.6.13) up to 9.0.1 ? > > -- Steve > _______________________________________________ > Tcl-Core mailing list > Tcl...@li... > https://lists.sourceforge.net/lists/listinfo/tcl-core |
From: Steve L. <st...@di...> - 2025-02-20 03:39:46
|
I just noticed the release tag hasn’t been moved to Tcl 9.0.1 and Tk 9.01 in the respective repositories. The consequence is the Download page still points to 8.6. Does anyone object to moving the release tag (which currently points to 8.6.13) up to 9.0.1 ? -- Steve |
From: Jan N. <jan...@gm...> - 2025-02-19 13:30:01
|
This is a CFV warning for TIP #704: extend Tk_CanvasTextInfo <https://core.tcl-lang.org/tips/doc/trunk/tip/704.md> This is the first TIP targeting Tk 9.1, a useful simple one to make a start. This extension is needed to fully support scaled text in external widget types. It should have been part of Tk 9.0, but it wasn't in time before TIP closure and it was too small to force it in then. If you think this is a bad idea, speak up now. If not, I'll start the vote in a few days. Regards, Jan Nijtmans |
From: <apn...@ya...> - 2025-02-13 14:15:23
|
As noted in ticket https://core.tcl-lang.org/tcl/tktview/f5d0e75a49, the 9.0 process purge|status command implementation is at odds with the manpage and TIP 462. Harald, Jan and I are in agreement that the implementation is the desired behavior and that the manpage be modified accordingly along with an addendum update to the TIP. Please see the ticket for details and let me know if you disagree. Otherwise, I will merge in the manpage and TIP change. /Ashok |
From: Harald O. <har...@el...> - 2025-02-13 07:48:35
|
Am 10.02.2025 um 18:37 schrieb Jan Nijtmans: > Hi all, > > This is a CFV for TIP 711. Let's have the vote in by > noon 2025/02/21 UTC [clock format 1740139200] > > My vote: > > TP #711: YES. > > Thanks, > Jan Nijtmans My vote: yes Thanks for the continuous work and engagement, Harald |
From: Andreas K. <and...@gm...> - 2025-02-12 21:08:43
|
> Hi all, > > This is a CFV for TIP 711. Let's have the vote in by > noon 2025/02/21 UTC [clock format 1740139200] TIP#711: YES -- Happy Tcling, Andreas Kupries <and...@gm...> <https://core.tcl-lang.org/akupries/> <https://akupries.tclers.tk/> Developer @ SUSE Software Solutions Germany GmbH ------------------------------------------------------------------------------- |
From: Jan N. <jan...@gm...> - 2025-02-12 17:27:13
|
The upstream SQLite project released 3.49.0 of SQLite recently >From that, I derived the TEA-based Tcl package we layer on top of it. http://cyqlite.sourceforge.net/cgi-bin/sqlite/timeline That's now available as Tcl package sqlite3.49.0.tar.gz from https://sourceforge.net/projects/tcl/files/Tcl/8.6.16/ or https://sourceforge.net/projects/tcl/files/Tcl/9.0.1/ Unpack that source distribution in the "pkgs" subdir of your Tcl 8.6.x or 9.0.x source code distribution and run `make install` again for your platform. That will build and install the updated sqlite package. Unless another SQLite release happens first, this package will be bundled with Tcl 8.6.17 / Tcl 9.0.2 Regards, Jan Nijtmans |
From: Poor Y. <org...@po...> - 2025-02-12 16:42:25
|
On 2025-02-12 10:42, Jan Nijtmans wrote: > Op wo 12 feb 2025 om 09:26 schreef Donal Fellows < > don...@ma...>: >> >> >> While I see no particular reason a dict couldn't have a LengthProc >> (the > length is just twice its size) > > > Unfortunately, it's not that simple. How about a dict with duplicates, > like > {a 0 a 1}? It's dict length > is 1, but as list length it should return 4, not 2. > > Dict had a lengthProc in the past, it created a lot of problems. That's > why > it was removed. > See: <Tcl Source Code: View Ticket > <https://core.tcl-lang.org/tcl/tktview/28cc67a606a7ab771af4>> FWIW, in the unchained branch these problems were resolved and the length method reinstated for the dict type. Also worth noting is that a dictionary with duplicate keys always has a string representation. -- yorick |
From: Donal F. <don...@ma...> - 2025-02-12 11:47:49
|
The only way a dict can have such a thing would be for it to have a string rep. If there is no such thing, it cannot have duplicate keys. It's equivalent to how lists can have all sorts of crazy formatting, but canonical lists don't (and pure lists provably can't). In any case, an IsEmptyProc for use when there is no string rep will not have this issue; if there is a string rep already, the emptiness check can just use its known length directly. Donal. -------- Original message -------- From: Jan Nijtmans <jan...@gm...> Date: 12/02/2025 08:42 (GMT+00:00) To: Donal Fellows <don...@ma...> Cc: apn...@ya..., Tcl Core List <tcl...@li...> Subject: Re: [TCLCORE] CFV warning: TIP #711: New function: Tcl_IsEmpty() Op wo 12 feb 2025 om 09:26 schreef Donal Fellows <don...@ma...<mailto:don...@ma...>>: > > > While I see no particular reason a dict couldn't have a LengthProc (the length is just twice its size) Unfortunately, it's not that simple. How about a dict with duplicates, like {a 0 a 1}? It's dict length is 1, but as list length it should return 4, not 2. Dict had a lengthProc in the past, it created a lot of problems. That's why it was removed. See: <Tcl Source Code: View Ticket [core.tcl-lang.org]<https://urldefense.com/v3/__https://core.tcl-lang.org/tcl/tktview/28cc67a606a7ab771af4__;!!PDiH4ENfjr2_Jw!CHl2UDHb277bnwTFmzCrJLgj4H69hkwd-TQYUDzKXLs_u7So_PQHMnHNEAA5-y7TzBvPiaXknP6ki5JlqXPjYfFSOicb_eKQ5qI$>> |
From: Jan N. <jan...@gm...> - 2025-02-12 08:42:50
|
Op wo 12 feb 2025 om 09:26 schreef Donal Fellows < don...@ma...>: > > > While I see no particular reason a dict couldn't have a LengthProc (the length is just twice its size) Unfortunately, it's not that simple. How about a dict with duplicates, like {a 0 a 1}? It's dict length is 1, but as list length it should return 4, not 2. Dict had a lengthProc in the past, it created a lot of problems. That's why it was removed. See: <Tcl Source Code: View Ticket <https://core.tcl-lang.org/tcl/tktview/28cc67a606a7ab771af4>> > In particular, we have types (integers and doubles) for which it can trivially be defined, and yet where computing the string representation might be unwanted. That's why integers and doubles have a lengthProc, which always return 1. Hope this helps, Jan Nijtmans |
From: Donal F. <don...@ma...> - 2025-02-12 08:26:02
|
While I see no particular reason a dict couldn't have a LengthProc (the length is just twice its size), I still think an IsEmptyProc makes sense. In particular, we have types (integers and doubles) for which it can trivially be defined, and yet where computing the string representation might be unwanted. Donal. -------- Original message -------- From: apnmbx-public--- via Tcl-Core <tcl...@li...> Date: 12/02/2025 05:27 (GMT+00:00) To: 'Tcl Core List' <tcl...@li...> Subject: Re: [TCLCORE] CFV warning: TIP #711: New function: Tcl_IsEmpty() I don’t think LengthProc always serves the purpose, partly for reasons Nathan also alluded to. Your comment about dict being the only such type having no LengthProc holds only for the Tcl core. It may not hold for extensions where there may be no LengthProc or expensive to calculate (e.g. the database example in TIP 636 abstract list where check for an empty table / query result is a lot faster than calculating the length). But as you said, that can be futures. /Ashok From: Jan Nijtmans <jan...@gm...> Sent: Tuesday, February 11, 2025 3:59 PM To: apn...@ya... Cc: Tcl Core List <tcl...@li...> Subject: Re: [TCLCORE] CFV warning: TIP #711: New function: Tcl_IsEmpty() Op do 6 feb 2025 om 19:04 schreef Ashok: A design related comment - make Tcl_IsEmpty a part of the Tcl_ObjType (like abstract lists). That immediately makes available the same quick check and avoidance of shimmering for new Tcl_Obj types defined within extensions. It is the same exact reason for having the LengthProc method in Tcl_ObjType. The reason why I didn't propose it because the LengthProc already serves this purpose: If the object has no string representation and LengthProc exists and returns 0, we are already sure the obj is empty. The only type which doesn't have a LengthProc is the "dict", implementing a IsEmpty() would be overkill for only one type (IMHO). I could imagine a new TIP adding more procs to the Tcl_ObjType (like GetDouble or GetWideInt or maybe combined as GetNumber). A new function like IsEmpty() is overkill, IMHO, but - hey - that's only one opinion ;-) Hope this helps, Jan Nijtmans |
From: Jan N. <jan...@gm...> - 2025-02-12 08:03:24
|
Op wo 12 feb 2025 om 08:16 schreef Francois Voge: > In the implementation, I believe the comment in the "Side effects" section > of Tcl_IsEmpty to be inaccurate. > Is this better? <Tcl Source Code: Check-in [98e788fbcd] <https://core.tcl-lang.org/tcl/info/98e788fbcdace290>> Hope this helps, Jan Nijtmans |
From: Francois V. <fvo...@fr...> - 2025-02-12 07:16:33
|
In the implementation, I believe the comment in the "Side effects" section of Tcl_IsEmpty to be inaccurate. It says: * Side effects: * String representation is generated if the obj has no lengthProc But looking at the implementation, this does not seem to be correct for dicts (which have no length proc, and the string rep is nevertheless not generated, right?). Also the "Results" section describes tri-states result, which I believe to not be reflected in the implementation. When given a NULL objPtr the function panics whereas the code documentation (but not the man page) says it returns -1. Regards, Francois Le 12/02/2025 à 06:26, apnmbx-public--- via Tcl-Core a écrit : > > I don’t think LengthProc always serves the purpose, partly for reasons > Nathan also alluded to. Your comment about dict being the only such > type having no LengthProc holds only for the Tcl core. It may not hold > for extensions where there may be no LengthProc or expensive to > calculate (e.g. the database example in TIP 636 abstract list where > check for an empty table / query result is a lot faster than > calculating the length). > > But as you said, that can be futures. > > /Ashok > > *From:*Jan Nijtmans <jan...@gm...> > *Sent:* Tuesday, February 11, 2025 3:59 PM > *To:* apn...@ya... > *Cc:* Tcl Core List <tcl...@li...> > *Subject:* Re: [TCLCORE] CFV warning: TIP #711: New function: > Tcl_IsEmpty() > > Op do 6 feb 2025 om 19:04 schreef Ashok: > > A design related comment - make Tcl_IsEmpty a part of the > Tcl_ObjType (like abstract lists). That immediately makes > available the same quick check and avoidance of shimmering for new > Tcl_Obj types defined within extensions. It is the same exact > reason for having the LengthProc method in Tcl_ObjType. > > The reason why I didn't propose it because the LengthProc already > serves this purpose: If the object > > has no string representation and LengthProc exists and returns 0, we > are already sure the obj > > is empty. The only type which doesn't have a LengthProc is the "dict", > implementing > > a IsEmpty() would be overkill for only one type (IMHO). > > I could imagine a new TIP adding more procs to the Tcl_ObjType (like > GetDouble or GetWideInt or > > maybe combined as GetNumber). A new function like IsEmpty() is > overkill, IMHO, but - hey - > > that's only one opinion ;-) > > Hope this helps, > > Jan Nijtmans > > > > _______________________________________________ > Tcl-Core mailing list > Tcl...@li... > https://lists.sourceforge.net/lists/listinfo/tcl-core |
From: <apn...@ya...> - 2025-02-12 05:26:54
|
I don’t think LengthProc always serves the purpose, partly for reasons Nathan also alluded to. Your comment about dict being the only such type having no LengthProc holds only for the Tcl core. It may not hold for extensions where there may be no LengthProc or expensive to calculate (e.g. the database example in TIP 636 abstract list where check for an empty table / query result is a lot faster than calculating the length). But as you said, that can be futures. /Ashok From: Jan Nijtmans <jan...@gm...> Sent: Tuesday, February 11, 2025 3:59 PM To: apn...@ya... Cc: Tcl Core List <tcl...@li...> Subject: Re: [TCLCORE] CFV warning: TIP #711: New function: Tcl_IsEmpty() Op do 6 feb 2025 om 19:04 schreef Ashok: A design related comment - make Tcl_IsEmpty a part of the Tcl_ObjType (like abstract lists). That immediately makes available the same quick check and avoidance of shimmering for new Tcl_Obj types defined within extensions. It is the same exact reason for having the LengthProc method in Tcl_ObjType. The reason why I didn't propose it because the LengthProc already serves this purpose: If the object has no string representation and LengthProc exists and returns 0, we are already sure the obj is empty. The only type which doesn't have a LengthProc is the "dict", implementing a IsEmpty() would be overkill for only one type (IMHO). I could imagine a new TIP adding more procs to the Tcl_ObjType (like GetDouble or GetWideInt or maybe combined as GetNumber). A new function like IsEmpty() is overkill, IMHO, but - hey - that's only one opinion ;-) Hope this helps, Jan Nijtmans |
From: Poor Y. <org...@po...> - 2025-02-11 11:06:13
|
On 2025-02-11 12:29, Jan Nijtmans wrote: > Op do 6 feb 2025 om 19:04 schreef Ashok: > >> A design related comment - make Tcl_IsEmpty a part of the Tcl_ObjType >> (like abstract lists). That immediately makes available the same quick >> check and avoidance of shimmering for new Tcl_Obj types defined within >> extensions. It is the same exact reason for having the LengthProc >> method in >> Tcl_ObjType. >> > > The reason why I didn't propose it because the LengthProc already > serves > this purpose: If the object > has no string representation and LengthProc exists and returns 0, we > are > already sure the obj > is empty. The only type which doesn't have a LengthProc is the "dict", > implementing > a IsEmpty() would be overkill for only one type (IMHO). > > I could imagine a new TIP adding more procs to the Tcl_ObjType (like > GetDouble or GetWideInt or > maybe combined as GetNumber). A new function like IsEmpty() is > overkill, > IMHO, but - hey - > that's only one opinion ;-) > > Hope this helps, > Jan Nijtmans Using the length of a virtual value to determine whether it is empty is suboptimal. To determine that a virtual string is not empty it is sufficient to compute only the first character of the string, and it could be expensive to compute the entire length of the string. It is clear that a isEmpty method will sooner or later be introduced for virtual values, and if Tcl_IsEmpty is now specified to return true/false, instead of true/false/unknown, there will later appear a friction between Tcl_IsEmpty and the isEmpty method of a virtual value. -- Yorick |
From: Jan N. <jan...@gm...> - 2025-02-11 10:29:45
|
Op do 6 feb 2025 om 19:04 schreef Ashok: > A design related comment - make Tcl_IsEmpty a part of the Tcl_ObjType > (like abstract lists). That immediately makes available the same quick > check and avoidance of shimmering for new Tcl_Obj types defined within > extensions. It is the same exact reason for having the LengthProc method in > Tcl_ObjType. > The reason why I didn't propose it because the LengthProc already serves this purpose: If the object has no string representation and LengthProc exists and returns 0, we are already sure the obj is empty. The only type which doesn't have a LengthProc is the "dict", implementing a IsEmpty() would be overkill for only one type (IMHO). I could imagine a new TIP adding more procs to the Tcl_ObjType (like GetDouble or GetWideInt or maybe combined as GetNumber). A new function like IsEmpty() is overkill, IMHO, but - hey - that's only one opinion ;-) Hope this helps, Jan Nijtmans |
From: Torsten B. <be...@ty...> - 2025-02-11 08:47:47
|
Hi, I like this. Exactly as described in the TIP, it gives all parties planning time and a certain amount of a perspective. This is much better than the spontaneous release calendar we had before. One remark, not related to the content: tables are always very difficult to read in fossil by default. May I propose to alter the skin in such a way that tables are more readable? A minimal version could be this one: .doc table { border-collapse: collapse; text-align: left; } .doc tr { border-bottom: 1px solid #ddd; } .doc tr:nth-child(even) { background-color: #eee; } .doc td,th { padding: 8px 40px 8px 40px; } Note that I put .doc in front so it only applies to fossil's doc pages. It may, however, interfere with the .markdown class, if defined. Cheers, Torsten > Am 10.02.2025 um 20:19 schrieb Donald G Porter via Tcl-Core <tcl...@li...>: > > > I have uploaded to the tip repository my draft TIP 713, proposing a > release plan for 2025 and 2026 leading to the release of Tcl 9.1.0. > > Please have a look and share your thoughts. The document is meant to > be updated to reflect our joint thoughts on the matter, and to reflect > events as they unfold. > > It's good to have a plan, even when the path taken doesn't perfectly > conform to it. > > -- > | Don Porter Applied and Computational Mathematics Division | > | don...@ni... Information Technology Laboratory | > | http://math.nist.gov/~DPorter/ NIST | > |______________________________________________________________________| > > > > _______________________________________________ > Tcl-Core mailing list > Tcl...@li... > https://lists.sourceforge.net/lists/listinfo/tcl-core |
From: <apn...@ya...> - 2025-02-11 03:51:51
|
+1 to Sergey’s comment though it is not something that will change my vote. There should be consistency in terms of how the public API handles NULL pointers in functions that should receive them. In this case, there is little value as the NULL pointer will crash in any case. The added value is a “cleaner” error message. /Ashok From: Dipl. Ing. Sergey G. Brester <se...@us...> Sent: Tuesday, February 11, 2025 1:17 AM To: Jan Nijtmans <jan...@gm...> Cc: apn...@ya...; Tcl Core List <tcl...@li...> Subject: Re: [TCLCORE] CFV warning: TIP #711: New function: Tcl_IsEmpty() Is such panic really needed? Just wondering, because never saw it before for such functions in TCL-API... I mean a branch (conditional jump) to check an obscure case that never happens? Wouldn't an assert be enough? Regards, Serg. 07.02.2025 14:39, Jan Nijtmans wrote: I now changed the implementation such that the function panic's when objPtr = NULL. Any more remarks? Regards, Jan Nijtmans _______________________________________________ Tcl-Core mailing list Tcl...@li... <mailto:Tcl...@li...> https://lists.sourceforge.net/lists/listinfo/tcl-core |