public class ThreadControl
extends java.lang.Object
A class that adds the pause and cancel semantics to thread control. This is designed to work with the lifecycle of an Android activity.
Multiple secondary worker threads call waitIfPaused() within their work loop. The main GUI thread calls pause(), resume() or cancel() as needed from onPause(), onResume() and onDestroy() callback methods of the activity.
A few programming notes. The same ThreadControl object must be used by all threads. Once cancelled, a ThreadControl object can not be used again. Doing so will cause undefined behavior.
| Modifier and Type | Field and Description |
|---|---|
private boolean |
cancelled |
private java.util.concurrent.locks.Lock |
lock |
private java.util.concurrent.locks.Condition |
pauseCondition |
private boolean |
paused |
| Constructor and Description |
|---|
ThreadControl() |
| Modifier and Type | Method and Description |
|---|---|
void |
cancel()
Sets the control status to cancelled.
|
boolean |
isCancelled()
Secondary worker threads should call this method to find out if they
should end their operations as quickly as possible.
|
void |
pause()
Sets the control status to paused.
|
void |
resume()
Sets the control status to resumed.
|
void |
waitIfPaused()
Secondary worker threads call this method to wait indefinitely when
control is paused.
|
private final java.util.concurrent.locks.Lock lock
private java.util.concurrent.locks.Condition pauseCondition
private boolean paused
private boolean cancelled
public void pause()
public void resume()
public void cancel()
public void waitIfPaused() throws java.lang.InterruptedException
Secondary worker threads call this method to wait indefinitely when control is paused. The wait ends when another thread (most likely the main GUI thread) calls either resume() or cancel(). A caller should call isCancelled() after this method returns to determine why the wait ended.
If control status is currently not paused, then this method returns immediately.
If the control status is cancelled, this method returns immediately.
java.lang.InterruptedException
public boolean isCancelled()


{% extends "mxv/base.html" %} {% load static %} {% block title %}Request activation email{% endblock %} {% block content %}
We've just sent you an activation email, so please check your inbox and spam folders.


5 #include "lexicalTree.h"
Tree fill_saved(char *name_file)
If the file <name_file>.DIC exists, return a tree decoded by this file, otherwise return a Tree fille...
void replace_extension(char *name_file, char *name_extension)
Turns a character which has an extension to another extension.
int fill(FILE *in, Tree *t)
Fill the tree according to the file.
void encode(FILE *out, Tree t)
Encodes a tree by displaying the letter according to the prefix order of the tree.
Tree decode(FILE *in)
Decodes a file and fill the tree according to it.
void check_error_file(FILE *f)
Check if there is an error while opening the file.


TRAINING SAMPLES
TRAINING SAMPLES
A list of SwA education and training samples from academia and private organizations.
Academic Curricula Samples
https://buildsecurityin.us-cert.gov/swa/wetwgdocs.html
Carnegie Mellon University CS curriculum
http://www.csd.cs.cmu.edu/education/bscs/index.html#curriculum
George Washington University CS curriculum
http://www.cs.ucdavis.edu/courses/exp_course_desc/index.html
Massachusetts Institute of Technology EECS Undergraduate Program
http://www.eecs.mit.edu/ug/index.html.
Master's program in Secure Software Systems at James Madison University
Stevens Institute of Technology, Software Assurance Program
http://sse.stevens.edu/academics/graduate/software-engineering/program-overview/software-assurance/
Stanford University CS curriculum
http://cs.stanford.edu/Courses/.
University of California at Davis CS curriculum
http://www.cs.ucdavis.edu/courses/exp_course_desc/index.html.
Commercial Training Examples
Aspect Security, Inc., Application Security Education and Training
http://www.aspectsecurity.com/training.htm.
EC-Council, Application and Information Security, and Computer Forensic Investigation Training
EC-Council University Master of Security Science (MSS)
http://www.eccuni.us/Academics/MasterofSecurityScience.aspx
Foundstone, Inc., Education
http://www.foundstone.com/us/education-overview.asp
KRvW Associates, LLC., Training Services
http://www.krvw.com/training/training.html
LogiGear, Inc., Web and Software Application Security Testing
http://www.logigear.com/training/course_catalog/course.asp?courseId=20
Microsoft Corp., Clinic 2806: Microsoft® Security Guidance Training for Developers (and other courses)
https://www.microsoftelearning.com/eLearning/courseDetail.aspx?courseId=26043.
Netcraft, Inc., Web Application Security Course
http://audited.netcraft.com/web-application-course
Next Generation Security Software, Ltd., Security Training
http://www.ngssoftware.com/consulting/training/
SecuRisk Solutions at
http://www.securisksolutions.com/index.php/education/training/
Security Innovation, Inc., Application Security Education
http://www.securityinnovation.com/services/education/index.shtml
The SANS Institute, Inc.
Academic and Commercial Training Samples
4/11/12


Dec 3, 2012 10:13 AM
George Khachatryan, Semior VP at Reasoning Mind, will join us for this EdLab Seminar. Blended learning is usually used as a tool for individualizing instruction. However, the curriculum itself -- in choice of topics, sequencing, and mathematical approach -- is usually similar to curricula traditionally used in US classrooms. Reasoning Mind is a non-profit that has been using blended learning as a vehicle for introducing the Russian mathematics curriculum to US students. In the course of our work, we've found that this requires a systemic approach: designing the curriculum materials, delivery platform, and teacher training (for content & pedagogy knowledge) in context of each other. In this talk, we'll explain what makes the Russian curriculum a natural choice for this, and will then discuss our experiences, lessons learned, and future directions. Open to all members of the university community. If you are coming from outside the Edlab, please RSVP by February 18th by sending a message to Edlab at http://ednode.com/profiles/edlabtc/about (You must have/create an Ednode account). EdLab Seminars take place on the 5th floor of Russell Hall at Teachers College Columbia University (525 W. 120th Street, NY, NY). For detailed directions within the College visit TC Route Finder: http://maps.tc-library.org


Like what you see? Let's meet up for a cup of coffee or tea.
Mellony Teixeira Gibson | Front End Web Developer
<EMAIL_ADDRESS>Or, connect with me below by filling out the form and I'll get back to you within 24 hours.
I look forward to working with you!


