Hi John,
When you reported a similar sounding issue last April, I wasn't very much help,
for which I am sorry. What I told you then was that we get error 214 mostly
when C language I/O routines report errors. One of the last things you asked,
or alluded to in that previous thread was that new
Hi Steve,
This reproduces nicely for me, thanks for the report. Apparently some of our
syntactic sugar has melted into caramel. I'll look into it.
Cheers,
Clint
From: Steve Wampler
Sent: Thursday, December 12, 2013 2:21 PM
To: Unicon
Subject: Re: [Unicon-
Bruce,
No one has been monkeying with IVIB, whose code is relatively stable. I will
look into it. What you describe sounds like a problem with Unicon's
interactions with the window manager, and if that is CENTOS specific then it
may take a little longer to sort out.
We are in the midst of a ma
Thanks Jay, for helping out.
It is true that if your program is run from a terminal that interprets ASCII
codes properly, and if it has a working PC speaker, then control-G might give
you a beep like it would in the old days.
The only alternative that I will bandy about is that if Unicon is bui
There is an implementation of operator overloading that was done by Sudarshan
Gaikaiwari I think, under the #ifdef symbol OVLD. It is not enabled by default.
It looks a little different than you propose here. It likely would require some
updates to account for changes made since it was implement
Charles,
Are you saying that your patches are still not applied in the SVN distribution,
or that there are remaining bugfixes needed, or that OVLD is presently usable
thanks to your work on them? I know we iterated, and you have committed some
needed fixes, but this message makes it sound kind
Sergey,
I am sure Jafar will have more intelligent things to say, but I will try to
make a couple small observations. Windows XP is liable to give you troubles in
building Unicon. It will probably run Unicon binaries just fine, but building
Unicon from source is harder. Did the binaries not w
ervative
about throwing away the legacy Icon configure stuff, as it met a really hard
portability requirement that I don't see autoconf meeting.
Cheers,
Clint
From: Jafar Al-Gharaibeh
Sent: Tuesday, February 11, 2014 7:26 AM
To: Hugh Sasse
Cc: Sergey
Hi Bruce,
I am going to answer your implementation questions about our C macros by
private e-mail and/or the
language design/implementation mailing list (unicon-ldif).
As far as Unicon not having macros with parameters, this was a decision at the
time the Icon preprocessor was introduced. Basi
Sergey,
I have used loadfunc() to call C from Windows Unicon before, but it was a long
time ago. The C calling interface main header file icall.h has some #ifdef
WIN32 code that I put in at the time, but seems to be missing some updates
needed to account for recent changes in the virtual machi
Icon (and Unicon, due to obsessive backward compatibility) do not create a
separate copy of the table default value each time the table is subscripted
with a non-existent key. Instead they produce a reference to the (singleton)
default value. When you are using this default value in order to "in
Hi Bruce,
I will gently reiterate that I would prefer that you ask such questions via
private e-mail (or unicon-ldif), since they are not about the language and not
of general interest.
We haven't moved the Icon grammar anytime in the last 2+ decades. The Icon
grammar has lived in h/grammar.h
I like Image(x, 3) as a string representation of structure x. I concur with
the idea of improving it to be class/object aware; it works now for Unicon
objects, but should be made more concise for them. The other thing I'd suggest
is "lazy labeling": only emit labels for structures that need t
Bruce,
Thanks for the bug report. I can confirm that it reproduces for me.
If you want, I can post the bug report for you to the Unicon.org bug tracker,
on SourceForge; or more generally, I would encourage you to post bug reports
there yourself.
Cheers,
Clint
Howdy Sergey,
?I would love to hear from someone (or a group) that does this.
I am very interested in getting Unicon ported to Android and iOS platforms.
My own efforts for Android will focus on a Java-based solution, because the
Android platform is Java-based and most of the devices are not
?Dick,
?This reproduces easily for me and appears to be a messaging facilities bug.
Thanks for reporting it. I have done you the courtesy of logging it on the
Unicon bug tracker.
Cheers,
Clint
From: Richard H. McCullough
Sent: Thursday, May 29, 2014 8:14 P
Dear Sergey,
Thank you for this very interesting post. We are very interested in comparing
different Icon and Unicon implementations on different OS/CPU/compiler builds
and identifying the fastest way to run different kinds of Icon and Unicon
programs. Perhaps your benchmark tests certain langu
I think you could always use any type as table keys but it used to be really
slow and it got better when serial numbers were introduced for structure types.
They're still of dubious utility since equivalent structures don't map to the
same key.
Clint
Original message
From:
Dick,
String literals (constants) are things that appear in source code. The
continuation of a string literal on a succeeding line of source code is a
property of the compiler/translator, not the runtime system functions.
So no, read() and other built-ins do not do this, but if you needed input
In principle, patchstr.exe will probably work the same under Windows as it does
under UNIX-based systems, and I endorse the idea of including it in the Windows
binary distribution in future builds. Another possibility would be to bundle
patchstr-style capabilities into other tools as command-li
Sergey,
We use setrlimit() to increase the size of the stack on UNIX systems.The
message is non-fatal, but it is an indication that setrlimit() couldn't give us
what we asked for. It might or might not predict a stack overflow, since our
calculation of how much stack will be needed is very app
Hi Sergey,
Thanks for your report, this bug reproduces nicely for me. Does your file end
in a newline, or is it just 3 bytes long, total? I am getting that the
messaging facilities have a problem with files not ending with a newline, but
perhaps it is more subtle than that.
Regards,
Clint
Hi Bruce,
Please feel invited to report other instances of undeclared variables in the
IPL or Unicon library code. It is probably not deserving of a unicon-group
post, but private e-mail to myself and/or Jafar, or much better, a bug report
on Unicon's bug tracker on source forge would be the be
Hi Dick,
Let's consider this a bug unless/until we identify that there is a compelling
reason for it. What kind of table we are talking about here? Icon and Unicon's
table data type does not do anything to their keys. You mention inserting and
fetching: is this on GDBM, ODBC, or something else
Duke,
cfunc.u comes from ipl/cfuncs and it should normally get rebuilt/updated when
Unicon is built from sources, but apparently it did not in this case. You might
try compiling cfunc.u in the ipl/cfuncs directory and copying the result over
into ipl/lib -- that might work, but there might be a
Hi,
I am all for implementing a library procedure, or class, to do this as part of
the Unicon distribution, if one is not there already. I am wondering why I
haven't noticed someone chime in with the stat() function, it is the building
block one uses to read file attributes, determine if some
Are temp files persisting instead of being removed when the process terminates?
That's a bad leak, if so. Or is it just that we have such large file systems
now that the common prefix is killing us for the number of tempnames generated
on a single run?
Original message
From:
The most likely culprit would be a control-D on unix or control-Z for DOS.
Binary mode sure sounds like a DOS concept, doesn't it? Give us a small sample
that demonstrates and we will look into it but it may be the C library or the
OS.
Original message
From: Jafar Al-Gharaibe
I am not aware of someone doing any custom ActiveX support for Unicon.
I would be willing to advise and assist with such an effort.
The generic C calling support was at one time ported to Windows, to allow
calling
functions in .dll files, but it has not been maintained and would need some work
in
The closest thing to "bignum" that we talk about are our arbitrary precision
integers, also called large integers.
They are enabled by default in most builds, and when enabled they are a
silent-and-seamless property of the
integer type, rather than a separate type. &features can tell you wheth
?I have not heard of someone using Unicon with bluetooth directly. It would be
possible to construct an extension to access it, possibly via the C calling
interface. Alternatively, if one extracted and obtained the application layer
data in a file using some third party tool, one might analyze
Dear Bruce,
Ralph Griswold was fond of saying, more or less, that the source code of the
implementation was the final reference and operational semantics for the
language. The most detail I got from a quick scan of the Icon book 3rd edition
was
The function center(s1, i, s2) centers s1 in a st
Hi Bruce,
Regarding options.icn your discovery that punctuation marks can be options is
interesting. Some programs definitely might use them.
Compatible extensions to options.icn that make it flexible enough to handle
Unicon's own command line option processing would be welcome as a submission
Bruce,
I commend you for looking at this. I have been wanting to merge in Steve's
libraries for a long time. Your analysis is spot on. We want to not duplicate
the overlapping parts, but we want to preserve backward compatibility, and the
goals conflict.
My advice is: the problem as posed is
Hi Bruce,
$c and $cend are described in Udaykumar Batchu's M.S. report, a link to it can
be found at http://unicon.org/reports.html
I consider the C interface project unfinished. The code worked as described in
the report at the time it was done. It might or might not require extension or
rep
yrights that ORACLE wants
on the JAVA API to be strongly indicative of ORACLE's attitude to
programmers and development with JAVA.
How you might view things will be based on your interactions with JAVA
and ORACLE.
regards
Bruce Rennie
On 28/06/15 18:41, Jeffery, Clint (jeffe...@uidaho.edu)
REG was questioned repeatedly about this because it is very inconvenient for
bal. It is for the sake of consistency with the other scanning functions. They
do not produce positions after the end of the string.
I think its a flaw, but while consistency would not trump utility for me,
backwards c
Hi Bruce,
Where specifically in the runtime sources are you seeing the hard limits that
you are reporting?
I am pretty sure I have used strings that are several GB long on a computer
whose main memory is large enough. Very large strings get real slow if you are
using them to construct new str
for maximum string
size have not caused me any concern about the limits that are in the
unicon/icon sources.
regards
Bruce Rennie
On 15/08/15 08:12, Jeffery, Clint (jeffe...@uidaho.edu) wrote:
> I am pretty sure I have used strings that are several GB long on a computer
> whose main memory i
Dear Bruce,
The next version of Unicon, Version 13, will feature regular expressions as
constructors that produce values of the new type, pattern.
To answer your question, there is no documentation yet; a conference paper was
just submitted that contains the first description and
examples of th
Hi Jafar, thanks for looking at this. I will try to get setup to experiment
with it and provide you with some support on it this week, since I am the
author of most of the 2D facilities.
Cheers,
Clint
Original message
From: Jafar Al-Gharaibeh
Date: 10/11/2015 9:54 AM (GMT-08
Richard,
This is an item on our help wanted list where so far no volunteer or sponsor
has stepped forward and made it happen.
Some Asian users have processed their variable-length string data and used the
existing I/O functions to develop applications without
extending the language. I don't
Bruce,
This function does in fact create a new record constructor function,
effectively introducing a new record type on the fly, similar to what you get
when you declare a record. You are correct that it does not introduce a new
global variable on the fly, so the parameter "label" is of fairly
Hi Bruce,
The Audio facilities are underdocumented, probably because they have proven to
be a sore spot where the implementation has not achieved the degree of
portability and ubiquity that is required to be a fully standard part of the
language. Multiple generations of students have worked on
Thanks Don and Bruce for answering Keith's question.
Keith, I think everyone's statements here are correct: as far as I know,
Unicon's ODBC facilities are presently wired for a single result set per open
ODBC connection, to be obtained by subsequent calls to fetch() after a query,
and our runti
My initial reaction to this bug report was to reproduce/confirm it.
WAttrib("selection="|| ...) did not paste nicely into OpenOffice or into Chrome
on my Linux box. But it Did paste nicely into a Terminal window, and into an
Emacs running in its own (GUI, not console) window. So it is a little
Bruce,
Thanks for the bug report. It reproduces nicely for me. I am very glad that
you have a workaround; hopefully a fix will not be especially difficult.
Cheers,
Clint
From: Bruce & Breeanna Rennie
Sent: Monday, November 30, 2015 11:03 PM
To: Unicon g
Hi Bruce,
I have committed a fix to svn that I believe solves your immediate issue.
Please update unicon/uni/unicon/tree.icn when you get a chance, rebuild unicon,
and let me know if it helps.
Cheers,
Clint
From: Bruce & Breeanna Rennie
Subject: [Unic
Unicon used to have, and explicitly and deliberately removed, a notion of
"private" for fields and methods.
The notion of "class local" is not necessarily the same as the notion of
"private". It might mean a static variable visible to an entire class.
Apparently, there is some syntax for loc
Hi Bruce,
Behavior of ! is undefined if the structure is modified during generation.
Given that, what questions would you want to pose?
Cheers, Clint
Original message
From: Bruce & Breeanna Rennie
Date: 01/17/2016 5:13 PM (GMT-08:00)
To: Unicon group
Subject: [Unicon-group]
tween the two versions.
I have a small program that I am writing in which I wanted to add
elements to a set during the loop and have them appear in the generation
of the elements via !. However, I will now look at an alternative process.
regards
Bruce Rennie
On 18/01/16 14:13, Jeffery, Clint
(jeffe..
This bug reproduces nicely for me, It was a result of an undiagnosed CvtFail
return value from cvpos() being used in member() as if it were an actual value.
Thanks much for the report. I think I have committed a fix.
Clint
From: Steve Wampler
Sent: Thur
Hi Bruce,
The uniclass.{dir,pag} gdbm files that are used to implement inheritance (and
packages) have their pros and cons. Obviously deleting the uniclass.{dir,pag}
and possibly all the .u files in a directory and recompiling from scratch works
whenever something goes wrong with the gdbm files
I'll let Jafar answer regarding Windows binaries.
There are multiple new additions to the language and its implementation in
various stages of progress. Unicon's Version # stands at 12.3 and it will tick
over to 13 when we are satisfied that the pattern facilities are adequately
functional an
Thanks. We definitely want more library support for thread pools and the like,
and we pretty desperately need to collect small concrete examples that actually
do something, and write them up in our documentation if we want to encourage
more use of threads as a mainstream language feature.
Chee
Hi Art,
I'd recommend the monitoring facilities for a code coverage tool and would be
very interested in the result. udb and uprof are written using them and might
provide ideas. The 1993 TR (my dissertation) is subsumed by a Springer book
which is available cheap on amazon and may be of inter
Thanks Jafar for these very interesting comparisons. Robert would know better
than I, but it may well be that when he first told me of his plans to do
stackless co-expressions, I said something stupid like: my monitoring
facilities are built using the current co-expression switch and Unicon wil
Hi Bruce,
$ was used in Unicon's ancestor Idol, but I tried to do away with $ entirely in
Unicon since the period is more standard syntax. You might almost say that $ is
kept only for Idol-backwards compatibility. At one point after we had mostly
switched to the period operator, the dollar wa
Nice picture! Thanks to everyone who has told another programmer about Unicon!
Clint
Original message
From: Sergey Logichev
Date: 07/31/2016 5:19 AM (GMT-07:00)
To: btiffin , unicon-group@lists.sourceforge.net
Subject: Re: [Unicon-group] Unicon around the world
Sorry, I gave
http has been in the messaging facilities since 2001 or earlier. It is
straightforward. The code was by Steve Lumos and we have improved it a bit
since then.
https preliminary support works, but is not yet mature. I have not adequately
documented or publicized it, because I am not satisfied
grep
in order to figure out where to find SSL encryption keys. More setup than I
would like to accept in a finished Unicon feature.
From: Sergey Logichev
Sent: Tuesday, August 2, 2016 11:26:54 PM
To: Jeffery, Clint (jeffe...@uidaho.edu); Jafar Al-Gharaibeh; Unicon
Hi David,
If you want to contribute a more general ssl/TLS layer, we'd love to see it. A
proposed new feature would have to (a) be uniconish, i.e. be an elegant
addition that is consistent with the language, and (b) be implemented well and
portably. Design discussions on something like this wo
t to pass would
normally cause the symbols that are undefined to be included in your iconx, so
it is a puzzler.
Cheers,
Clint
From: Steve Graham
Sent: Wednesday, August 10, 2016 2:10 PM
To: Jeffery, Clint (jeffe...@uidaho.edu); Unicon Group
Subject: Re: [Unicon-g
For what its worth, I too worried that I would no longer hear what's going on
in various discussion groups that are not on the unicon-group list. But then
again, not every discussion is appropriate for the whole list. So, while it
will probably be easy to solve the forwarding problem from a tech
gust 21, 2016 5:33:29 PM
To: Jafar Al-Gharaibeh; Jeffery, Clint (jeffe...@uidaho.edu);
unicon-group@lists.sourceforge.net
Subject: Re: [Unicon-group] Unicon Forums
Good morning Jafar,
I've checked my filters and nothing has come through, not even into my
sourceforge folder. At this point, I d
Steve,
My advice is: have a lot of fun with this.
Simple games are often written directly to window (or screen) without a
traditional GUI framework, because the GUI framework adds size, complexity, and
indirection to your control of the screen. Many games will just implement their
own minima
From: Jafar Al-Gharaibeh
To: Steve Graham
Cc: "Jeffery, Clint (jeffe...@uidaho.edu)" ; Unicon Group
Sent: Thursday, September 15, 2016 3:04 PM
Subject: Re: [Unicon-group] Unable to build from Alpha 13.0
Hello Steve,
Are you building off svn checkout?
ndex
2 errors
---
steve@steve-Satellite-L555D:~/Desktop/HT$ unicon ht.icn
File ht.icn; Line 2 # $include: cannot open "guih.icn"
steve@steve-Satellite-L555D:~/Desktop/HT$
____
From: "Jeffery, Clint (jeffe...@uidaho.edu)"
To: Unicon Group ; Stev
Steve,
There is a / missing off the front of opt/unicon/ipl/gincl. That might be the
problem.
I will refrain from scolding you for setting LPATH and IPATH identically. When
I install (the whole of) unicon in a normal place and add unicon/bin on my
path, I don't have to set them at all any m
Shamim,
To answer your question: No. But thanks for sharing your identity crisis
publicly!
Pretty awesome. I am sure it is all a "coincidence".
Clint
From: Rev. Shamim Mohamed, D.D., LFHCfS
Sent: Tuesday, September 27, 2016 3:05:27 PM
To: Unicon List
Subje
Steve,
Your program issuing a resize request for every resize event seems to be
tickling a pathology of some sort. If you start dragging real slow, it seems to
work (at least on my machine) but then goes bonkers. Its an infinite loop,
since Pending() never fails. But my sense is that after i
Hi Michael,
Always nice to hear from a fellow Washingtonian.
I am aware of various alarming things being done in Unicon before, but have not
seen code of the sort you describe. It should be a great test of trap() and
the posix facilities. In grepping for possible interactions, I noticed that
My thanks to Don, Jay, and anyone else who is trying out stuff related to
patterns. I am on the road ATM but will work on improving the diagnostics
related to Jay's experiments. Regarding Don's original request and Jay's
comments on it: backquotes in patterns is not a full "eval" interpreter t
I have received a request before to get rid of the aeguill or some such, the
special wolfmarks around a word that look like mini- less-than and greater-than
marks; they look much nicer than <> . It is the most flagrant foul in our
current book source as far as I know, requiring a french package.
In graduate school, perhaps 1989 or so, one of our bigger homeworks was to
implement a variable trap mechanism for assignments and for dereferences. I
believe the variable trap notion originated in one of the SNOBOL dialects, or
in SL5. From the 1989 class, there were about a dozen independent
Hi folks,
In evaluating Unicon (or Icon, or SNOBOL, our language family) for its
suitability for various projects, companies or institutions may want to be
aware of what level of technical expertise
is available for hire. I am open to suggestions for how best to communicate
this information,
Dear Friends,
In addition to recently starting a developer's directory over on unicon.org to
which you are cordially invited, I have been mulling over a problem that some
of you might be able to help with.
The find() function uses a wonderful but naive string search algorithm no
bigger than
Hi Jovan,
This looks like a stray printf left in whatever distribution was used to make
the snapshot, probably my fault. You could if you feel adventurous, remove the
offending line (find the file by saying "grep percent *.r* | grep printf" in
unicon/src/runtime). Otherwise, we'll have to mak
Hi Bruce,
I am leery of conducting such discussions on the mail unicon group, they would
be better on unicon-ldif or on private e-mail. So I will send you answer by
private e-mail. If others want to hear it, let me know and subscribe to
unicon-ldif and I will answer it there.
Clint
Hi David,
Good catch, you have bumped into one of my pet peeves.
Generators are often slower than non-generators, but not because of (or causing
of) garbage collections, particularly -- they do their magic on the stack, not
on the heaps.
Bruce is right, several Icon functions and operators
icking at threads in sweaters too. :)
David
____________
From: "Jeffery, Clint (jeffe...@uidaho.edu)"
To: Unicon Group ; David Gamey
Sent: Monday, April 10, 2017 10:14 PM
Subject: Re: [Unicon-group] Unexpected garbage collections
Hi David,
Good catch, yo
Ward
Sent: Tuesday, April 11, 2017 12:26:07 AM
To: Jeffery, Clint (jeffe...@uidaho.edu)
Cc: Unicon Group; David Gamey
Subject: Re: [Unicon-group] Unexpected garbage collections
Just a thought: Is the compiler clever enough to optimise away the trapped
variable? It has enough information in princip
Your Unicon pop challenge of the day, should you choose to accept it, is to cd
into your tests/bench directory, type "make" and "./run-benchmark" and report
your results if a similar machine is not already reported on unicon.org/bench.
Folks using binary distributions might not get to have the
Thanks to everyone who sent me benchmarks.
Things I've noticed:
1. Unicon 13 is generally faster than Unicon 12. Range is 5% to 400%, typical
might be 70-80%.
2. We improved our calculation of CPU clock speed on Linux; need to develop one
on MacOS.
3. Some Concurrent benchmarks run slower
Bruce,
There are two ways to use the interesting new pattern type. The ?? operator
starts a new string scanning environment to evaluate a pattern.
The unary = operator has been extended to accept a pattern argument, and
matches it at the position within the current string scanning environment
Jay,
I am gonna take a wild guess here and say: Windows does not like it very much
when we try and write data files in directories that were created as part of a
Windows application install. Besides what you've perceived as a permissions
issue, I've seen really weird behavior trying to modify
Shawn,
I don't think we'll know for sure until it gets here. Best case scenario is:
they switch some internal infrastructure but it is invisible to us. Expected
case scenario is: we eventually have to add another package (XWayland) in order
to run our graphics on some Linux distros. Apple did
Hi Bruce,
Regarding packages, they are implemented entirely via name mangling, and there
is not a standard way to extract package information from a running program or
an icode file. There is package information in the uniclass.* gdbm databases
stored in each source directory, but those files
Thanks for pointing at the README Jay.
We are currently in the midst of integrating Steve and Kevin Wampler's unicon
contributions into the main Unicon distribution. Their unidoc has always been
more robust than our previous offering so it is slated to become the official
unidoc shortly. Howeve
Steve,
I (just now in response to your request) added a -nofs option to disable the
default -fs if -C is used, as in
unicon -C -nofs hello
to allow you to observe just how big the code blow-up of -fs is. Perhaps I
need a better name than -nofs.
What do you think, -FS ? --fs ?
__
Sergey
Your \ and / issue points out rather simply that unicon -C hasn't fully been
ported to Windows yet, and even if we fix this little issue and get it to run,
you will need a C compiler for the generated code, and someone will have to
build the runtime system rt.a and rt.db on Windows. Mayb
Steve,
I renamed a class named Event in uni/lib awhile back. Its new name is
Notification. Although it was in a package, people had complained that it was a
conflict with a built-in function Event, and someone doing an import of the
package could be surprised when their program no longer ran.
92 matches
Mail list logo