
Sandcat Browser – Chromium and Lua - walterbell
http://www.syhunt.com/sandcat/index.php?n=About.Sandcat
======
paulirish
Looks neat, but it hasn't seen much development since 2015:
[https://github.com/felipedaragon/sandcat/graphs/contributors](https://github.com/felipedaragon/sandcat/graphs/contributors)

The comparison page uses Chrome 26 as its reference:
[http://www.syhunt.com/sandcat/index.php?n=Main.Comparison](http://www.syhunt.com/sandcat/index.php?n=Main.Comparison)

~~~
jszymborski
I'm always afraid of using these Chromium/Firefox forks, because I have no
idea how often security updates are being pushed out compared to the source
origin...

------
westoque
Wow. I just realized browsers should have just used Lua as the scripting
language of the web instead of JavaScript.

Although similar in tech (both are prototypical languages), Lua seems more
mature at the time. Not to mention it is also heavily used by game developers.
Lua is also a better language without the pitfalls of JavaScript (ex. equality
operators, etc).

It could have been used better as the language of the web.

A big what if.

~~~
otikik
I used to think like you.

I like Lua a lot, but javascript has a burden which Lua doesn't: backwards
compatibility. Pages built 20 years ago must work on today's browsers. That is
a huge commitment and is part of the reason javascript still has some of its
bad parts. It can add new stuff, but deprecations are more difficult.

Lua has had the luxury of reinventing and refining itself on every version.
Stuff has been deprecated. And that's how it has become so good and
streamlined. I would not want it chained to browsers and subjected to their
backwards compatibility jinx.

------
joobus
The comparison page says it uses TlScript for the UI, and links to this page,
which 404s: [https://sciter.com/js-dart-tis.htm](https://sciter.com/js-dart-
tis.htm)

Having never heard of TlScript, I was curious why it would be worth using,
because the blurb sounds a lot like ES6/7:

" ( __) TIScript is the scripting engine used by Sandcat for some of its user
interface operations. TIScript uses JavaScript as a base with some Python
features added: classes and namespaces, properties, decorators, etc. See a
JavaScript, Dart /Chrome and TIScript/Sciter comparison here "

The GitHub readme also says: Some work is still needed before a Mac or Linux
version materializes.

~~~
walterbell
This page has source licensing prices for Win/Mac/Linux, maybe they changed
the license? [https://sciter.com/prices/](https://sciter.com/prices/)

From [https://www.codeproject.com/Articles/33662/TIScript-
language...](https://www.codeproject.com/Articles/33662/TIScript-language-a-
gentle-extension-of-JavaScript), _" The design of TIScript was based on the
analysis of practical JavaScript use cases. In some areas, it simplifies and
harmonizes JavaScript features. For example, the prototype mechanism was
simplified. In other cases, it extends JavaScript, while preserving the
original "look-and-feel" of JS._"

The history at [https://sciter.com/10-years-road-to-
sciter](https://sciter.com/10-years-road-to-sciter) describes the path from
C++, Java, D, Ruby, Python, Lua and JavaScript to TIScript and W3C
contributions by the author. Web site says that Sciter (licensed or OSS?) and
TIScript run on 270 millions PCs and Macs, as a UI component in AV products.
On the topic of garbage collection:

 _"... each part of UI framework shall use its own memory management and
ownership principles that are optimal for the role they are playing. HTML DOM
tree has very regular structure with clear one parent – many children
ownership graph. Life cycle of DOM elements (read “UI elements”) is also quite
deterministic. There is absolutely no need for GC if to speak about HTML/CSS.
But code-behind-UI – code that does UI automation in “on-click-here-push-item-
there-and-collapse-panel-over-there” fashion has to be manageable. GC there is
the must – ownership graph is unknown upfront and frequently contains loops."_

------
walterbell
Privacy comparison:
[http://www.syhunt.com/sandcat/index.php?n=Main.Privacy](http://www.syhunt.com/sandcat/index.php?n=Main.Privacy)

~~~
paulirish
For what it's worth, the Chrome Privacy Whitepaper provides a lot of detail on
these items (and more):
[https://www.google.com/chrome/browser/privacy/whitepaper.htm...](https://www.google.com/chrome/browser/privacy/whitepaper.html)

------
seoseokho
the x64 version seems to be based on Chromium 49.0.2623.110. Not sure I can
tell the benefits of Lua though.

~~~
walterbell
Seems to be used for pen-testing,
[http://www.syhunt.com/sandcat/index.php?n=AddOns.Extensions#...](http://www.syhunt.com/sandcat/index.php?n=AddOns.Extensions#pentestertools)

------
jlebrech
this might be useful to run integration tests

~~~
kanwisher
chrome headless is better now