| Documentation Contents |
javac [ options ] [ sourcefiles ] [ classes ] [ @argfiles ]Arguments may be in any order.
options
- Command-line options.
sourcefiles
- One or more source files to be compiled (such as MyClass.java).
classes
- One or more classes to be processed for annotations (such as MyPackage.MyClass).
@argfiles
- One or more files that lists options and source files. The
-J
options are not allowed in these files.
The javac tool reads class and interface definitions, written in the Java programming language, and compiles them into bytecode class files. It can also process annotations in Java source files and classes.
There are two ways to pass source code file names to javac:
- For a small number of source files, simply list the file names on the command line.
- For a large number of source files, list the file names in a file, separated by blanks or line breaks. Then use the list file name on the javac command line, preceded by an @ character.
Source code file names must have
.java
suffixes, class file names must have.class
suffixes, and both source and class files must have root names that identify the class. For example, a class calledMyClass
would be written in a source file calledMyClass.java
and compiled into a bytecode class file calledMyClass.class
.Inner class definitions produce additional class files. These class files have names combining the inner and outer class names, such as
MyClass$MyInnerClass.class
.You should arrange source files in a directory tree that reflects their package tree. For example, if you keep all your source files in C:\workspace, the source code for
com.mysoft.mypack.MyClass
should be in C:\workspace\com\mysoft\mypack\MyClass.java.By default, the compiler puts each class file in the same directory as its source file. You can specify a separate destination directory with -d (see Options, below).
The compiler has a set of standard options that are supported on the current development environment and will be supported in future releases. An additional set of non-standard options are specific to the current virtual machine and compiler implementations and are subject to change in the future. Non-standard options begin with -X.
- -Akey[=value]
- Options to pass to annotation processors. These are not interpreted by javac directly, but are made available for use by individual processors. key should be one or more identifiers separated by ".".
- -cp path or -classpath path
- Specify where to find user class files, and (optionally) annotation processors and source files. This classpath overrides the user class path in the CLASSPATH environment variable. If neither CLASSPATH, -cp nor -classpath is specified, the user class path consists of the current directory. See Setting the Class Path for more details.
If the -sourcepath option is not specified, the user class path is also searched for source files.
If the -processorpath option is not specified, the classpath is also searched for annotation processors.
As a special convenience, a class path element containing a basename of
*
is considered equivalent to specifying a list of all the files in the directory with the extension.jar
or.JAR
.
For example, if directoryfoo
containsa.jar
andb.JAR
, then the class path elementfoo/*
is expanded toA.jar;b.JAR
, except that the order of jar files is unspecified. All jar files in the specified directory, even hidden ones, are included in the list. A classpath entry consisting simply of*
expands to a list of all the jar files in the current directory. TheCLASSPATH
environment variable, where defined, will be similarly expanded. Note: Depending of the configuration of your command line environment, you may have to quote the wild card character, for example,javac -cp "*.jar" MyClass.java
.- -Djava.ext.dirs=directories
- Override the location of installed extensions.
- -Djava.endorsed.dirs=directories
- Override the location of endorsed standards path.
- -d directory
- Set the destination directory for class files. The directory must already exist; javac will not create it. If a class is part of a package, javac puts the class file in a subdirectory reflecting the package name, creating directories as needed. For example, if you specify -d C:\myclasses and the class is called
com.mypackage.MyClass
, then the class file is calledC:\myclasses\com\mypackage\MyClass.class
.If -d is not specified, javac puts each class files in the same directory as the source file from which it was generated.
Note: The directory specified by -d is not automatically added to your user class path.
- -deprecation
- Show a description of each use or override of a deprecated member or class. Without -deprecation, javac shows a summary of the source files that use or override deprecated members or classes. -deprecation is shorthand for -Xlint:deprecation.
- -encoding encoding
- Set the source file encoding name, such as
EUC-JP and UTF-8
. If -encoding is not specified, the platform default converter is used.- -g
- Generate all debugging information, including local variables. By default, only line number and source file information is generated.
- -g:none
- Do not generate any debugging information.
- -g:{keyword list}
- Generate only some kinds of debugging information, specified by a comma separated list of keywords. Valid keywords are:
- source
- Source file debugging information
- lines
- Line number debugging information
- vars
- Local variable debugging information
- -help
- Print a synopsis of standard options.
- -implicit:{class,none}
- Controls the generation of class files for implicitly loaded source files. To automatically generate class files, use -implicit:class. To suppress class file generation, use -implicit:none. If this option is not specified, the default is to automatically generate class files. In this case, the compiler will issue a warning if any such class files are generated when also doing annotation processing. The warning will not be issued if this option is set explicitly. See Searching For Types.
- -nowarn
- Disable warning messages. This has the same meaning as -Xlint:none.
- -proc: {none,only}
- Controls whether annotation processing and/or compilation is done. -proc:none means that compilation takes place without annotation processing. -proc:only means that only annotation processing is done, without any subsequent compilation.
- -processor class1[,class2,class3...]
- Names of the annotation processors to run. This bypasses the default discovery process.
- -processorpath path
- Specify where to find annotation processors; if this option is not used, the classpath will be searched for processors.
- -s dir
- Specify the directory where to place generated source files. The directory must already exist; javac will not create it. If a class is part of a package, the compiler puts the source file in a subdirectory reflecting the package name, creating directories as needed. For example, if you specify -s C:\mysrc and the class is called
com.mypackage.MyClass
, then the source file will be placed inC:\mysrc\com\mypackage\MyClass.java
.- -source release
- Specifies the version of source code accepted. The following values for release are allowed:
- 1.3
- The compiler does not support assertions, generics, or other language features introduced after JDK 1.3.
- 1.4
- The compiler accepts code containing assertions, which were introduced in JDK 1.4.
- 1.5
- The compiler accepts code containing generics and other language features introduced in JDK 5.
- 5
- Synonym for 1.5.
- 1.6
- This is the default value. No language changes were introduced in Java SE 6. However, encoding errors in source files are now reported as errors, instead of warnings, as previously.
- 6
- Synonym for 1.6.
- -sourcepath sourcepath
- Specify the source code path to search for class or interface definitions. As with the user class path, source path entries are separated by semicolons (;) and can be directories, JAR archives, or ZIP archives. If packages are used, the local path name within the directory or archive must reflect the package name.
Note: Classes found through the classpath may be subject to automatic recompilation if their sources are also found. See Searching For Types.
- -verbose
- Verbose output. This includes information about each class loaded and each source file compiled.
- -version
- Print version information.
- -X
- Display information about non-standard options and exit.
By default, classes are compiled against the bootstrap and extension classes of the platform that javac shipped with. But javac also supports cross-compiling, where classes are compiled against a bootstrap and extension classes of a different Java platform implementation. It is important to use -bootclasspath and -extdirs when cross-compiling; see Cross-Compilation Example below.
- -target version
- Generate class files that target a specified version of the VM. Class files will run on the specified target and on later versions, but not on earlier versions of the VM. Valid targets are 1.1 1.2 1.3 1.4 1.5 (also 5) and 1.6 (also 6).
The default for -target depends on the value of -source:
- If -source is not specified, the value of -target is 1.6
- If -source is 1.2, the value of -target is 1.4
- If -source is 1.3, the value of -target is 1.4
- For all other values of -source, the value of -target is the value of -source.
- -bootclasspath bootclasspath
- Cross-compile against the specified set of boot classes. As with the user class path, boot class path entries are separated by semicolons (;) and can be directories, JAR archives, or ZIP archives.
- -extdirs directories
- Cross-compile against the specified extension directories. Directories is a semicolon-separated list of directories. Each JAR archive in the specified directories is searched for class files.
- -Xbootclasspath/p:path
- Prepend to the bootstrap class path.
- -Xbootclasspath/a:path
- Append to the bootstrap class path.
- -Xbootclasspath/:path
- Override location of bootstrap class files.
- -Xlint
- Enable all recommended warnings. In this release, all available warnings are recommended.
- -Xlint:none
- Disable all warnings not mandated by the Java Language Specification.
- -Xlint:-name
- Disable warning name, where name is one of the warning names supported for -Xlint:name, below.
- -Xlint:unchecked
- Give more detail for unchecked conversion warnings that are mandated by the Java Language Specification.
- -Xlint:path
- Warn about nonexistent path (classpath, sourcepath, etc) directories.
- -Xlint:serial
- Warn about missing
serialVersionUID
definitions on serializable classes.- -Xlint:finally
- Warn about
finally
clauses that cannot complete normally.- -Xlint:fallthrough
- Check switch blocks for fall-through cases and provide a warning message for any that are found. Fall-through cases are cases in a switch block, other than the last case in the block, whose code does not include a break statement, allowing code execution to "fall through" from that case to the next case. For example, the code following the case 1 label in this switch block does not end with a break statement:
If the -Xlint:fallthrough flag were used when compiling this code, the compiler would emit a warning about "possible fall-through into case," along with the line number of the case in question.switch (x) { case 1: System.out.println("1"); // No break; statement here. case 2: System.out.println("2"); }- -Xmaxerrs number
- Set the maximum number of errors to print.
- -Xmaxwarns number
- Set the maximum number of warnings to print.
- -Xstdout filename
- Send compiler messages to the named file. By default, compiler messages go to
System.err
.- -Xprefer:{newer,source}
- Specify which file to read when both a source file and class file are found for a type. (See Searching For Types). If -Xprefer:newer is used, it reads the newer of the source or class file for a type (default). If the -Xprefer:source option is used, it reads source file. Use -Xprefer:source when you want to be sure that any annotation processors can access annotations declared with a retention policy of
SOURCE
.- -Xprint
- Print out textual representation of specified types for debugging purposes; perform neither annotation processing nor compilation. The format of the output may change.
- -XprintProcessorInfo
- Print information about which annotations a processor is asked to process.
- -XprintRounds
- Print information about initial and subsequent annotation processing rounds.
- -Joption
- Pass option to the java launcher called by javac. For example, -J-Xms48m sets the startup memory to 48 megabytes. Although it does not begin with -X, it is not a `standard option' of javac. It is a common convention for -J to pass options to the underlying VM executing applications written in Java.
Note: CLASSPATH, -classpath, -bootclasspath, and -extdirs do not specify the classes used to run javac. Fiddling with the implementation of the compiler in this way is usually pointless and always risky. If you do need to do this, use the -J option to pass through options to the underlying java launcher.
To shorten or simplify the javac command line, you can specify one or more files that themselves contain arguments to the
javac
command (except-J
options). This enables you to create javac commands of any length on any operating system.An argument file can include javac options and source filenames in any combination. The arguments within a file can be space-separated or newline-separated. If a filename contains embedded spaces, put the whole filename in double quotes, and double each backslash (
"My Files\\Stuff.java"
).Filenames within an argument file are relative to the current directory, not the location of the argument file. Wildcards (*) are not allowed in these lists (such as for specifying
*.java
). Use of the '@' character to recursively interpret files is not supported. The-J
options are not supported because they are passed to the launcher, which does not support argument files.When executing javac, pass in the path and name of each argument file with the '@' leading character. When javac encounters an argument beginning with the character `@', it expands the contents of that file into the argument list.
Example - Single Arg File
You could use a single argument file named "
argfile
" to hold all javac arguments:C:> javac @argfileThis argument file could contain the contents of both files shown in the next example.
Example - Two Arg Files
You can create two argument files -- one for the javac options and the other for the source filenames: (Notice the following lists have no line-continuation characters.)
Create a file named "
options
" containing:-d classes -g -sourcepath C:\java\pubs\ws\1.3\src\share\classesCreate a file named "
classes
" containing:MyClass1.java MyClass2.java MyClass3.javaYou would then run javac with:
C:> javac @options @classesExample - Arg Files with Paths
The argument files can have paths, but any filenames inside the files are relative to the current working directory (not
path1
orpath2
):C:> javac @path1\options @path2\classes
javac provides direct support for annotation processing, superseding the need for the separate annotation processing tool, apt.
The API for annotation processors is defined in the
javax.annotation.processing
andjavax.lang.model
packages and subpackages.Overview of annotation processing
Unless annotation processing is disabled with the -proc:none option, the compiler searches for any annotation processors that are available. The search path can be specified with the -processorpath option; if it is not given, the user class path is used. Processors are located by means of service provider-configuration files named
META-INF/services/javax.annotation.processing.Processor
on the search path. Such files should contain the names of any annotation processors to be used, listed one per line. Alternatively, processors can be specified explicitly, using the -processor option.After scanning the source files and classes on the command line to determine what annotations are present, the compiler queries the processors to determine what annotations they process. When a match is found, the processor will be invoked. A processor may "claim" the annotations it processes, in which case no further attempt is made to find any processors for those annotations. Once all annotations have been claimed, the compiler does not look for additional processors.
If any processors generate any new source files, another round of annotation processing will occur: any newly generated source files will be scanned, and the annotations processed as before. Any processors invoked on previous rounds will also be invoked on all subsequent rounds. This continues until no new source files are generated.
After a round occurs where no new source files are generated, the annotation processors will be invoked one last time, to give them a chance to complete any work they may need to do. Finally, unless the -proc:only option is used, the compiler will compile the original and all the generated source files.
Implicitly loaded source files
To compile a set of source files, the compiler may need to implicitly load additional source files. (See Searching For Types). Such files are currently not subject to annotation processing. By default, the compiler will give a warning if annotation processing has occurred and any implicitly loaded source files are compiled. See the -implicit option for ways to suppress the warning.
When compiling a source file, the compiler often needs information about a type whose definition did not appear in the source files given on the command line. The compiler needs type information for every class or interface used, extended, or implemented in the source file. This includes classes and interfaces not explicitly mentioned in the source file but which provide information through inheritance.
For example, when you subclass java.applet.Applet, you are also using Applet's ancestor classes: java.awt.Panel, java.awt.Container, java.awt.Component, and java.lang.Object.
When the compiler needs type information, it looks for a source file or class file which defines the type. The compiler searches for class files first in the bootstrap and extension classes, then in the user class path (which by default is the current directory). The user class path is defined by setting the CLASSPATH environment variable or by using the -classpath command line option. (For details, see Setting the Class Path).
If you set the -sourcepath option, the compiler searches the indicated path for source files; otherwise the compiler searches the user class path for both class files and source files.
You can specify different bootstrap or extension classes with the -bootclasspath and -extdirs options; see Cross-Compilation Options below.
A successful type search may produce a class file, a source file, or both. If both are found, you can use the -Xprefer option to instruct the compiler which to use. If newer is given, the compiler will use the newer of the two files. If source is given, it will use the source file. The default is newer.
If a type search finds a source file for a required type, either by itself, or as a result of the setting for -Xprefer, the compiler will read the source file to get the information it needs. In addition, it will by default compile the source file as well. You can use the -implicit option to specify the behavior. If none is given, no class files will be generated for the source file. If class is given, class files will be generated for the source file.
The compiler may not discover the need for some type information until after annotation processing is complete. If the type information is found in a source file and no -implicit option is given, the compiler will give a warning that the file is being compiled without being subject to annotation processing. To disable the warning, either specify the file on the command line (so that it will be subject to annotation processing) or use the -implicit option to specify whether or not class files should be generated for such source files.
javac supports the new Java Compiler API defined by the classes and interfaces in the
javax.tools
package.Example
To perform a compilation using arguments as you would give on the command line, you can use the following:
JavaCompiler javac = ToolProvider.getSystemJavaCompiler(); int rc = javac.run(null, null, null, args);This will write any diagnostics to the standard output stream, and return the exit code that javac would give when invoked from the command line.
You can use other methods on the
javax.tools.JavaCompiler
interface to handle diagnostics, control where files are read from and written to, and so on.
Note: This API is retained for backwards compatibility only; all new code should use the Java Compiler API, described above.
The
com.sun.tools.javac.Main
class provides two static methods to invoke the compiler from a program:public static int compile(String[] args); public static int compile(String[] args, PrintWriter out);The
args
parameter represents any of the command line arguments that would normally be passed to the javac program and are outlined in the above Synopsis section.The
out
parameter indicates where the compiler's diagnostic output is directed.The return value is equivalent to the exit value from javac.
Note that all other classes and methods found in a package whose name starts with
com.sun.tools.javac
(informally known as sub-packages ofcom.sun.tools.javac
) are strictly internal and subject to change at any time.
One source file,
Hello.java
, defines a class called greetings.Hello. Thegreetings
directory is the package directory both for the source file and the class file and is off the current directory. This allows us to use the default user class path. It also makes it unnecessary to specify a separate destination directory with -d.C:> dir greetings/ C:> dir greetings Hello.java C:> cat greetings\Hello.java package greetings; public class Hello { public static void main(String[] args) { for (int i=0; i < args.length; i++) { System.out.println("Hello " + args[i]); } } } C:> javac greetings\Hello.java C:> dir greetings Hello.class Hello.java C:> java greetings.Hello World Universe Everyone Hello World Hello Universe Hello Everyone
This example compiles all the source files in the package
greetings
.C:> dir greetings\ C:> dir greetings Aloha.java GutenTag.java Hello.java Hi.java C:> javac greetings\*.java C:> dir greetings Aloha.class GutenTag.class Hello.class Hi.class Aloha.java GutenTag.java Hello.java Hi.java
Having changed one of the source files in the previous example, we recompile it:
C:> cd \examples C:> javac greetings\Hi.javaSince
greetings.Hi
refers to other classes in thegreetings
package, the compiler needs to find these other classes. The example above works, because our default user class path happens to be the directory containing the package directory. But suppose we want to recompile this file and not worry about which directory we're in? Then we need to add\examples
to the user class path. We can do this by setting CLASSPATH, but here we'll use the -classpath option.C:>javac -classpath \examples \examples\greetings\Hi.javaIf we change
greetings.Hi
again, to use a banner utility, that utility also needs to be accessible through the user class path.C:>javac -classpath \examples;\lib\Banners.jar \ \examples\greetings\Hi.javaTo execute a class in
greetings
, we need access both togreetings
and to the classes it uses.C:>java -classpath \examples;\lib\Banners.jar greetings.Hi
It often makes sense to keep source files and class files in separate directories, especially on large projects. We use -d to indicate the separate class file destination. Since the source files are not in the user class path, we use -sourcepath to help the compiler find them.
C:> dir classes\ lib\ src\ C:> dir src farewells\ C:> dir src\farewells Base.java GoodBye.java C:> dir lib Banners.jar C:> dir classes C:> javac -sourcepath src -classpath classes;lib\Banners.jar \ src\farewells\GoodBye.java -d classes C:> dir classes farewells\ C:> dir classes\farewells Base.class GoodBye.classNote: The compiler compiled
src\farewells\Base.java
, even though we didn't specify it on the command line. To trace automatic compiles, use the -verbose option.
Here we use javac to compile code that will run on a 1.5 VM.
% javac -target 1.5 -bootclasspath jdk1.5.0\lib\rt.jar \ -extdirs "" OldCode.javaThe -target 1.5 option ensures that the generated class files will be compatible with 1.5 VMs. By default, javac compiles for JDK 6.
The Java Platform JDK's javac would also by default compile against its own bootstrap classes, so we need to tell javac to compile against JDK 1.5 bootstrap classes instead. We do this with -bootclasspath and -extdirs. Failing to do this might allow compilation against a Java Platform API that would not be present on a 1.5 VM and would fail at runtime.
Copyright © 1993, 2011, Oracle and/or its affiliates. All rights reserved. Please send comments using this Feedback page. |
Java Technology |


Boateng says ‘nothing has changed’ after Mario Balotelli racially abused
Kevin-Prince Boateng says “nothing has changed” in football’s fight against racism since he walked off a pitch almost seven years ago, in the wake of the abuse suffered by Mario Balotelli.
Brescia striker Balotelli threatened to leave the field during the second half of Sunday’s Serie A defeat at Verona because of apparent racist chanting from home fans.
In similar circumstances, Boateng, who currently plays for Italian club Fiorentina, refused to continue playing a friendly for AC Milan against Pro Patria in January 2013 in protest at racist abuse from the terraces.
The 32-year-old former Tottenham and Portsmouth player posted a video of the incident on Twitter, which ended with an image of Balotelli, and vowed to continue fighting the issue.
“6 years later NOTHING has changed but we don’t give up!,” he tweeted.
“Let’s keep fighting ALL TOGHETER (sic) against racism! #NOTORACISM #prince10 #handmade”.
Footage appeared on social media suggesting former Manchester City and Liverpool forward Balotelli was reacting to racist abuse, with monkey chants clearly audible.
Balotelli, who had picked up the ball and kicked it towards home fans, was convinced to stay by team-mates, Verona players and officials before referee Maurizio Mariani initiated the anti-racism protocol.

Boateng also kicked the ball at supporters when he was abused, before his Milan team-mates followed him off the pitch causing that match to be abandoned.


Status: 1 test(s) failed
Timing: began Fri, 05 Feb 2016 15:11:00 +0100 and completed in 16.17 seconds
* /answers [DEBUG]: Issuing GET request http://api.stackexchange.com/2.0/answers?filter=%21-q2RjmDn&key=ABqBaKNdubSh1TTyhKC35w%28%28&site=askubuntu&page=1 * /answers/{IDs} [DEBUG]: Issuing GET request http://api.stackexchange.com/2.0/answers/2;10?filter=%21-q2RjmDn&key=ABqBaKNdubSh1TTyhKC35w%28%28&site=askubuntu&page=1 * /answers/{IDs}/comments [DEBUG]: Issuing GET request http://api.stackexchange.com/2.0/answers/2;10/comments?filter=%21-q2RjmDn&key=ABqBaKNdubSh1TTyhKC35w%28%28&site=askubuntu&page=1
Fewer than 6 items were returned in the response body. [api_test.php:28]
* Testing SQL cache... [DEBUG]: Issuing GET request http://api.stackexchange.com/2.0/questions?filter=%21-q2RjmDn&key=ABqBaKNdubSh1TTyhKC35w%28%28&site=stackapps&page=1 [DEBUG]: Found http://api.stackexchange.com/2.0/questions?filter=%21-q2RjmDn&site=stackapps&page=1 in cache. [DEBUG]: Issuing GET request http://api.stackexchange.com/2.0/questions?filter=%21-q2RjmDn&key=ABqBaKNdubSh1TTyhKC35w%28%28&site=stackapps&page=1 * Testing Filestore cache... [DEBUG]: Issuing GET request http://api.stackexchange.com/2.0/questions?filter=%21-q2RjmDn&key=ABqBaKNdubSh1TTyhKC35w%28%28&site=stackapps&page=1 [DEBUG]: Found http://api.stackexchange.com/2.0/questions?filter=%21-q2RjmDn&site=stackapps&page=1 in cache. [DEBUG]: Issuing GET request http://api.stackexchange.com/2.0/questions?filter=%21-q2RjmDn&key=ABqBaKNdubSh1TTyhKC35w%28%28&site=stackapps&page=1
[DEBUG]: Issuing POST request http://api.stackexchange.com/2.0/filters/create?filter=%21-q2RjmHZ&key=ABqBaKNdubSh1TTyhKC35w%28%28&unsafe=false include => 'answer.link' exclude => 'answer.score' [DEBUG]: Created filter '!--pn9sU(S(1x'.


-
What's inside the President's "Nuclear Football"
boingboing.net
Hint: It isn't goldfish crackers, a Tom Clancy novel, or clean underwear. From Smithsonian: Contrary to popular belief, the Football does not ...
-
Bison, Alaska (a photo shared in the Boing Boing Flickr Pool)
boingboing.net
A lovely image shot by Patrick Kuhl, shared in our Flickr Pool: “Bison at the Conservancy in Alaska.”
-
Boing Boing sur Twitter : "http://t.co/UoJDXiuM7x"
twitter.com
Mot de passe oublié ? Vous utilisez déjà Twitter via SMS ?
-
Micro-robots and programmable bees
boingboing.net
National Geographic profiles Robert Wood, Harvard's maker of micro-robots inspired by nature, like these programmable bees. "If you want to make ...
-
Eric Holder was the worst Attorney General for the press in a generation. ...
boingboing.net
US Attorney General Eric Holder has announced that he is resigning. Trevor Timm of Freedom of the Press Foundation says he's been the worst AG where ...
-
Barnacle robot to search ship hulls for contraband
boingboing.net
MIT researchers demonstrated a barnacle-like underwater robot that can traverse a ship's hull to seek out secret compartments. From MIT News: ...
-
Thom Yorke releases surprise new solo record on BitTorrent
boingboing.net
A cool experiment from an artist who has a history of cool experimentation. Thom Yorke's new solo album Tomorrow's Modern Boxes is being released on ...
-
"Transparent" and the transition in transgender media depictions
boingboing.net
Amazon's comedy-drama centered on the experiences of a trans person is an imperfect step forward, says Andrea James
-
Why #gamergate is bullshit
boingboing.net
Luke McKinney demolishes the idea that notional corruption in the press can be fought by harassing women, or participating in an ex-boyfriend's ...

-
Photos: Comparing the iPhone 6 camera to previous iPhone cameras
boingboing.net
SnapSnapSnap, makers of the popular photo editing app CameraPlus, have a killer post with side-by-side-by-side-by-side image comparisons of shots ...
-
Trucker held 35,000 lbs of frozen chicken "to ransom"
boingboing.net
A trailer, "dripping with the juices of rotting meat," was discovered at the Flying J Truck Stop west of Missoula this week; it turns out the driver ...
-
North Korea admits young leader is unwell
boingboing.net
After his failure to appear in public for a "prolonged" period, 31-year-old Kim Jong-Un was described by the state press agency as suffering from ...
-
Blackberry's squarephone "sells out"
boingboing.net
If you find something strangely appealing about the Blackberry Passport's sharp geometry and all-work attitude, know that 200,000 buyers allegedly ...
-
Apple's torture-test lab
boingboing.net
The Verge's Josh Lowensohn got a tour: "This is where iPhones never want to go."
-
The surrealist photography of Herbert List
boingboing.net
Herbert List, b. 1903-1975, Hamburg, Germany. Robert Miller Gallery. His portrait of Anna Magnani is one of my favorites (and she is my favorite ...
-
Ello, what's all this then? An ad-free social network
boingboing.net
A new social micro-blogging network, Ello, is flooded with users during its beta. Ello is predicated on not selling its users out or selling them ...
-
The hands and minds behind The Boxtrolls
boingboing.net
Ethan Gilsdorf meets with the team who animated The Boxtrolls, where old school stop-motion is merged with the latest in CGI
-
Blackwing602: a new website about the creative process
boingboing.net
Here's a shout-out to our sponsors at Blackwing602, a website about the creative process and creative people. Blackwing602 has stories about notable ...
-
Boing Boing sur Twitter : "http://t.co/ssPJMjDj63"
twitter.com
Mot de passe oublié ? Vous utilisez déjà Twitter via SMS ?
-
Boing Boing sur Twitter : "http://t.co/45GDMPcuYD"
twitter.com
Mot de passe oublié ? Vous utilisez déjà Twitter via SMS ?
-
Smart thermostat makes dumb security mistakes
boingboing.net
Andrew Tierney had a close look at Heatmiser's popular wifi-enabled thermostat and found it to be riddled with security vulnerabilities. Tierney was ...
-
Chinese food seller sells "addictive" opium-laced noodles
boingboing.net
A noodle seller in China's Shaanxi province was arrested for seasoning his soup with powdered opium poppy to "make it taste better and to improve his ...
 We will both be sad when the sun runs out of hydrogen in 5 billion ...
-
Class war meets the War on General Purpose Computers
boingboing.net
The subprime auto-lending business -- writing car-loans to people who can't afford them -- is fuelled by GPS-enabled immobilizers that let lenders ...
-
#EndTheQuota: stop the Congressional mandate to jail 34K immigrants each ...
boingboing.net
Sasha writes, "Since 2010, the detention bed quota - a Congressional mandate that requires the incarceration of 34,000 immigrants in jails and ...
-
Help fund Last Gasp Books!
boingboing.net
For 45 years, our friends at Last Gasp have kept the counterculture busy with books, publishing wild, weird, wonderful, and subversive works by R ...
-
Cute kids arguing: Is it raining or sprinkling?
boingboing.net
“You Poked My Heart,” says one kid as the debate escalates into physical territory. Shot and shared by Tara Willmott.


Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor
incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud
fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident,
fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident,
exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu
fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident,
sunt in culpa qui officia deserunt mollit anim id est laborum.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu
fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident,
sunt in culpa qui officia deserunt mollit anim id est laborum.
Augusta Ada King, Countess of Lovelace (née Byron; 10 December 1815 – 27 November 1852) was
an English mathematician and writer, chiefly known for her work on Charles Babbage's proposed
mechanical general-purpose computer, the Analytical Engine. She was the first to recognise that
the machine had applications beyond pure calculation, and published the first algorithm intended
to be carried out by such a machine.
As a result, she is sometimes regarded as the first to
recognise the full potential of a "computing machine" and one of the first computer programmers.[2][3][4]


FreeFree¶
Motivations¶
There are always some books that we don’t need anymore but someone may want them. Although we can use second-hand platform to sell the books, sometimes we may want to just give or even throw them away since there is no insufficient space to store them. Also, sometimes we want some books for temporary use but it’s a waste to buy them. A free book give-way platform will help these people especially for students to get the books they need and give away the books then unwanted.
What is it¶
This web applicaion that aims to help people to get books they want for free. People can sign up to be a user and get the notifications of the availibilities to the books they need. Also, based on their locations some items have higher priorities to be recommended. Uses can use wishlist of ISBN number or book info to note which books they need. It’s a good way to help and benefit each other.
More features¶
More items (like furniture, pet products) to be in the list
Based on the owners’ intention, some items can be provided with a second-hand trading platform


Do You DaNaDu?™
Once You Du The Internet will never be the same.
Under construction: Check back for more info
(c) 2011 Stuart B. Malin -- All Rights Reserved


Reports: Barcelona reject Premier League offer for Ivan Rakitic
by HarigovindThe latest word around the rumour mill is that La Liga giants Barcelona have just rejected a Premier League offer for star midfielder Ivan Rakitic.
It is Sport that reports that an English club tabled an offer of €15million for Rakitic, but Barcelona turned down the bid as they have demanded that they want at least €40million for him.
Rakitic – who was a regular first-team starter at Barcelona until the end of the 2018-19 season – has, however, been reduced to a bit-part role at Camp Nou this season. So far, he has started just one game in all competitions and also failed to get off the bench in their last two La Liga matches.
The apparent snub also forced him to react, as he said: “I’ve given a lot in the five and a half years I’ve been here, and I want to continue to enjoy it.”
“I trust my football, I’m 31 and not 38, I feel at my best, but I understand and respect the decisions made by a coach. I think last season was the best of my career, I’m working harder than ever and I’m crazy about details, I love football,” he further added.
However, Barcelona chief Eric Abidal has made it clear that the reasons for the Croatian’s snub will be made clear to the player himself.
“Rakitic has been warned. There’s a sporting decision that he must understand,” Abidal said, before adding:
“I will speak with him to explain the plan.”


Register file abstraction base class
A register file is a collection of register files and registers used to create regular repeated structures.
Register files are usually instantiated as arrays.
| uvm_reg_file | ||||
| Register file abstraction base class | ||||
| Class Hierarchy | ||||
| ||||
| Class Declaration | ||||
| ||||
| Initialization | ||||
| new | Create a new instance | |||
| configure | Configure a register file instance | |||
| Introspection | ||||
| get_name | Get the simple name | |||
| get_full_name | Get the hierarchical name | |||
| get_parent | Get the parent block | |||
| get_regfile | Get the parent register file | |||
| Backdoor | ||||
| clear_hdl_path | Delete HDL paths | |||
| add_hdl_path | Add an HDL path | |||
| has_hdl_path | Check if a HDL path is specified | |||
| get_hdl_path | Get the incremental HDL path(s) | |||
| get_full_hdl_path | Get the full hierarchical HDL path(s) | |||
| set_default_hdl_path | Set the default design abstraction | |||
| get_default_hdl_path | Get the default design abstraction |
function new ( string name = "" )
Create a new instance
Creates an instance of a register file abstraction class with the specified name.
function void configure ( uvm_reg_block blk_parent, uvm_reg_file regfile_parent, string hdl_path = "" )
Configure a register file instance
Specify the parent block and register file of the register file instance. If the register file is instantiated in a block, regfile_parent is specified as null. If the register file is instantiated in a register file, blk_parent must be the block parent of that register file and regfile_parent is specified as that register file.
If the register file corresponds to a hierarchical RTL structure, it’s contribution to the HDL path is specified as the hdl_path. Otherwise, the register file does not correspond to a hierarchical RTL structure (e.g. it is physically flattened) and does not contribute to the hierarchical HDL path of any contained registers.
Get the simple name
Return the simple object name of this register file.
virtual function string get_full_name()
Get the hierarchical name
Return the hierarchal name of this register file. The base of the hierarchical name is the root block.
virtual function uvm_reg_file get_regfile ()
Get the parent register file
Returns null if this register file is instantiated in a block.
function void clear_hdl_path ( string kind = "RTL" )
Delete HDL paths
Remove any previously specified HDL path to the register file instance for the specified design abstraction.
function void add_hdl_path ( string path, string kind = "RTL" )
Add an HDL path
Add the specified HDL path to the register file instance for the specified design abstraction. This method may be called more than once for the same design abstraction if the register file is physically duplicated in the design abstraction
function bit has_hdl_path ( string kind = "" )
Check if a HDL path is specified
Returns TRUE if the register file instance has a HDL path defined for the specified design abstraction. If no design abstraction is specified, uses the default design abstraction specified for the nearest enclosing register file or block
If no design asbtraction is specified, the default design abstraction for this register file is used.
function void get_hdl_path ( ref string paths[$], input string kind = "" )
Get the incremental HDL path(s)
Returns the HDL path(s) defined for the specified design abstraction in the register file instance. If no design abstraction is specified, uses the default design abstraction specified for the nearest enclosing register file or block. Returns only the component of the HDL paths that corresponds to the register file, not a full hierarchical path
If no design asbtraction is specified, the default design abstraction for this register file is used.
function void get_full_hdl_path ( ref string paths[$], input string kind = "", input string separator = "." )
Get the full hierarchical HDL path(s)
Returns the full hierarchical HDL path(s) defined for the specified design abstraction in the register file instance. If no design abstraction is specified, uses the default design abstraction specified for the nearest enclosing register file or block. There may be more than one path returned even if only one path was defined for the register file instance, if any of the parent components have more than one path defined for the same design abstraction
If no design asbtraction is specified, the default design abstraction for each ancestor register file or block is used to get each incremental path.
function void set_default_hdl_path ( string kind )
Set the default design abstraction
Set the default design abstraction for this register file instance.
function string get_default_hdl_path ()
Get the default design abstraction
Returns the default design abstraction for this register file instance. If a default design abstraction has not been explicitly set for this register file instance, returns the default design absraction for the nearest register file or block ancestor. Returns “” if no default design abstraction has been specified.
The uvm_object class is the base class for all UVM data and hierarchical classes.
virtual class uvm_object extends uvm_void
Register file abstraction base class
virtual class uvm_reg_file extends uvm_object
Create a new instance
function new ( string name = "" )
Configure a register file instance
function void configure ( uvm_reg_block blk_parent, uvm_reg_file regfile_parent, string hdl_path = "" )
Get the hierarchical name
virtual function string get_full_name()
Get the parent block
virtual function uvm_reg_block get_parent ()
Get the parent register file
virtual function uvm_reg_file get_regfile ()
Delete HDL paths
function void clear_hdl_path ( string kind = "RTL" )
Add an HDL path
function void add_hdl_path ( string path, string kind = "RTL" )
Check if a HDL path is specified
function bit has_hdl_path ( string kind = "" )
Get the incremental HDL path(s)
function void get_hdl_path ( ref string paths[$], input string kind = "" )
Get the full hierarchical HDL path(s)
function void get_full_hdl_path ( ref string paths[$], input string kind = "", input string separator = "." )
Set the default design abstraction
function void set_default_hdl_path ( string kind )
Get the default design abstraction
function string get_default_hdl_path ()


Match Play. Red leads 6-5 to 11. How should Red play 55?
pips Red=159 White=149
(CorrectAnswer= 0/0, ErrorScore= 0)
This is very close and 18/8, 6/1(2)* is only a tiny error.
However, allowing White his whole roll by playing 18/3, 8/3 is a blunder. It is import to take the tempo with 6/1(2)*.
18/13, 11/1*, 6/1* is somewhat inflexible.
The best move is the ‘obvious’ 8/3(2), 6/1(2)* which wins slightly fewer games than 18/8, 6/1(2)* but many more gammons.
However, allowing White his whole roll by playing 18/3, 8/3 is a blunder. It is import to take the tempo with 6/1(2)*.
18/13, 11/1*, 6/1* is somewhat inflexible.
The best move is the ‘obvious’ 8/3(2), 6/1(2)* which wins slightly fewer games than 18/8, 6/1(2)* but many more gammons.
1. Cubeful 2-ply 8/3(2) 6/1*(2) Eq.: +0.261 0.558 0.225 0.004 - 0.442 0.109 0.005 2. Cubeful 2-ply 18/8 6/1*(2) Eq.: +0.242 (-0.019) 0.567 0.173 0.002 - 0.433 0.088 0.002 3. Cubeful 2-ply 18/13 11/1* 6/1 Eq.: +0.208 (-0.053) 0.561 0.155 0.002 - 0.439 0.085 0.002 4. Cubeful 2-ply 13/8 11/1* 6/1 Eq.: +0.181 (-0.080) 0.551 0.174 0.004 - 0.449 0.099 0.003 5. Cubeful 2-ply 18/3 8/3 Eq.: +0.173 (-0.088) 0.554 0.151 0.003 - 0.446 0.092 0.002


--- layout: about title: About ---
Hi, this is Mingu Kang(aka. minguking) who's specialized in many things, such as music, software development, football, and babysitting.
Hey, nice to meet you, you found me here. Hit me up if you want to chat with me :)


| June 5, 2003 Thursday |
Logged two new issues: |
| May 21, 2003 Wednesday |
Released a new version of ccdoc (r40) that fixes issues 0172 and 0173. I will be on vacation until mid-June so no work will be done on ccdoc during that time. |
| May 15, 2003 Thursday |
Logged a new issue:
This issue has been fixed in r40 (not yet released). I will release r40 in the next couple of days. |
| Mar 11, 2003 Tuesday |
Logged a new issue:
This issue has been fixed in r40 (not yet released). If this is a critical problem for you, please let me know and I will spin a release. |
| Mar 06, 2003 Thursday |
Dmitry Steklenev has ported ccdoc v08r39 to the OS/2 Warp platform. It can be downloaded from this URL (which is also available on the downloads page): ftp://ftp.ptv.ru/pub/glass/ccdoc/ccdoc_v08/ccdoc_v08r39.zip . |
|
Mar 03, 2003 |
The Mac OSX port is now available. |
| Feb 28, 2003 Friday |
A new version of ccdoc: v08r39, is available with the following changes:
|
| Feb 27, 2003 Thursday |
The following issues have been reported and will be fixed in the upcoming v08r39 release. Please contact me if you need any of these fixes now.
|
| Feb 26, 2003 Wednesday |
The following issues have been reported and will be fixed in the upcoming v08r39 release. Please contact me if you need any of these fixes now.
|
| Feb 25, 2003 Tuesday |
The following issues have been reported and will be fixed in the upcoming v08r39 release. Please contact me if you need any of these fixes now. |
| Feb 24, 2003 Monday |
A new version of ccdoc: v08r38, is available that has extensive updates to the on-line help. It is very similar in function to v08r37. The only differences are:
There are a number of infra-structure changes. I added a script to automatically update the downloads page and removed the Makefile dependency on the set_release_info script. None of the infra-structure changes affect the program. I also added the FAQ. |
| Feb 21, 2003 Friday |
A new version of ccdoc v08r37 is available that fixes the bugs described by the following issues:
This release was made because this version actually successfully parsed an STL release! The best practices document was also updated to include namespace and template sections. Be careful, there was an intermediate version of r37 that was available for a couple of days because of source forge compile farm problems. To make sure that you have the correct version of r37 look for the -doxygen switch in the help. |
| Feb 20, 2003 Thursday |
A new version of ccdoc v08r36 is available that fixes the bugs described by the following issues:
This release was made because this was a critical bug. Two new bugs were reported. These have already been fixed in the working version of r37 and will be released later this week. |
| Feb 19, 2003 Wednesday |
A new version of ccdoc v08r35 is available that fixes the bugs described by the following issues:
This release was made because the r34 requirement that -rptmac and -rptmac1 switches appear in phase 1 was inconsistent with the interface paradigm. |
| Feb 18, 2003 Tuesday |
A new version of ccdoc v08r34 is available that fixes the bugs described by the following issues:
This release was made because a user had a critical need for the 0149 fix and because I had some time. |
| Feb 17, 2003 Monday |
A new version of ccdoc v08r33 is available that fixes the bugs described by issues
This release was made because a user had a critical need for the 0149 fix. |
| Feb 10, 2003 Monday |
A new version of ccdoc v08r32 is available that fixes the bugs described by issues
This release was made because a user had a critical need for the 0146 fix. |
| Jan 30, 2003 Thursday |
A new version of ccdoc v08r31 is available that fixes the bug described by issue 0145. This release was made because a user had a critical need for this fix. |
| Jan 29, 2003 Wednesday |
Two new ports are available:
Added four new issues: |
| Jan 20, 2003 Monday |
A new version of ccdoc v08r30 has been
released. This version provides a unix style man page and some updates to
the on-line help and license info to reference ccdoc.sourceforge.net instead
of www.joelinoff.com/ccdoc. Added a port to the IBM Websphere platform (J2EE).
There are no other changes to the program.
Couldn't do the CerfCube port because there was a problem at the source forge compile farm. I will release it when that platform becomes available. |
| Jan 15, 2003 Wednesday |
Updated the ccdoc v08r29 release to fix
a bug (issue 0140) that was uncovered
during large system regression testing. The bug fix required a single line
change so I decided not to bump the release number. Instead I changed the
release date from 1/14 to 1/15.
Added the MacOS X 10.1 port. |
| Jan 14, 2003 Tuesday |
A new version of ccdoc v08r29 has been released that fixes issues 0138 and 0139. These bug fixes were considered serious enough to warrant a new release. In addition the copyright notice was updated and the issues list was added to the project page. I figured out how to use the compile farm and was able to successfully port to a number of new platforms. |
| Jan 02,2003 Thursday |
Updated the counter script to allow users to add keys by id. This allows multiple users to share the same counter file. I also added a bunch of examples that show how to use the script in the help. Uploaded all of the ccdoc source to the sourceforge.net CVS repository and added the sourceforge log to this page per their request. I still need to figure out how to organize the release to make it source forge like but for now you should be able to get everything that you need. |
| Dec 31, 2002 Tuesday |
Updated the counter script to acknowledge the resources that I used, to add the version variable (which will be set when ccdoc is moved to the sourceforge repository) and added a 16x24 font to provide larger numbers. The latter change forced me to add a new switch called -font. There are two choices 8x8 and 16x24. To find out more about all of the available switches, enter the following URL in your browser: http://ccdoc.sourceforge.net/cgi-bin/counter.pl?help. |
| Dec 30, 2002 Monday |
Finally completed the counter perl script (see the downloads page) and all of the executables. The project release has been officially moved to ccdoc.sourceforge.net! I still need to update the CVS repository. |
| Dec 26, 2002 Thursday |
Changed the look and feel of the main page to make it much simpler (ala google - no frames, no fancy stuff). Also updated almost all of the documents in the system to bring them up to date and to check for consistency. Beefed up the introduction to show how to use the tool (simplistically). Many thanks to Ragav Satish for suggestions on simplifying the interface. Moved the project documentation to sourceforge.net (http://ccdoc.sourceforge.net). I still need to move the source into the sourceforge CVS repository and update www.joelinoff.com/ccdoc. That should happen tomorrow. |
| Dec 20, 2002 Monday |
Mike Braca ported ccdoc to the Mac OSX platform. It is now available on the downloads page. |
| Dec 10, 2002 Tuesday |
Ccdoc was incorporated in the Debian Unix distribution in the unstable archive by Magnus Ekdahl. This was done because of the licensing change from my "roll your own" to the MIT License. For more information on the debian project see http://www.debian.org. |
| Dec 6, 2002 Friday |
Found a bug and logged it as issue 0137. There is a workaround (that is described in the issue entry) so the fix is not urgent.
In other news, I have moved my development environment to version 3.2.3 of the gcc compiler (from cygwin). |
|
Nov 18, 2002 |
Added a link on the downloads page to the ccdoc port that Dieter Habelitz did to RISC OS. Details can be found here. |
|
Nov 14, 2002 |
A new version of ccdoc r28 has been released one day after r27! This was done because a critical bug was found for nested structures/classes (issue 0136). The following issues have been fixed in r28: I apologize for any inconvenience this causes. |
| Nov 13, 2002 Wednesday |
Updated the users guide for r27 and added a new best practices document. The porting is complete and I am now running system tests. When these have been verified, ccdoc v08r27 will be released. The systems tests have completed successfully which means that r27 will be released today with the following fixes:
In addition the users guide has been updated to reflect the introduction of the @todo directive and the new switches -[no]rptcfuns. After the release was finished I came across an interesting discussion about the ccdoc license in the linux.debian.legal newsgroup. I have added it as issue 0135 and have updated the source code for r28. For those of you that are interested in all things legal, the new copyright notice supercedes the previous copyright notice for all prior releases. |
| Nov 12, 2002 Tuesday |
All bug fixes and enhancements are complete for r27. I am currently porting and expect to be finished by the end of the week. |
|
Nov 11, 2002 |
The results of the survey are in. I will continue to fully support ccdoc. 100% of the respondents, about 25, voted to NOT merge with Doxygen. Many of them (>75%) use both doxygen and ccdoc (I also use both) but they liked using ccdoc as the interface documentation. As far as supporting ccdoc goes, r27 is almost ready for release. The following bugs have been fixed.
The following bug is scheduled to be fixed before r27 is released.
I am actively working on it and hope to finish by the end of the week.
|
| Oct 10, 2002 Thursday |
I am back and am actively working on r27. There are a few critical bugs that must be fixed for this release. They are:
The following bugs/issues have been reported since March 15th:
I have been looking at using XML (schema) as the optional output for the backend in r28. Please feel free to let me know what you think of this approach. |
| Aug 21, 2002 Wednesday |
I will be out of the country until late September and will not be working during that time. |
| Aug 15, 2002 Thursday |
I have been completely lame about updating my web pages and have received a lot of mail from folks asking whether ccdoc is still being supported. The answer yes, here is what I have been doing.
The last bullet probably requires some explanation. A number of folks have suggested that ccdoc be combined with doxygen (a very good source code documentation and browsing system). Since I really didn't know much about doxygen I looked into it. My conclusion is that doxygen is much more that ccdoc will ever be. The development team has done a great job of developing a tool that documents and provides source code browsing for C++ projects and I strongly recommend it. Ccdoc is only meant to document interfaces so there is no question that doxygen is a superset of ccdoc from a functional perspective. From a project standpoint, I am still trying to understand what ccdoc users want. A few of them have reported that they really like the interface only approach and some users even use both tools. I am still polling and have currently decided to continue to support ccdoc to the best of my ability. Please let me know what you think. Here are the choices:
|
| Mar 15, 2002 Friday |
Two new bugs were reported: |
| Mar 01, 2002 Friday |
Found another bug (and work around): |
| Feb 26, 2002 Tuesday |
I actually took a bit more than a month off but now I am back. Here is the summary of the latest bugs:
Here are some of the things that I am looking at in the near future for ccdoc:
|
| Dec 12, 2001 Wednesday |
I am taking a month off from ccdoc to get some rest. I will get back to it in January 2002. Please keep sending suggestions and bug reports, I will archive them and when I get back, catalogue them as issues. Happy Holidays. |
| Dec 3, 2001 Monday |
A new release of ccdoc is available: "ccdoc v0.8 r26 2001/11/28". This release fixes the following issues:
|
| Nov 29, 2001 Thursday |
Two new issues added against r25 |
| Nov 28, 2001 Wednesday |
Fixed the following issues in r26:
Added another new issue against r25:
|
| Nov 27, 2001 Tuesday |
Fixed the following issues in r26:
Added another new issue against r25:
|
| Nov 26, 2001 Monday |
Six new issues have been reported since the r25 release.
I have already fixed 0114, 0116, 0117 and 0118. I will release r26 with these fixes by next Monday. If you are having serious problems with any of the above issues, please send me e-mail and I will release r26 sooner. In addition, a new feature has been added (as described by 0086). This feature was requested and implemented by Ben Zoe. It allows you to specify a C++ style, single line, suffix comments as shown in the example below: class Point3D { public: int p1; //@- The x coordinate. int p2; //@- The y coordinate. int p3; //@- The z coordinate. }; |
| Nov 19, 2001 Monday |
Important! I released ccdoc v0.8 r25 twice today. The first had a date of 2001/11/17 which was incorrect. The correct version has a date of 2001/11/19. Please re-download when you get the chance. A new release of ccdoc is available: "ccdoc v0.8 r25 2001/11/19". The following issues were fixed.
I was not able to do as much in this release as I had hoped because of other commitments but these fixes (especially 0095) generated a lot of bug reports so I wanted to get them out as soon as possible. |
| Nov 12, 2001 Monday |
Twelve new issues were added today.
I have already fixed or closed issues 0095, 0097, 0100, 0103, 0104 and 0110 for r25. I will do as much as I can to get more bug fixes in before next Monday's release of r25 but I am very busy with other stuff right now so don't expect too much. |
| Nov 5, 2001 Monday |
Another new issue has been added:
|
| Nov 2, 2001 Friday |
Two new issues have been added:
Issues 0093, 0094 and 0096 seem to address the common theme of reducing the need to type redundant comments. I am actively looking into this. |
| Nov 1, 2001 Thursday |
Two interesting issues have been added: I really like the notion of comment inheritance and will see whether it can be added in the near future. In addition, one user reported problems with ccdocv08r24 under cygwin on windows. I have not been able to duplicate the problem and I have heard from other cygwin users that it works for them so it hasn't been entered as an issue -- yet. Please let me know if you have similar problems. |
| Oct 26, 2001 Friday |
A new release of ccdoc is available: "ccdoc v0.8 r24 2001/10/26". This release fixes the following issues:
Note that the fix for issue 0082 will change the database contents so you will have to re-generate your databases. This is because the comment schema was modified to accomodate the new @since directive. I consider this intrusion acceptable because all clients that I know of re-generate the databases each time they run. Note that the fix for issue 0089 will change your HTML output because the javadoc syntax for short descriptions is different than the old ccdoc syntax. You can use the old ccdoc style syntax by specifying the -nojdsd switch. I decided to make the javadoc syntax the default because the behavior ccdoc input syntax is supposed to conform as closely as possible to javadoc semantics. The users guide has been updated to reflect this behavior. Note that the users guide has been updated to reflect the new @since, @throws and<EMAIL_ADDRESS>support. |
| Oct 25, 2001 Thursday |
A number of new issues have been reported. The bold issues have already been fixed in r24.
|
| Oct 19, 2001 Friday |
A new release of ccdoc is available: "ccdoc v0.8 r23 2001/10/19". This release fixes the following issues: |
| Oct 16, 2001 Tuesday |
Two issues have reported against r22. These are already fixed in r23 and will be released at the end of this week or early next week. Here are the details: |
| Oct 12, 2001 Friday |
The new release of ccdoc is available: "ccdoc v0.8 r22 2001/10/12". This release fixes the following issues:
|
| Oct 8, 2001 Monday |
Several new issues have been reported: 0069, 0070 and 0071. These have been fixed in r22 which has not yet been released. I will not release these fixes until next week (to try to catch more problems) unless someone needs them urgently. |
| Oct 1, 2001 Monday |
The new release of ccdoc is available: "ccdoc v0.8 r21 2001/10/01". This release fixes issues 0064, 0066 and 0068. It was triggered by 0068 which was a critical bug fix. No one responded to my request to keep the solaris 2.4 port so it has been dropped from this release. |
| Sep 24, 2001 Monday |
The new release of ccdoc is available: "ccdoc v0.8 r20 2001/09/24". This release fixes issues 0063. |
| Sep 21, 2001 Friday |
The new release of ccdoc is available: "ccdoc v0.8 r19 2001/09/21". This release fixes issues 0053, 0054 and 0059. Issues 0055, 0057 and 0058 have been closed. The ccdoc generated web pages are now compliant with the HTML 4.01 Transitional specification. The Solaris 2.4 port will be dropped in the next release because no-one seems to be using it. If you want me to continue to support this version, please send me e-mail as soon as possible. |
| Sep 20, 2001 Thursday |
Added issues 0054, 0055, 0056, 0057, 0058, 0059 and 0060. Also validated the issues pages to make sure that they are HTML 3.2 compliant using the verifier described in issue 0059. |
| Sep 19, 2001 Wednesday |
Web hosting problems have been fixed. The ccdoc web site was down for more than a day because of problems associated with the nimda worm. |
| Sep 18, 2001 Tuesday |
The new release of ccdoc is available: "ccdoc v0.8 r18 2001/09/18". This release fixes issues 0052 and is the first release that contains the linux port. |
| Sep 11, 2001 Tuesday |
The new release of ccdoc is available: "ccdoc v0.8 r17 2001/09/11". This release fixes issues 0047, 0048, 0050 and re-fixes issue 0045. |
| Sep 10, 2001 Monday |
There were two new releases of ccdoc today: "ccdoc v0.8 r16 2001/09/10" and "ccdoc v0.8 r15 2001/09/10". The reason for r16 is that a bug (0046) that was easy to fix was reported about half an hour after r15 was published. This bug fix was important for the user so I decided to re-release quickly. The r15 release fixes issues 0041, 0042, 0043, 0044, and 0045. Updated the users guide to reflect changes that occurred as the result of these fixes. |
| Sep 7, 2001 Friday |
The new release of ccdoc is available: "ccdoc v0.8 r14 2001/09/07". This release fixes issue 0039. This fix significantly improves ccdoc run time in phases 2 and 3. It has no other affect. |
| Sep 6, 2001 Thursday |
The new release of ccdoc is available: "ccdoc v0.8 r13 2001/09/06". This release fixes the following issues: 0037, 0038 and 0040. Issue 0039 is still being worked on. |
| Sep 4, 2001 Tuesday |
The new release of ccdoc is available: "ccdoc v0.8 r12 2001/09/04". This version adds a quick reference guide was added (issue 0035) to provide highlights of new features in v0.8 that will be of interest to users of 0.7a and it fixes issue 0036. |
| Sep 2, 2001 Sunday |
A new release of ccdoc is available: "ccdoc v0.8 r11 2001/09/02". It provides a fix for issue 0034 (the -rpthpc switch was too verbose). This fix won't be available for Solaris until next Tuesday. |
| Aug 30, 2001 Thursday |
A new release of ccdoc is available: "ccdoc v0.8 r10 2001/08/30". It supports the resolution of issue 0007, support for wildcards under MS windows in the MS-DOS command interpreter. It also provides fixes for the following issues: 0026, 0027, 0028, 0029, 0030, 0031, 0032 and 0033. |
| Aug 29, 2001 Wednesday |
A new release of ccdoc is available: "ccdoc v0.8 r9 2001/08/29". |
| Aug 28, 2001 Tuesday |
A new release of ccdoc is available: "ccdoc v0.8 r8 2001/08/28". Issues 0020, 0021 and 0022 were fixed in r8. Added issues 0015, 0016, 0017, 0018, 0019, 0020, 0021 and 0022. A -version switch was added to make it easier to determine which release of v0.8 you have (issue 0017). |
| Aug 24, 2001 Friday |
Added issues 0011, 0012, 0013 and 0014. Issue 0013: I am in the processing of adding ccdoc to source forge (http://sourceforge.net). Today they approved the project! Fixed issue 0014 and re-released 0.8. |
| Aug 23, 2001 Thursday |
Added some new issues. Updated the users guide to document the new -meta switch and the -[no]cdsm switches. Fixed issue 0004 by renaming the download files. Closed issue 0007. This is a known problem with a workaround. Fixed issue 0008. Added a new switch to phase 1 called -[no]cdsm to turn on or off the default creation of special members that are not explicitly defined by the class. Fixed issue 0009. Fixed issue 0010. |
| Aug 22, 2001 Wednesday |
Created the issues section for the newly reported bugs and enhancement requests. Fixed issues 0001, 0002, 0003, 0005 and 0006. Released new versions of the executables with these fixes. |
| Aug 21, 2001 Tuesday |
The following switches were not implemented due to an oversight:
Many thanks to Dániel Dékány for promptly pointing out the problem. I have fixed the problem and have released the updated version of ccdoc. To determine whether you have a broken version specify -rptmac on the command line. If you get an error about a missing file, you have the old version. You can workaround this problem by specifying -macros or -no macros or you can fix the problem by downloading the most recent version of the release. |
| Aug 20, 2001 Monday |
CcDoc version 0.8 has been released on the following platforms:
Here is a brief overview of some of the new features:
|


SETRESUID
Section: Linux Programmer's Manual (2)Updated: 2007-07-26
Index Return to Main Contents
NAME
setresuid, setresgid - set real, effective and saved user or group IDSYNOPSIS
#define _GNU_SOURCE#include <unistd.h>
int setresuid(uid_t ruid, uid_t euid, uid_t suid);
int setresgid(gid_t rgid, gid_t egid, gid_t sgid);
DESCRIPTION
setresuid() sets the real user ID, the effective user ID, and the saved set-user-ID of the calling process.Unprivileged user processes may change the real UID, effective UID, and saved set-user-ID, each to one of: the current real UID, the current effective UID or the current saved set-user-ID.
Privileged processes (on Linux, those having the CAP_SETUID capability) may set the real UID, effective UID, and saved set-user-ID to arbitrary values.
If one of the arguments equals -1, the corresponding value is not changed.
Regardless of what changes are made to the real UID, effective UID, and saved set-user-ID, the file system UID is always set to the same value as the (possibly new) effective UID.
Completely analogously, setresgid() sets the real GID, effective GID, and saved set-group-ID of the calling process (and always modifies the file system GID to be the same as the effective GID), with the same restrictions for non-privileged processes.
RETURN VALUE
On success, zero is returned. On error, -1 is returned, and errno is set appropriately.ERRORS
- EAGAIN
- uid does not match the current UID and this call would bring that user ID over its RLIMIT_NPROC resource limit.
- EPERM
- The calling process is not privileged (did not have the CAP_SETUID capability) and tried to change the IDs to values that are not permitted.
VERSIONS
These calls are available under Linux since Linux 2.1.44.CONFORMING TO
These calls are non-standard; they also appear on HP-UX and some of the BSDs.NOTES
Under HP-UX and FreeBSD the prototype is found in <unistd.h>. Under Linux the prototype is provided by glibc since version 2.3.2.SEE ALSO
getresuid(2), getuid(2), setfsgid(2), setfsuid(2), setreuid(2), setuid(2), capabilities(7), credentials(7), feature_test_macros(7)COLOPHON
This page is part of release 3.22 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/.
Index
This document was created by man2html, using the manual pages.
Time: 05:33:05 GMT, December 24, 2015


Four Athens believes that Athens possesses all of ingredients necessary to create a strong technology startup hub.
Big Nerd Ranch
@bignerdranch
When the Big Nerd Ranch started out, we did one thing and we did it well: we taught programming languages. Now, over a decade later, we’ve expanded to include consulting, software products and an ever-growing library of Big Nerd Ranch books.
@codeschool
Code School is an online learning platform that teaches a variety of programming and web design skills. Courses range from beginner to advanced levels and you get to earn rewards and badges as you learn.
@getvitaminc
Healthcare communication improved.
What is Rails Girls?
@railsgirls
Code is literacy and valuable wherever you work.
Lingua franca of the web - technical literacy is vital.
Not solitary, not mathematical - like any language, immersion is key.
It's not a matter of statistics, but perspective.
She++
Founded in January 2012, she++ was Stanford's first conference on women in technology. In April 2012, we hosted a lineup of inspirational women in tech--from companies such as Google, Facebook, Dropbox, and Pinterest, among others--and 250+ attendees on Stanford's campus.


The MergeCellSets module merges cell sets with same cell type and same number of cell data.
Input Ports
Name Type Description in Field Unstructured field that contains several cell-sets Output Ports
Name Type Description out Field Unstructured Field with combined cell sets obj DataObject directly renderable object
This project merges cell sets that have the same cell type and the same number of cell data. The aim of the module is to improve the rendering performance by reducing the number of cell sets. The module only works with unstructured fields with non polygonal cell sets. The properties value of the merged cell sets are equal to the values of the added cell set.
in
Unstructured Field that contains several cell sets.
out
Unstructured field that has the non polygonal cell sets with the same cell types and same number of cell data merged.
obj
Directly renderable object of the out field with merged cell sets. This Port can be connected directly to the UViewer.
The MergeCellSets user macro uses the MergeCellSetsCore low-level module.
An example application MergeCellSetsEg is provided with the MergeCellSets project.
xp_comm_proj/merge_cs/mcs_mods.v Creates the MergeCellSetsMods library containing the low-level MergeCellSetsCore module.
xp_comm_proj/merge_cs/mcs_macs.v Creates the MergeCellSetsMacs library containing the high-level user macro MergeCellSets.
xp_comm_proj/merge_cs/mcs_apps.v Creates the MergeCellSetsApps library containing the example application MergeCellSetsEg.
Mario Valle, AVS Italy
Tobias Schiebeck, Manchester Visualization Centre


Hi, I am Luc. I learned, at a very early age, the importance of a strong work ethic, diligence, organization, and ambition. Growing up on my family's farm involved physical labor, a willingness to work, and an ability to keep a positive attitude in adverse working conditions.
Currently, I am a senior at University of California San Diego. Through my experiences in the past year at University of California San Diego, I have developed the skills and assets needed to become a successful computer programmer. I hope to join a workplace where I will work as a database administrator. My greatest strengths are in critical thinking, monitoring, complex problem solving and active learning.
I view my education as an academic training and practical experience that grows with my every accomplishment. These, collectively, are a representation of who I am as a student, employee, and life-long learner.


NASCAR’s Cup Series championship to be decided at Homestead
by The Associated PressHOMESTEAD, Fla. (AP) — The NASCAR Cup Series championship will be decided at Homestead-Miami Speedway. Joe Gibbs Racing drivers Kyle Busch, Denny Hamlin and Martin Truex Jr. are racing for the title Sunday along with Stewart-Haas Racing star Kevin Harvick.
Busch, Harvick and Truex are all going for a second Cup championship. Hamlin is looking for his first.
Las Vegas oddsmakers have basically posted the winner-take-all race as a dead heat with no clear favorite.
This championship field is nearly identical to last year, with Busch, Harvick and Truex returning to the finale again. Hamlin has not been in the championship race since 2014.
Homestead is moving on the 2020 schedule to March, ending its streak of 18 years as the season finale.
___
More AP auto racing: https://apnews.com/apf-AutoRacing and https://twitter.com/AP_Sports
The Associated Press


blocks.Pin()¶
-
class
feign.blocks.
Pin
(*args, **kwargs)¶ A class used to represent a Pin. With
Pin.add_region()
coaxial circles can be added to describe the content (eg. fuel pellet, helium gap, clad). In case no region is added, the Pin() object will behave as an empty channel filled with the coolant material.- Parameters
*args (str) – ID of the pin
-
_id
¶ ID of the pin
- Type
str
-
regions
¶ (Material, radius) pairs to describe coaxial regions within pin, radius in cm.
- Type
list of tuples
-
materials
¶ list of
Material._id
identifiers within the pin- Type
list of str
-
radii
¶ list of radii of regions within the pin, radii in cm
- Type
list of floats
-
add_region
(material=None, radius=None)¶ The function to add coaxial circles and rings to a pin. In case of consecutive calls (ie. more regions added), the radii has to increase.
- Parameters
material (Material) – material filled into new region
radius – radius of new region
Examples
>>> uo2 = Material('1') >>> he = Material('2') >>> zr = Material('3') >>> fuel = Pin('1') >>> fuel.add_region(uo2,0.41) >>> fuel.add_region(he,0.42) >>> fuel.add_region(zr,0.48) >>> fuel.regions [(Material(matID=1), 0.41), (Material(matID=2), 0.42), (Material(matID=3), 0.48)]


| DiscreteWavelets Toolbox |
|
Installation
Installing DiscreteWavelets
The following steps will allow you to install DiscreteWavelets:
- Download DiscreteWaveletsPackage60.zip from the website
http://www.stthomas.edu/wavelets.
- The zip file contains a single folder called DiscreteWavelets. Place this folder anywhere you like on
your computer, but do not rename it. Make note of the folder location.
- Open Matlab R2007b and under File, choose Set Path …
- Click the button Add with SubFolders … and enter the location of the DiscreteWavelets folder.
- Click on Save and Close.
- In the Matlab command window, issue the command rehash and then startup. This will load the global variables
used by the package.
- You are all set - you should be able to run demos or use any function in the package.
Back to Top
Adding New Image Files to the Package
To add new images to the package:
- In the Matlab command window, type startup and make note of the value of DWIMAGESPATH
- Go to this folder and open the folder GrayScale (Color) if you wish to add grayscale (color) images.
- Place a copy of the image in the appropriate directory. You should also add a thumbnail of the image as well. The naming convention for the thumbnail is image_small.png where the added image is named image.png. You may use any format supported by the Matlab function imread.
- Open the text file Images.txt with a text editor. Add a line of the form image.png;r(r_small);c(c_small);i(i_small) for each new image you have added. Here the image has dimensions r x c and the thumbnail has dimensions r_small x c_small. A total of i iterations of the discrete wavelet transformation can be performed on image.png and i_small iterations can be performed on image_small.png.
- Save and close the file. In the Matlab command window, issue the command ImageList(). The added image files(s) should show up in the output table.
Back to Top
Adding New Sound Files to the Package
To add new sounds to the package:
- In the Matlab command window, type startup and make note of the value of DWSOUNDSSPATH
- Go to this folder and place a copy of the sound file(s) in it. You may use either the .wav or the .au sound file format.
- Open the text file Sounds.txt with a text editor. Add a line of the form audio.wav;TYPE;len;channel;srate;size for each new sound file you have added. Here, the first element of the list is the file name, TYPE is the type of audio file ("WAVE", for example), len is the length of the audio clip in seconds, channel is the number of channels, srate is the sampling rate, and size is the number of samples in the file.
- Save and close the file. In the Matlab command window, issue the command SoundList(). The added sound file(s) should show up in the output table.
Back to Top
Adding New Data Files to the Package
To add new data files to the package:
- In the Matlab command window, type startup and make note of the value of DWDATAPATH
- Go to this folder and place a copy of the data file(s) in it.
- Open the text file Data.txt with a text editor. Add a line of the form Add a line of the form data.txt;size;comment; for each new data file you have added. Here, the first element of the list is the file name, size is the the number of samples in the file, and comment is a comment about the data in the file.
- Save and close the file. In the Matlab command window, issue the command DataList(). The added data file(s) should show up in the output table.
Back to Top
| |
Release Notes |
|
What's New? |
|
© 2007-2008 Patrick Van Fleet


’TWAS in that place o’ Scotland’s isle,
That bears the name o’ auld King Coil,
Upon a bonie day in June,
When wearin’ thro’ the afternoon,
Twa dogs, that were na thrang at hame,
Forgather’d ance upon a time.
The first I’ll name, they ca’d him Caesar,
Was keepit for His Honor’s pleasure:
His hair, his size, his mouth, his lugs,
Shew’d he was nane o’ Scotland’s dogs;
But whalpit some place far abroad,
Whare sailors gang to fish for cod.
His locked, letter’d, braw brass collar
Shew’d him the gentleman an’ scholar;
But though he was o’ high degree,
The fient a pride, nae pride had he;
But wad hae spent an hour caressin,
Ev’n wi’ al tinkler-gipsy’s messin:
At kirk or market, mill or smiddie,
Nae tawted tyke, tho’ e’er sae duddie,
But he wad stan’t, as glad to see him,
An’ stroan’t on stanes an’ hillocks wi’ him.
The tither was a ploughman’s collie—
A rhyming, ranting, raving billie,
Wha for his friend an’ comrade had him,
And in freak had Luath ca’d him,
After some dog in Highland Sang,
Was made lang syne,—Lord knows how lang.
He was a gash an’ faithfu’ tyke,
As ever lap a sheugh or dyke.

Nae doubt but they were fain o’ ither,
And unco pack an’ thick thegither;
Wi’ social nose whiles snuff’d an’ snowkit;
Whiles mice an’ moudieworts they howkit;
Whiles scour’d awa’ in lang excursion,
An’ worry’d ither in diversion;
Until wi’ daffin’ weary grown
Upon a knowe they set them down.
An’ there began a lang digression.
About the “lords o’ the creation.”
I’ve aften wonder’d, honest Luath,
What sort o’ life poor dogs like you have;
An’ when the gentry’s life I saw,
What way poor bodies liv’d ava.
Our laird gets in his racked rents,
His coals, his kane, an’ a’ his stents:
He rises when he likes himsel’;
His flunkies answer at the bell;
He ca’s his coach; he ca’s his horse;
He draws a bonie silken purse,
As lang’s my tail, where, thro’ the steeks,
The yellow letter’d Geordie keeks.
Frae morn to e’en, it’s nought but toiling
At baking, roasting, frying, boiling;
An’ tho’ the gentry first are stechin,
Yet ev’n the ha’ folk fill their pechan
Wi’ sauce, ragouts, an’ sic like trashtrie,
That’s little short o’ downright wastrie.

Trowth, Cæsar, whiles they’re fash’t eneugh:
A cottar howkin in a sheugh,
Wi’ dirty stanes biggin a dyke,
Baring a quarry, an’ sic like;
Himsel’, a wife, he thus sustains,
A smytrie o’ wee duddie weans,
An’ nought but his han’-daurk, to keep
Them right an’ tight in thack an’ rape.
An’ when they meet wi’ sair disasters,
Like loss o’ health or want o’ masters,
Ye maist wad think, a wee touch langer,
An’ they maun starve o’ cauld an’ hunger:
But how it comes, I never kent yet,
They’re maistly wonderfu’ contented;
An’ buirdly chiels, an’ clever hizzies,
Are bred in sic a way as this is.
But then to see how ye’re negleckit,
How huff’d, an’ cuff’d, an’ disrespeckit!

I see how folk live that hae riches;
But surely poor-folk maun be wretches!
They’re no sae wretched’s ane wad think.
Tho’ constantly on poortith’s brink,
They’re sae accustom’d wi’ the sight,
The view o’t gives them little fright.
Then chance and fortune are sae guided,
They’re aye in less or mair provided:
An’ tho’ fatigued wi’ close employment,
A blink o’ rest’s a sweet enjoyment.
The dearest comfort o’ their lives,
Their grushie weans an’ faithfu’ wives;
The prattling things are just their pride,
That sweetens a’ their fire-side.
An’ whiles twalpennie worth o’ nappy
Can mak the bodies unco happy:
They lay aside their private cares,
To mind the Kirk and State affairs;
They’ll talk o’ patronage an’ priests,
Wi’ kindling fury i’ their breasts,
Or tell what new taxation’s comin,
An’ ferlie at the folk in Lon’on.
As bleak-fac’d Hallowmass returns,
They get the jovial, rantin kirns,
When rural life, of ev’ry station,
Unite in common recreation;
Love blinks, Wit slaps, an’ social Mirth
Forgets there’s Care upo’ the earth.
That merry day the year begins,
They bar the door on frosty win’s;
The nappy reeks wi’ mantling ream,
An’ sheds a heart-inspiring steam;
The luntin pipe, an’ sneeshin mill,
Are handed round wi’ right guid will;
The cantie auld folks crackin crouse,
The young anes rantin thro’ the house—
My heart has been sae fain to see them,
That I for joy hae barkit wi’ them.
Still it’s owre true that ye hae said,
Sic game is now owre aften play’d;
There’s mony a creditable stock
O’ decent, honest, fawsont folk,
Are riven out baith root an’ branch,
Some rascal’s pridefu’ greed to quench,
Wha thinks to knit himsel the faster
In favour wi’ some gentle master,
Wha, aiblins, thrang a parliamentin,
For Britain’s guid his saul indentin—
Haith, lad, ye little ken about it:
For Britain’s guid! guid faith! I doubt it.
Say rather, gaun as Premiers lead him:
An’ saying ay or no’s they bid him:
At operas an’ plays parading,
Mortgaging, gambling, masquerading:
Or maybe, in a frolic daft,
To Hague or Calais takes a waft,
To mak a tour an’ tak a whirl,
To learn bon ton, an’ see the worl’.
There, at Vienna, or Versailles,
He rives his father’s auld entails;
Or by Madrid he takes the rout,
To thrum guitars an’ fecht wi’ nowt;
Or down Italian vista startles,
Wh-re-hunting amang groves o’ myrtles:
Then bowses drumlie German-water,
To mak himsel look fair an’ fatter,
An’ clear the consequential sorrows,
Love-gifts of Carnival signoras.
For Britain’s guid! for her destruction!
Wi’ dissipation, feud, an’ faction.
Hech, man! dear sirs! is that the gate
They waste sae mony a braw estate!
Are we sae foughten an’ harass’d
For gear to gang that gate at last?
O would they stay aback frae courts,
An’ please themsels wi’ country sports,
It wad for ev’ry ane be better,
The laird, the tenant, an’ the cotter!
For thae frank, rantin, ramblin billies,
Feint haet o’ them’s ill-hearted fellows;
Except for breakin o’ their timmer,
Or speakin lightly o’ their limmer,
Or shootin of a hare or moor-cock,
The ne’er-a-bit they’re ill to poor folk,
But will ye tell me, Master Cæsar,
Sure great folk’s life’s a life o’ pleasure?
Nae cauld nor hunger e’er can steer them,
The very thought o’t need na fear them.
L—d, man, were ye but whiles whare I am,
The gentles, ye wad ne’er envy them!
It’s true, they need na starve or sweat,
Thro’ winter’s cauld, or simmer’s heat:
They’ve nae sair wark to craze their banes,
An’ fill auld age wi’ grips an’ granes:
But human bodies are sic fools,
For a’ their colleges an’ schools,
That when nae real ills perplex them,
They mak enow themsel’s to vex them;
An’ aye the less they hae to sturt them,
In like proportion, less will hurt them.
A country fellow at the pleugh,
His acre’s till’d, he’s right eneugh;
A country girl at her wheel,
Her dizzen’s dune, she’s unco weel;
But gentlemen, an’ ladies warst,
Wi’ ev’n-down want o’ wark are curst.
They loiter, lounging, lank an’ lazy;
Tho’ deil-haet ails them, yet uneasy;
Their days insipid, dull, an’ tasteless;
Their nights unquiet, lang, an’ restless.
An’ev’n their sports, their balls an’ races,
Their galloping through public places,
There’s sic parade, sic pomp, an’ art,
The joy can scarcely reach the heart.
The men cast out in party-matches,
Then sowther a’ in deep debauches.
Ae night they’re mad wi’ drink an’ whoring,
Niest day their life is past enduring.
The ladies arm-in-arm in clusters,
As great an’ gracious a’ as sisters;
But hear their absent thoughts o’ ither,
They’re a’ run-deils an’ jads thegither.
Whiles, owre the wee bit cup an’ platie,
They sip the scandal-potion pretty;
Or lee-lang nights, wi’ crabbit leuks
Pore owre the devil’s pictur’d beuks;
Stake on a chance a farmer’s stackyard,
An’ cheat like ony unhanged blackguard.
There’s some exceptions, man an’ woman;
But this is gentry’s life in common.
By this, the sun was out of sight,
An’ darker gloamin brought the night;
The bum-clock humm’d wi’ lazy drone;
The kye stood rowtin i’ the loan;
When up they gat an’ shook their lugs,
Rejoic’d they werena men but dogs;
An’ each took aff his several way,
Resolv’d to meet some ither day.