Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
266 posts
|
Hello, I'm new to GNU Smalltalk but this package seems to compile (build) fine on Solaris 11.4 (Intel). I think it compiled fine because 'gmake install' worked and I can enter some of the sample tutorial code snippets, and this works. I've also created a Solaris IPS package for it (a binary package) so that it is easier to install. # pkg list gst NAME (PUBLISHER) VERSION IFO runtime/gst (nightly) 3.2.91-11.4.24.0.0.71.0 i-- The above 'package' (pkg) is the package management system, so that the binary can be installed without configure+make install. As a test, I would like to create a simple "TCP" or "UDP" daytime client in Smalltalk. In Squeak (a different Smalltalk implementation) the following code works: | r s addr | addr := NetNameResolver addressFromString:'192.168.0.1'. s := Socket newTCP connectTo:addr port:13. r := s receiveData. s close. Transcript show:r. When I try to evaluate the same code in gnu smalltalk: $ gst GNU Smalltalk ready st> Smalltalk version 'GNU Smalltalk version 3.2.91' st> | r s addr | st> addr := NetNameResolver addressFromString:'192.168.0.1'. Object: nil error: did not understand #addressFromString: MessageNotUnderstood(Exception)>>signal (ExcHandling.st:254) UndefinedObject(Object)>>doesNotUnderstand: #addressFromString: (SysExcept.st:1408) UndefinedObject>>executeStatements (a String:1) nil Is there a way to load the NetNameResolver class in GNU smalltalk please ? Or is there an example of TCP/IP (TCP or UDP) NetClient programming with gst ? Thanks, David Stes |
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
4 posts
|
[hidden email] writes:
> Is there a way to load the NetNameResolver class in GNU smalltalk please ? > > Or is there an example of TCP/IP (TCP or UDP) NetClient programming with gst ? gst ships with a sockets library; please check the included info page. The documentation is scant; you may have to read the source code. I suppose for simple client/server socket programming it should be fairly easy. Derek |
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
3 posts
|
Why am I getting these emails?
On Fri, May 29, 2020, 5:59 AM Derek Zhou <[hidden email]> wrote: > [hidden email] writes: > > Is there a way to load the NetNameResolver class in GNU smalltalk please > ? > > > > Or is there an example of TCP/IP (TCP or UDP) NetClient programming with > gst ? > > gst ships with a sockets library; please check the included info > page. The documentation is scant; you may have to read the source > code. I suppose for simple client/server socket programming it should be > fairly easy. > > Derek > > ... [show rest of quote]
|
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
35 posts
|
John -
my guess is that you are subscribed to the GNU smalltalk mailing list https://lists.gnu.org/mailman/listinfo/help-smalltalk |
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
30 posts
|
... and if you look at the email's headers you'll see :
> List-Id: Users mailing list for the GNU Smalltalk environment <help-smalltalk.gnu.org> > List-Unsubscribe: <https://lists.gnu.org/mailman/options/help-smalltalk>, <mailto:[hidden email]?subject=unsubscribe> > List-Archive: <https://lists.gnu.org/archive/html/help-smalltalk> > List-Post: <mailto:[hidden email]> > List-Help: <mailto:[hidden email]?subject=help> > List-Subscribe: <https://lists.gnu.org/mailman/listinfo/help-smalltalk>, <mailto:[hidden email]?subject=subscribe> .. the mailing list instructions to (un)subscribe, post, get help, see the archives. Bye, Davide On 29/05/2020 22:12, bill-auger wrote: > John - > > my guess is that you are subscribed to the GNU smalltalk > mailing list > > https://lists.gnu.org/mailman/listinfo/help-smalltalk > -- Ing. Davide Grandi email : [hidden email] linkedin : http://linkedin.com/in/davidegrandi |
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
266 posts
|
In reply to this post by stes
The docs have an incorrect reference: https://www.gnu.org/software/smalltalk/manual/html_node/Network-support.html#Network-support if you click on " Network programming with Sockets " that link is broken. I've tried the following: Eval [ PackageLoader fileInPackage: 'Sockets'. PackageLoader fileInPackage: 'NetClients'. s _ Socket remote:(SocketAddress createLoopbackHost) port:13. (s upTo: Character cr) printNl. s close. ] This fails: Object: nil error: did not understand #createLoopbackHost MessageNotUnderstood(Exception)>>signal (ExcHandling.st:254) UndefinedObject(Object)>>doesNotUnderstand: #createLoopbackHost (SysExcept.st:1408) UndefinedObject>>executeStatements (daytime.st:7) Apparently it does not know about the SocketAdress class (subclass of IPAddress). There must be some other way apparently to load that class. Shouldn't loading the packages be sufficient to get the SocketAdress class ? David |
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
4 posts
|
[hidden email] writes: > The docs have an incorrect reference: > > https://www.gnu.org/software/smalltalk/manual/html_node/Network-support.html#Network-support > > if you click on " Network programming with Sockets " that link is broken. Use the locally install docs. And most likely you need to read the source code as the doc is not that good. > > I've tried the following: > > Eval [ > > PackageLoader fileInPackage: 'Sockets'. > PackageLoader fileInPackage: 'NetClients'. > > s _ Socket remote:(SocketAddress createLoopbackHost) port:13. > (s upTo: Character cr) printNl. > s close. > > ] > > This fails: > > Object: nil error: did not understand #createLoopbackHost > MessageNotUnderstood(Exception)>>signal (ExcHandling.st:254) > UndefinedObject(Object)>>doesNotUnderstand: #createLoopbackHost (SysExcept.st:1408) > UndefinedObject>>executeStatements (daytime.st:7) > > > Apparently it does not know about the SocketAdress class (subclass of > IPAddress). There must be some other way apparently to load that class. > > Shouldn't loading the packages be sufficient to get the SocketAdress class ? ... [show rest of quote] Yes. However, gnu smalltalk has namespace. It should be Sockets.SocketAddress, or you can <import: Sockets> Derek |
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
266 posts
|
It works ! Thanks for your help: Assuming that the old 'legacy' daytime stream server runs on tcp port 13: $ gst daytime.st Loading package ObjectDumper Loading package Sockets 'Sat Jun 6 10:30:16 2020' $ cat daytime.st Eval [ PackageLoader fileInPackage: 'Sockets'. s _ Sockets.Socket remote:(Sockets.SocketAddress createLoopbackHost) port:13. (s upTo: Character cr) printNl. s close. ] So the problem was that you have to use the 'namespace'. Thanks, David Stes ----- Op 4 jun 2020 om 20:15 schreef Derek Zhou [hidden email]: > [hidden email] writes: > >> The docs have an incorrect reference: >> >> https://www.gnu.org/software/smalltalk/manual/html_node/Network-support.html#Network-support >> >> if you click on " Network programming with Sockets " that link is broken. > Use the locally install docs. And most likely you need to read the > source code as the doc is not that good. >> >> I've tried the following: >> >> Eval [ >> >> PackageLoader fileInPackage: 'Sockets'. >> PackageLoader fileInPackage: 'NetClients'. >> >> s _ Socket remote:(SocketAddress createLoopbackHost) port:13. >> (s upTo: Character cr) printNl. >> s close. >> >> ] >> >> This fails: >> >> Object: nil error: did not understand #createLoopbackHost >> MessageNotUnderstood(Exception)>>signal (ExcHandling.st:254) >> UndefinedObject(Object)>>doesNotUnderstand: #createLoopbackHost >> (SysExcept.st:1408) >> UndefinedObject>>executeStatements (daytime.st:7) >> >> >> Apparently it does not know about the SocketAdress class (subclass of >> IPAddress). There must be some other way apparently to load that class. >> >> Shouldn't loading the packages be sufficient to get the SocketAdress class ? > > Yes. However, gnu smalltalk has namespace. It should be Sockets.SocketAddress, > or you > can <import: Sockets> > > Derek ... [show rest of quote] |
Free forum by Nabble | Edit this page |