Deutsch   English   Français   Italiano  
<vd7tgg$13osd$1@dont-email.me>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!news.mixmin.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: Ashok <apnmbx-public@yahoo.com>
Newsgroups: comp.lang.tcl
Subject: Re: ANNOUNCE: cookit v2.2.0
Date: Sat, 28 Sep 2024 09:04:39 +0530
Organization: A noiseless patient Spider
Lines: 81
Message-ID: <vd7tgg$13osd$1@dont-email.me>
References: <20240927175648.5e7873a0a6a6be4e25b4eef5@gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sat, 28 Sep 2024 05:34:40 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="83a72c2108449a3ee1a12c420ae2dfc0";
	logging-data="1172365"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX18zMCzlbpVrtCLMQWw8UEYW"
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:d4UT4U0JSsjr/eGMyAuZ7PFOds4=
In-Reply-To: <20240927175648.5e7873a0a6a6be4e25b4eef5@gmail.com>
Content-Language: en-US
Bytes: 4466

Looking quite exciting and plan to check it out over the weekend.

Some initial questions -

- Am I right that because the packages (tdom, twapi) are statically 
linked, the shared libraries do not need to be written to disk before 
loading? That would be a big win.
- It would be nice to have sqlite3, if not TDBC.
- I did not understand the section about the installer. If it is a 
single file exe, why the installer?
- The wiki cookit page references the old repository.

/Ashok

On 9/27/2024 8:26 PM, Konstantin Kushnir wrote:
> Hi Everyone!
> 
> I am pleased to announce version 2.2.0 of cookit - tclkit-like Tcl
> runtime environment with Tcl 8.6.15 and Tcl 9.0.0 with a focus on a
> balance between functionality and executable size
> 
> Homepage and downloads are on github: https://github.com/chpock/cookit
> 
> Here is just a basic description of it. All details can be found on the
> website home page.
> 
> Please fill free to check/build/use it. Any feedback is welcome!
> 
> =====================================================================
> 
> Cookit is a Tcl/Tk runtime environment similar to tclkit with a focus
> on a balance between functionality and executable size. It allows using
> Tcl/Tk in both console mode and graphical mode to run Tcl scripts, as
> well as packaging applications into a single executable without
> external dependencies.
> 
> Cookit is a single executable file that contains:
> 
>    * Tcl/Tk version 8.6.15 (with Threads enabled) or 9.0.0
>    * Statically linked packages: cookfs, tclvfs, Threads, tclmtls, tdom,
>      twapi (for Windows platform)
>    * Other packages: tkcon
> 
> Supported platforms:
> 
>    * Linux x86 / x86_64
>    * Windows x86 / x86_64
>    * macOS x86_64
> 
> This means that Cookit can be easily and simply used to develop both
> console and GUI applications, which can be multi-threaded, send HTTPS
> requests to third-party services, process the received JSON/XML
> response with tdom. For debugging in GUI mode a convenient and uniform
> on all platforms console tkcon is available. After development, the
> application can be packaged into a single executable file without
> dependencies and used in other environments as a standalone application.
> 
> It can also be used as a replacement for tclsh/wish.
> 
> At the same time, the executable file has minimal size.
> 
>    * for Linux platform: executable file without Tk - about 1.1MB,
>      executable file with Tk - about 1.7MB
>    * for Windows platform: executable without Tk - about 1.5MB,
>      executable with Tk - about 2MB.
> 
> This is an amazing size considering the ability to create GUI
> applications with support for SSL/TLS connections, work with JSON/XML
> documents, extensive access to WinAPI using twapi on Windows platform.
> In normal installations, only the size of the OpenSSL library will be 2
> times larger.
> 
> As a use case, consider an internal installer that works in both
> console and GUI mode and contains the same code for all platforms. This
> installer uses the REST GitHub API via HTTPS to get information about
> the latest available release, uses tdom to parse the JSON response,
> downloads a platform-appropriate tar.gz archive from GitHub releases
> using HTTPS, mounts the resulting tar.gz archive using tclvfs and
> extracts the necessary files to the destination directory.
>