As an adjunct to daily 100mg Zoloft (Sertraline), I have been experimenting with once- or twice-daily insufflated 2C-E. Antidepressants mostly affect serotonin, so I figured this hallucinogen would be like a boost to the antidepressant I take, and fun too.
I am 34 years old and have extensive (albeit 10 to 15 years ago) experience with LSD and psilocybin, also all manner of pharmaceutical uppers, downers and all-arounders.
I tried around 8mg of this 2C-E once (about 6 weeks before I am writing this), and in my over-30-years-old-long-time-since-I-tripped state, it was tooooo much! I was glad when THAT was over. Decent open-eye visuals on oriental carpets, but I got sweaty and felt really hot and couldn't get to sleep.
I take the drug as an aqueous solution, at 1mg/ml concentration, sniffed in equal parts up each nostril, measured with an oral dosage syringe.
I have noticed that this substance provided me with quite a lift first thing in the morning (around 6am), and aided in preventing that after-lunch urge I almost always have to nap, especially when an additional dose is taken around 11am. Napping at work was counter-productive, but I could get away with it by closing the door to my office. I don't like to, because I always worry that the boss will find out I'm in there sleeping! Not to mention I don't get any work done while sleeping. So, small doses of 2C-E help with that.
Some very slight, and sometimes amusing psychedelic effects come from this manner of taking 2C-E. I noticed when riding public transportation to and from work that I feel that I can look at people and judge their mental states better than without being under the influence of 2C-E. Definitely still works some psychic magic at these small doses.
Casual 'water-cooler' conversation at work was enhanced, although sometimes too much. I find myself talking a little to loudly. I think this is from the slight 'adrenergic push' that the drug can have, as Shulgin writes in PIHKAL.
Physical exercise was interesting on these low doses of 2C-E, but sometimes it's a little harder to get motivated to do it (I work out in the morning); I'd rather just do something else. The after-effects of exercise are nicer on 2C-E.
All kinds of activities of daily living were possible at 1mg-2mg once or twice daily of 2C-E. Interactions at the grocery store were sometimes a little more interesting than without it - ordinary things take on a whimsical air. Sex, however, was unspectacular, in fact some degree of erectile dysfunction was encountered due to the adrenergic aspect of the drug (at least for me, I don't know about the sexual effects it has on females, or on other males, for that matter).
I think this substance is a good way to add a little 'kick.' I periodically have stopped for a couple days, to let the rapid tolerance dissapate, and have noticed better effects after this short 'holiday.'
As the reader may or may not know, this stuff can be totally mind-blowing at higher doses. BE CAREFUL if you intend on doing what I am writing about here. Walking into work with a head full of 2C-E (or any psychedelic, really) was NOT A GOOD IDEA. I could have end up losing my job or arrested or both.
This dosage of the substance has absolutely no effect on appetite for or taste of food, and no effect on sleep either (except of course I took it at bedtime).
Peace.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


I didn’t write this, i found the post a few days ago and i think it can be very helpful, so i make a copy here.
First 5 Minutes Troubleshooting A Server
Back when our team was dealing with operations, optimization and scalability at our previous company, we had our fair share of troubleshooting poorly performing applications and infrastructures of various sizes, often large (think CNN or the World Bank). Tight deadlines, “exotic” technical stacks and lack of information usually made for memorable experiences.
The cause of the issues was rarely obvious: here are a few things we usually got started with.
Get some context
Don’t rush on the servers just yet, you need to figure out how much is already known about the server and the specifics of the issues. You don’t want to waste your time (trouble) shooting in the dark.
A few “must have”:
- What exactly are the symptoms of the issue? Unresponsiveness? Errors?
- When did the problem start being noticed?
- Is it reproducible?
- Any pattern (e.g. happens every hour)?
- What were the latest changes on the platform (code, servers, stack)?
- Does it affect a specific user segment (logged in, logged out, geographically located…)?
- Is there any documentation for the architecture (physical and logical)?
- Is there a monitoring platform? Munin, Zabbix, Nagios, New Relic… Anything will do.
- Any (centralized) logs?. Loggly, Airbrake, Graylog…
The last two ones are the most convenient sources of information, but don’t expect too much: they’re also the ones usually painfully absent. Tough luck, make a note to get this corrected and move on.
Who’s there?
$ w
$ last
Not critical, but you’d rather not be troubleshooting a platform others are playing with. One cook in the kitchen is enough.
What was previously done?
$ history
Always a good thing to look at; combined with the knowledge of who was on the box earlier on. Be responsible by all means, being admin shouldn’t allow you to break ones privacy.
A quick mental note for later, you may want to update the environment variable HISTTIMEFORMAT
to keep track of the time those commands were ran. Nothing is more frustrating than investigating an outdated list of commands…
What is running?
$ pstree -a
$ ps aux
While ps aux
tends to be pretty verbose, pstree -a
gives you a nice condensed view of what is running and who called what.
Listening services
$ netstat -ntlp
$ netstat -nulp
$ netstat -nxlp
I tend to prefer running them separately, mainly because I don’t like looking at all the services at the same time. netstat -nalp
will do to though. Even then, I’d ommit the numeric
option (IPs are more readable IMHO).
Identify the running services and whether they’re expected to be running or not. Look for the various listening ports. You can always match the PID of the process with the output of ps aux
; this can be quite useful especially when you end up with 2 or 3 Java or Erlang processes running concurrently.
We usual prefer to have more or less specialized boxes, with a low number of services running on each one of them. If you see 3 dozens of listening ports you probably should make a mental note of investigating this further and see what can be cleaned up or reorganized.
CPU and RAM
$ free -m
$ uptime
$ top
$ htop
This should answer a few questions:
- Any free RAM? Is it swapping?
- Is there still some CPU left? How many CPU cores are available on the server? Is one of them overloaded?
- What is causing the most load on the box? What is the load average?
Hardware
$ lspci
$ dmidecode
$ ethtool
There are still a lot of bare-metal servers out there, this should help with;
- Identifying the RAID card (with BBU?), the CPU, the available memory slots. This may give you some hints on potential issues and/or performance improvements.
- Is your NIC properly set? Are you running in half-duplex? In 10MBps? Any TX/RX errors?
IO Performances
$ iostat -kx 2
$ vmstat 2 10
$ mpstat 2 10
$ dstat --top-io --top-bio
Very useful commands to analyze the overall performances of your backend;
- Checking the disk usage: has the box a filesystem/disk with 100% disk usage?
- Is the swap currently in use (si/so)?
- What is using the CPU: system? User? Stolen (VM)?
dstat
is my all-time favorite. What is using the IO?  Is it your PHP processes?
Mount points and filesystems
$ mount
$ cat /etc/fstab
$ vgs
$ pvs
$ lvs
$ df -h
$ lsof %2BD / /* beware not to kill your box */
- How many filesystems are mounted?
- Is there a dedicated filesystem for some of the services? (MySQL by any chance..?)
- What are the filesystem mount options: noatime? default? Have some filesystem been re-mounted as read-only?
- Do you have any disk space left?
- Is there any big (deleted) files that haven’t been flushed yet?
- Do you have room to extend a partition if disk space is an issue?
Kernel, interrupts and network usage
$ sysctl -a | grep ...
$ cat /proc/interrupts
$ cat /proc/net/ip_conntrack /* may take some time on busy servers */
$ netstat
$ ss -s
- Are your IRQ properly balanced across the CPU? Or is one of the core overloaded because of network interrupts, raid card, …?
- How much is swappinness set to? 60 is good enough for workstations, but when it come to servers this is generally a bad idea: you do not want your server to swap… ever. Otherwise your swapping process will be locked while data is read/written to the disk.
- Is
conntrack_max
set to a high enough number to handle your traffic?
- How long do you maintain TCP connections in the various states (
TIME_WAIT
, …)?
netstat
can be a bit slow to display all the existing connections, you may want to use ss
instead to get a summary.
Have a look at Linux TCP tuning for some more pointer as to how to tune your network stack.
System logs and kernel messages
$ dmesg
$ less /var/log/messages
$ less /var/log/secure
$ less /var/log/auth
- Look for any error or warning messages; is it spitting issues about the number of connections in your conntrack being too high?
- Do you see any hardware error, or filesystem error?
- Can you correlate the time from those events with the information provided beforehand?
Cronjobs
$ ls /etc/cron* %2B cat
$ for user in $(cat /etc/passwd | cut -f1 -d:); do crontab -l -u $user; done
- Is there any cron job that is running too often?
- Is there some user’s cron that is “hidden” to the common eyes?
- Was there a backup of some sort running at the time of the issue?
Application logs
There is a lot to analyze here, but it’s unlikely you’ll have time to be exhaustive at first. Focus on the obvious ones, for example in the case of a LAMP stack:
- Apache & Nginx; chase down access and error logs, look for
5xx
errors, look for possible limit_zone
errors.
- MySQL; look for errors in the
mysql.log
, trace of corrupted tables, innodb repair process in progress. Looks for slow logs and define if there is disk/index/query issues.
- PHP-FPM; if you have php-slow logs on, dig in and try to find errors (php, mysql, memcache, …). If not, set it on.
- Varnish; in
varnishlog
and varnishstat
, check your hit/miss ratio.
- HA-Proxy; what is your backend status? Are your health-checks successful? Do you hit your max queue size on the frontend or your backends?
Conclusion
After these first 5 minutes (give or take 10 minutes) you should have a better understanding of:
- What is running.
- Whether the issue seems to be related to IO/hardware/networking or configuration (bad code, kernel tuning, …).
- Whether there’s a pattern you recognize: for example a bad use of the DB indexes, or too many apache workers.
You may even have found the actual root cause. If not, you should be in a good place to start digging further, with the knowledge that you’ve covered the obvious.


Paragraph Bio about Sarah.
Ph.D., Kinesiology, Exercise, Nutrition, and Health Promotion, 2016
Baylor University
M.S.Ed., Exercise Physiology, 2013
Baylor University
B.S., Kinesiology, 2010
University of Texas at El Paso
Responsibilities include:
Taught graduate and undergraduate courses in the Health, Kinesiology, and Sport Department
Advised students on courses, careers in the field, and graduate school
Conducted research on various topics related to Exercise Science
Served on various committees in the department and in the College of Education
Received grants/funding for research projects
Responsibilities include:
Responsibilities include:
Responsibilities include:
Responsibilities include:


The yellow region shows the affected area.
[Note: If the result is negative then heatmap is not displayed.]


POSIX_FADVISE
Section: Linux Programmer's Manual (2)Updated: 2003-02-14
Index Return to Main Contents
NAME
posix_fadvise - predeclare an access pattern for file dataSYNOPSIS
#define _XOPEN_SOURCE 600 #include <fcntl.h> int posix_fadvise(int fd, off_t offset, off_t len, int advice);
DESCRIPTION
Programs can use posix_fadvise() to announce an intention to access file data in a specific pattern in the future, thus allowing the kernel to perform appropriate optimizations.The advice applies to a (not necessarily existent) region starting at offset and extending for len bytes (or until the end of the file if len is 0) within the file referred to by fd. The advice is not binding; it merely constitutes an expectation on behalf of the application.
Permissible values for advice include:
- POSIX_FADV_NORMAL
- Indicates that the application has no advice to give about its access pattern for the specified data. If no advice is given for an open file, this is the default assumption.
- POSIX_FADV_SEQUENTIAL
- The application expects to access the specified data sequentially (with lower offsets read before higher ones).
- POSIX_FADV_RANDOM
- The specified data will be accessed in random order.
- POSIX_FADV_NOREUSE
- The specified data will be accessed only once.
- POSIX_FADV_WILLNEED
- The specified data will be accessed in the near future.
- POSIX_FADV_DONTNEED
- The specified data will not be accessed in the near future.
RETURN VALUE
On success, zero is returned. On error, an error number is returned.ERRORS
- EBADF
- The fd argument was not a valid file descriptor.
- EINVAL
- An invalid value was specified for advice.
- ESPIPE
- The specified file descriptor refers to a pipe or FIFO. (Linux actually returns EINVAL in this case.)
VERSIONS
posix_fadvise() appeared in kernel 2.5.60. Glibc support has been provided since version 2.2.CONFORMING TO
POSIX.1-2001. Note that the type of the len argument was changed from size_t to off_t in POSIX.1-2003 TC1.NOTES
Under Linux, POSIX_FADV_NORMAL sets the readahead window to the default size for the backing device; POSIX_FADV_SEQUENTIAL doubles this size, and POSIX_FADV_RANDOM disables file readahead entirely. These changes affect the entire file, not just the specified region (but other open file handles to the same file are unaffected).POSIX_FADV_WILLNEED initiates a non-blocking read of the specified region into the page cache. The amount of data read may be decreased by the kernel depending on virtual memory load. (A few megabytes will usually be fully satisfied, and more is rarely useful.)
In kernels before 2.6.18, POSIX_FADV_NOREUSE had the same semantics as POSIX_FADV_WILLNEED. This was probably a bug; since kernel 2.6.18, this flag is a no-op.
POSIX_FADV_DONTNEED attempts to free cached pages associated with the specified region. This is useful, for example, while streaming large files. A program may periodically request the kernel to free cached data that has already been used, so that more useful cached pages are not discarded instead.
Pages that have not yet been written out will be unaffected, so if the application wishes to guarantee that pages will be released, it should call fsync(2) or fdatasync(2) first.
BUGS
In kernels before 2.6.6, if len was specified as 0, then this was interpreted literally as "zero bytes", rather than as meaning "all bytes through to the end of the file".SEE ALSO
readahead(2), posix_fallocate(3), posix_madvise(3), 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:04 GMT, December 24, 2015


These functions give the user more control over auth than what is
possible with sheets_auth()
. Learn more in Google's documentation:
Credentials, access, security, and identity
and Using OAuth 2.0 for Installed Applications.
sheets_auth_config()
gives control of:
The OAuth app. If you want to use your own app, setup a new project
in Google Developers Console.
Follow the instructions in OAuth 2.0 for Mobile & Desktop Apps
to obtain your own client ID and secret. Either make an app from
your client ID and secret via httr::oauth_app()
or provide a path
to the JSON file containing same, which you can download from
Google Developers Console.
The API key. If googlesheets4 is deauthorized via
sheets_deauth()
, all requests will be sent with an API key in
lieu of a token. If you want to provide your own API key, setup a
project as described above and follow the instructions in
Setting up API keys.
sheets_api_key()
and sheets_oauth_app()
retrieve the
currently configured API key and OAuth app, respectively.
sheets_auth_config(app = NULL, path = NULL, api_key = NULL) sheets_api_key() sheets_oauth_app()
| app | OAuth app. Defaults to a tidyverse app. |
|---|---|
| path | Path to the JSON file. |
| api_key | API key. Defaults to a tidyverse key. Necessary in order to make unauthorized "token-free" requests for public resources. |
sheets_auth_config()
: An object of R6 class AuthState
,
which is defined in the gargle package. sheets_api_key()
: the
current API key. sheets_oauth_app()
: the current
httr::oauth_app()
.
Other auth functions: sheets_auth
,
sheets_deauth
## this will print current config sheets_auth_config()#> <AuthState (via gargle)> #> <package> googlesheets4 #> <app> #> <api_key> #> <auth_active> FALSE #> <credentials> NULL #> ---if (require(httr)) { ## bring your own app via client id (aka key) and secret google_app <- httr::oauth_app( "my-awesome-google-api-wrapping-package", key = "123456789.apps.googleusercontent.com", secret = "abcdefghijklmnopqrstuvwxyz" ) sheets_auth_config(app = google_app) }#>#> <AuthState (via gargle)> #> <package> googlesheets4 #> <app> my-awesome-google-api-wrapping-package #> <api_key> #> <auth_active> FALSE #> <credentials> NULL #> ---# NOT RUN { ## bring your own app via JSON downloaded from Google Developers Console sheets_auth_config( path = "/path/to/the/JSON/you/downloaded/from/google/dev/console.json" ) sheets_auth_config(api_key = "123") sheets_api_key() # }


vmmouse_detect(1) vmmouse_detect(1) NAME vmmouse_detect - VMware mouse device autodetection tool SYNOPSIS vmmouse_detect OPTIONS vmmouse_detect has no options DESCRIPTION vmmouse_detect is a tool for detecting if running in a VMware environment where vmmouse is used. It exits with a 0 return value if the vmmouse client is enabled, and 1 if not. DIAGNOSTICS vmmouse_detect's exit status is used to communicate information. 0 vmmouse_detect found a mouse and exited normally. 1 Either the vmmouse client was not enabled, or it is not being run from within a VMware virtual machine. BUGS Please report bugs in vmmouse_detect <https://bugs.launch‐ pad.net/ubuntu/+source/mdetect/vmmouse_detect>. AUTHORS vmmouse_detect is copyright 2007 VMware, Inc. LICENSING The vmmouse_detect source code is licensed under a BSD-like license. See COPYING for details. This manual page is licensed under the GNU General Public License. SEE ALSO mdetect(1), XFree86(1) X Version 11 xf86-input-vmmouse 12.9.0 vmmouse_detect(1)


Start
Workflow
Click the watering can to make the flower grow! When you are done, hit the reset button and start again!
Reset!
Water me! I am thirsty!
Click me!
End!
Return to Start
Thanks for playing!
Return to start


Defines required branch of spanning-tree
Connections.branch(A.R,B.R);
Defines a branch from the overdetermined type or record instance
R
in connector instance A
to the
corresponding overdetermined type or record instance R
in connector instance B
for a virtual connection
graph. These branches are required to be part of the spanning-tree
for the virtual connection graph (they do not directly generate
equations, but should be combined with equations coupling
A.R
to B.R
), whereas connect-statements
are optional for the spanning-tree (and generate different
equations depending on whether they are part of the spanning-tree
or not).
This function can be used at all places where a connect(...) statement is allowed.
E.g., it is not allowed to use this function in a when-clause.
This definition shall be used if in a model with connectors
A
and B
the overdetermined records
A.R
and B.R
are algebraically coupled in
the model, e.g., due to B.R = f(A.R, <other
unknowns>)
.


--- layout: default namespace: smart-contracts-explained permalink: /tools/smart-contracts-explained/ ---


Detected Text from the image {% for item in text %} {{item}} {% endfor %}
Open source project made with ♥.


Make your best outfit today!
Our mission at Xclusive Shopping is to help you find the pefect outfit for the perfect event. All you need to do is create an account and put in your event and time of day. When doing this the database will load up the perfect outfit idea for you to wear, so you and your friends will have a great time at any event!
This website also comes with many "XCLUSIVE" deals for you and your family to enjoy, along with a blogging page for you to blog about your outift experience with Xclusive shopping! Here at Xclusive's, we make sure that everyone is taken care of and each person can go to any event feeling happy and confident in what they wear!


How often do you use cannabis?
How have you used cannabis? Check all that apply.
What do you use your vaporizer for?
Which strains have you used?
How much marijuana do you currently use per day, in grams?
Have you had any serious reactions to cannabis?


Reports: Iran downs ‘unknown’ drone over Persian Gulf port
by The Associated PressTEHRAN, Iran (AP) — Iranian media are reporting that Iran’s air defense force has shot down an “unknown” drone in the country’s southwest.
The state-run IRNA news agency said Friday that air defense forces hit the drone earlier in the morning at the port city of Mahshahr, which is in the oil-rich Khuzestan province and lies on the Persian Gulf.
The report did not say whether the drone was a military or commercially available device.
It said Iranian defense forces are searching the area for parts of the downed drone.
In June, Iran shot down a U.S. surveillance drone in the Strait of Hormuz. Tehran said the drone “violated” its territorial airspace, while the U.S. called the missile fire “an unprovoked attack” in international airspace over the narrow mouth of the Persian Gulf.
The Associated Press


Class Image_Graph_Plot_Odo
2D Odochart.
- Image_Graph_Common
- Image_Graph_Element
- Image_Graph_Plotarea_Element
- Image_Graph_Plot
- Image_Graph_Plot_Odo
Category: Images
Copyright: Copyright (C) 2005 Maxime Delorme
License: LGPL License 2.1
Author: Maxime Delorme<EMAIL_ADDRESS>Version: Release: @package_version@
Link: http://pear.php.net/package/Image_Graph
Located at app/vendors/Image/Graph/Plot/Odo.php
public
|
|
public
|
|
public
integer
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
#
setArrowSize( integer $length, integer $width )
set the width and length of the arrow (in percent of the total plot "radius") |
public
|
|
public
boolean
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
array
|
#
_getMarkerData( array $point, array $nextPoint, array $prevPoint, array & $totals )
Calculate marker point data |
public
|
|
public
|
|
public
&
|
#
setRangeMarkerFillStyle(
Set the fillstyle of the ranges |
public
|
|
public
|
#
_drawLegendSample( integer $x0, integer $y0, integer $x1, integer $y1 )
Perform the actual drawing on the legend. |
public
|
Image_Graph_Plot(),
_getTotals(),
_maximumX(),
_maximumY(),
_mergeData(),
_minimumX(),
_minimumY(),
_pointX(),
_pointY(),
_setAxisY(),
_updateCoords(),
dataset(),
setDataSelector(),
setMarker(),
setTitle()
|
_pointXY()
|
Image_Graph_Common(),
_error(),
_getCanvas(),
_reset(),
_setParent(),
add(),
addNew(),
hide()
|
public
integer
|
$_radiusPercent | 50 |
#
the percent of the radius of the chart that will be use as the width of the range |
public
integer
|
$_value_min | 0 |
#
the minimun value of the chart or the start value |
public
integer
|
$_value_max | 100 |
#
the maximum value of the chart or the end value |
public
integer
|
$_deg_offset | 135 |
#
the start angle |
public
integer
|
$_deg_width | 270 |
#
the angle of the chart , the length of the chart 180 min a half circle |
public
integer
|
$_tickLength | 14 |
#
the length of the big ticks the small ones will be half ot it, the values 160% of it 180 min a half circle |
public
integer
|
$_axisTicks | 5 |
#
how many small ticks a big tick appears the small ticks appear every 6� so with the default value of 5, every 30� there is a value and a big tick 180 min a half circle |
public
|
$_arrowMarker |
|
#
Arrow marker |
public
|
$_rangeFillStyle | null |
#
Range marker fill style |
public
integer
|
$_arrowWidth | 5 |
#
The width of the arrow |
public
integer
|
$_arrowLength | 80 |
#
The length of the arrow |
public
integer
|
$_radius | false |
#
The radius of the plot |
public
integer
|
$_totalY | false |
#
The total Y |
public
integer
|
$_centerX | false |
#
Center X of odometer "circle" |
public
integer
|
$_centerY | false |
#
Center y of odometer "circle" |
$_axisY,
$_dataSelector,
$_dataset,
$_marker,
$_multiType,
$_title
|
$_background,
$_borderStyle,
$_bottom,
$_defaultFontOptions,
$_fillStyle,
$_font,
$_fontOptions,
$_left,
$_lineStyle,
$_padding,
$_right,
$_shadow,
$_top
|
$_canvas,
$_elements,
$_parent,
$_visible
|


File modes should be represented either as valid:
u=rw,g=r
file { '/var/log/syslog': ensure => present, mode => 644, # Should be set to '0644' instead } file { '/var/log/syslog': ensure => present, mode => '644', # Should be set to '0644' instead } file { '/var/log/syslog': ensure => present, mode => "0644", # Double quotes should be replaced by single quotes } file { '/var/log/syslog': ensure => present, mode => '0999', # Invalid file mode value, should be updated to a valid value } file { '/var/log/syslog': ensure => present, mode => 'blabla', # Invalid file mode value, should be updated to a valid value }
file { '/var/log/syslog': ensure => present, mode => 'o-rwx', } file { '/var/log/syslog': ensure => present, mode => '0644', }


THE ART OF WOO A film review by Mark R. Leeper
CAPSULE: This is an attempt at writing a modern fairy tale. Alyssa Wong is a successful art expert who has to decide if she wants to marry for money or for love. The story calls for a woman with Audrey Hepburn charm and Sook-Yin Lee does not fill the bill. The film is contrived and dissatisfying. Rating: 3 (0 to 10), -1 (-4 to +4)
THE ART OF WOO attempts to be one of those films like BREAKFAST AT TIFFANY'S in which the audience is rooting for some sweet, vulnerable, irresistible woman to work out her problems and to find happiness. The problem is that Helen Lee who writes and directs seems to have written Alessa Woo (played by Sook-Yin Lee) as neither sweet nor vulnerable and she is quite resistible.
Alessa is a young woman who happens to be a brilliant art dealer in the Toronto art scene. This is some sort of alternate world art scene where people pay tens of thousands of dollars for paintings by talented beginners and dealers in these paintings fly back and forth to places like Switzerland. One of the most knowledgeable of the art dealers is Alessa. She also happens to be the center of adulation of her friends and every party has suitors camped outside her window.
Next door to Alessa moves struggling genius artist and Native American Ben Crowchild (Adam Beach). He sees that behind the facade that there is really a sad little girl within Alessa who really will not be happy with the rich art collector she is dating. Ben gets emotionally involved with Alessa.  But Alessa will have to decide whether she wants love with Ben or wealth with her rich suitor.
The real problem with the film seems to be Helen Lee's inability to decide what she wants to be saying. She undercuts nearly everything she wants us to believe about Alessa. Alessa is looking for financial security but she makes decisions about large sums of money for her clients. This appears to be a high profile and well-paid job. We are supposed to care about Alessa's feelings, but she coldly refuses to visit her own ailing father. Alessa cannot be portrayed as sweet and vulnerable if at an art auction she turns into OUR MAN FLINT.
This is a charmless romantic comedy that bets everything it has on the appeal of its main character and comes up double-zero. I rate it a 3 on the 0 to 10 scale and a -1 on the -4 to +4 scale.
Mark R. Leeper<EMAIL_ADDRESS>Copyright 2001 Mark R. Leeper
========== X-RAMR-ID: 29629 X-Language: en X-RT-AuthorID: 1309 X-RT-RatingText: 3/10
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


All
Odd
Even
One
Two
Three
Four
Five
Six
Seven
Eight
Nine
Ten
All
Red
Green
Blue
Red & Blue
Search Animal:
Lion
Tiger
Dog
Cat
Elephant
Bull
Camel
Otter
Shark
Rat


Our Team
CZU Campus & Natural View
Get In Touch
Need informaton or help,
Write us we will get back to you soon.
Send


manipulation, validation and exploration of pedigrees¶
peddy compares familial-relationships and sexes as reported in a PED file with those inferred from a VCF.
It samples the VCF at about 25000 sites (plus chrX) to accurately estimate relatedness, IBS0, heterozygosity, sex and ancestry. It uses 2504 thousand genome samples as backgrounds to calibrate the relatedness calculation and to make ancestry predictions.
It does this very quickly by sampling, by using C for computationally intensive parts, and by parallelization.
The command-line usage looks like:
python -m peddy -p 4 --plot ceph1463.vcf.gz ceph1463.ped
This will use 4 cpus to run various checks and create ceph1463.html which you can open in any browser to interactively explore your data. Unless you have triple digit numbers of samples, using more than 4 cpus will give only marginal improvement.
It will also create create 4 csv files and 4 static QC plots that mirror those in the interactive html. These will indicate:
- discrepancies between ped-reported and genotype-inferred relations
- discrepancies between ped-reported and genotype-inferred sex
- samples with higher levels of HET calls, lower depth, or more variance in b-allele-frequency (alt / (ref + alt )) for het calls.
- an ancestry prediction based on projection onto the thousand genomes principal components
Finally, it will create a new file ped file ceph1463.peddy.ped that also lists the most useful columns from the het-check and sex-check. Users can first look at this extended ped file for an overview of likely problems.
The columns in the CSV output are documented in Error Resolution
Static Images¶
This will create a number of images:
Sex Check¶
A sex-check assumes that males should have very few heterozygote calls on the X- chromosome and females should have relatively many. Here, we see, as expected that there are no sex issues in the CEPH cohort:
If there are samples with unspecified sex in the ped file, they will appear in the center of the plot as ‘unknown’.
Het Check¶
The het check looks for samples with higher rates of het calls, usually, this can indicate sample contamination. This plot also shows depth along the X-axis as a way to quickly check for samples with lower coverage.
Ancestry Check¶
Since we know the ancestry of the thousand genomes samples we can project the current peddy input (in this case CEPH) onto the principal components of the thousand genomes samples and then predict the ancestry of incoming samples:
Note that, as expected all of the members of the CEPH pedigree are of ‘EUR’opean descent.
CSVs¶
For each of those images, there is a corresponding .csv file. See output for a description of the columns.


/* This function assumes xTimer has already been created. */ void vAFunction( TimerHandle_t xTimer ) { /* or more simply and equivalently "if( xTimerIsTimerActive( xTimer ) )" */ if( xTimerIsTimerActive( xTimer ) != pdFALSE ) { /* xTimer is active, do something. */ } else { /* xTimer is not active, do something else. */ } }
[
Back to the top ] [ About FreeRTOS
] [ Sitemap
] [
Report an error on this page (with anti-spam) ]
Copyright (C) 2004-2010 Richard Barry. Copyright
(C) 2010-2016 Real Time Engineers Ltd.
Any and all data, files, source code, html content and documentation included in the FreeRTOSTM distribution or available on this site are the exclusive property of Real Time Engineers Ltd.. See the files license.txt (included in the distribution) and this copyright notice for more information. FreeRTOSTM and FreeRTOS.orgTM are trade marks of Real Time Engineers Ltd. |


HeilbaumPhotoswipeController
must be injected to component in constructor and is used to create a
HeilbaumPhotoswipe instance.
Extends ionic's ViewController and thus provides all of it's
methods.
Create new HeilbaumPhotoswipe
instance and set some options:
{{ code.heilbaumPhotoswipeController.example }}
Creates a new PhotoSwipe instance by passing an array of PhotoswipeItems and
optional PhotoswipeOptions.
This method returns an instance of HeilbaumPhotoswipe
PhotoswipeOptions
is an object of PhotoSwipe options documented on
photoswipe.com
.
Example:
{{ code?.photoswipeOptions?.example }}
PhotoswipeItem
declares an object type with all properties possible in PhotoSwipe.
Please consider: If src
is set, w
and h
is required
{{ code?.photoswipeItem?.type}}
Coming within version 0.2.0


See the
ReadMe.md
View the test for django
*
View the test for php
**
View the php chooser interface
**
* this links to localhost:8000; you may need to adjust it
** this links to localhost (port 80); you may need to adjust it


[Test Title]
Home
Link 1
Link 2
Link 3
Link 4
Heading 1
Heading 2
Heading 3
Heading 4
Heading 5
Heading 6
UNORDERED LIST
One
Two
Three
Four
ORDERED LIST
One
Two
Three
Four
DD
DL
DT
Figure
fig-caption
DIV
Article
HGroup
small
A link
paragraph ...
paragraph ...
paragraph ...
italixcs
paragraph ...
small
Adress
aksjdhfkjsdhfkjsdhk
span
Input:
Lable


University of Wisconsin - Madison
Research Participant Information and Consent Form
Study Title: Assessing Vulnerability to Social Security Scams
Investigator: Clifford A Robb (Phone:<PHONE_NUMBER>) (Email<EMAIL_ADDRESS>Description of the research
You are invited to participate in a research study about identifying Social Security scams. You have been asked to participate because you are an American adult over the age of 18. The purpose of the research is to see whether participants can correctly identify messaging from the Social Security Administration and also correctly identify fake messages claiming to be from the Social Security Administration or other government entity. This study will include roughly 2,000 American adults over the age of 18. This research will be conducted via online surveys and emails to participants.
What will my participation involve?
If you decide to participate in this research, you will be asked to distinguish between fake and real messaging directly after a brief training related to internet scams. Each participant will flag messages as fake or real, and will receive a score based on accuracy.
Your participation will last between 5 and 15 minutes.
Are there any risks to me?
Participants may be upset by aspects of the research, particularly if they have been subject to online fraud in the past. The study design necessarily involves a degree of deception, however, the deception is only at the level of the email and no sensitive information will be collected by the researchers and individuals will be immediately notified if they incorrectly believe a fraudulent email to be real. There is also a risk of a confidentiality breach.
Are there any benefits to me?
There are no direct benefits. However, the specific training around the nature of social security scams is in and of itself valuable information and is designed to provide protection against real scams that participants might encounter.
Will I be compensated for my participation?
If you participate in this study, you will receive your usual compensation from Prolific. If you do not complete this study, you will receive no consideration.
How will my confidentiality be protected?
This study is confidential. Neither your name or any other identifiable information will be published.
Only the study team will have access to the complete data from this study. To protect the anonymity of participants, not personal identifying information will be retained in the data. Data will also be stored on a secure server and be password protected.
Whom should I contact if I have questions?
You may ask any questions about the research at any time. If you have questions about the research after you leave today you should contact the Principal Investigator Clifford A Robb at<PHONE_NUMBER>. If you are not satisfied with response of research team, have more questions, or want to talk with someone about your rights as a research participant, you should contact the Education and Social/Behavioral Science IRB Office at<PHONE_NUMBER>.
If you decide not to participate or to withdraw from the study, you may do so without penalty.


| 11/2018 - Present | Applied Artificial Intelligence Institute, Deakin University, Australia |
| PhD candidate in Computer Science | |
| Supervisors: A/Prof. Truyen Tran, Prof. Svetha Venkatesh. I am also working closely with Dr. Vuong Le. | |
| 9/2016 - 9/2018 | Tokyo Institute of Technology, Tokyo, Japan |
| Master of Engineering (Computer Science) | |
| Thesis: F2CSkeleton: A Tailor-Made Approach for 3D Human Action Recognition | |
| Supervisor: Prof. Koichi Shinoda. I also worked closely with Dr. Nakamasa Inoue. | |
| 8/2009 - 6/2014 | Hanoi University of Science and Technology (HUST), Hanoi, Vietnam |
| Bachelor of Science (Electronics and Communication Engineering), Ranked 10th/526 in the department | |
| Thesis: Automatic Face Recognition Using Local Images for Mobile Platforms | |
| Supervisor: A/Prof. Duc Minh Nguyen |
| 11/2018 - 5/2021 | Deakin University Postgraduate Research Scholarship |
| 9/2016 - 9/2018 | Japanese Government (MEXT) Scholarship Recipient |
| 6/2014 | Certificate of Merit for Excellent Undergraduate Students by HUST |
| 8/2013 - 6/2014 | Samsung Talented Program Scholarship 2013 |
| 07/2012 | Final Round, SmartPhone Apps Challenge |
| SmartPhone Apps Challenge jointly organized by HUST, Vietnam and CyberAgent, Japan |
| 5/2021 - Present | Associate Research Fellow |
| Applied Artificial Intelligence Institute, Deakin University, Australia | |
| 5/2019 - 10/2020 | Research Assistant |
| Applied Artificial Intelligence Institute, Deakin University, Australia | |
| 8/2017 - 4/2018 | Research Intern |
| Yahoo! JAPAN Research, Yahoo Japan Corporation | |
| I worked with Dr. Nobuyuki Shimizu on Deep Learning for Addressee Recognition. | |
| 5/2017 - 9/2018 | Research Assistant |
| Shinoda Lab, Tokyo Institute of Technology, Tokyo, Japan | |
| 6/2014 - 8/2016 | Software Engineer |
| Samsung Vietnam Mobile R&D Centre (SVMC), Samsung Electronics Vietnam | |
| 1/2014 - 6/2014 | Intern |
| Samsung Vietnam Mobile R&D Centre (SVMC), Samsung Electronics Vietnam | |
| 11/2011 - 1/2014 | Research Assistant |
| Integrated Circuits and System Laboratory, HUST, Vietnam |
| 2021 - 12/2021 | Invited reviewer: ICLR 2022, NeurIPS 2021, WACV 2021, the IEEE Transactions on Multimedia. |
| 2020 - 12/2020 | Invited reviewer: ICLR 2021; Sub-reviewer ICML 2020, ECCV 2020, NeurIPS 2020 |
| 2019 | Invited reviewer: ICLR 2020; Sub-reviewer ICML 2019, IJCAI 2019, NeurIPS 2019, AAAI 2020 |


|
|||||||||||
| PREV NEXT | FRAMES NO FRAMES |
| Packages that use org.apache.commons.scxml | |
| org.apache.commons.scxml | The Commons SCXML executor and core concepts. |
| org.apache.commons.scxml.env | A collection of classes that may be commonly used to bridge the SCXML executor to the runtime environment. |
| org.apache.commons.scxml.env.faces | A collection of classes bridging the SCXML executor to the JSF-based environments. |
| org.apache.commons.scxml.env.jexl | A collection of classes that allow JEXL to be used in expressions within SCXML documents. |
| org.apache.commons.scxml.env.jsp | A collection of classes bridging the SCXML executor to the JSP environment. |
| org.apache.commons.scxml.env.servlet | A collection of classes useful in the servlet container environment. |
| org.apache.commons.scxml.invoke | A collection of classes related to the SCXML <invoke> element and its children, dealing with the invocation of activities associated with a particular state in the state machine. |
| org.apache.commons.scxml.io | A collection of classes for reading in and writing out SCXML documents, to and from the Commons SCXML Java object model. |
| org.apache.commons.scxml.model | A collection of classes needed to model SCXML documents. |
| org.apache.commons.scxml.semantics | A collection of classes responsible for implementations of the
org.apache.commons.scxml.SCXMLSemantics interface. |
| org.apache.commons.scxml.test | A collection of classes useful for command line testing. |
| Classes in org.apache.commons.scxml used by org.apache.commons.scxml | |
| Context
A Context or "scope" for storing variables; usually tied to a SCXML root or State object. |
|
| ErrorReporter
An interface for reporting SCXML errors to the host environment, containing the definition of commonly occuring errors while executing SCXML documents. |
|
| Evaluator
Interface for a component that may be used by the SCXML engines to evaluate the expressions within the SCXML document. |
|
| EventDispatcher
The event controller interface used to send messages containing events or other information directly to another SCXML Interpreter, other external systems using an Event I/O Processor or to raise events in the current SCXML session. |
|
| NotificationRegistry
The registry where SCXML listeners are recorded for nodes of interest such as the SCXML root,
TransitionTarget s and Transition s. |
|
| PathResolver
Interface for a component that may be used by the SCXML engines to resolve context sensitive paths. |
|
| SCInstance
The SCInstance performs book-keeping functions for
a particular execution of a state chart represented by a
SCXML object. |
|
| SCXMLExecutor
The SCXML "engine" that executes SCXML documents. |
|
| SCXMLExpressionException
Exception thrown when a malformed expression is encountered during evaluation of an expression in a SCXML document. |
|
| SCXMLListener
Listener interface for observable entities in the SCXML model. |
|
| SCXMLSemantics
The purpose of this interface is to separate the interpretation algorithm from the SCXMLExecutor and therefore make it pluggable. |
|
| Status
The encapsulation of the current state of a state machine. |
|
| Step
A logical unit of progression in the execution of a SCXML model. |
|
| TriggerEvent
A class representing an event. |
| Classes in org.apache.commons.scxml used by org.apache.commons.scxml.env | |
| Context
A Context or "scope" for storing variables; usually tied to a SCXML root or State object. |
|
| ErrorReporter
An interface for reporting SCXML errors to the host environment, containing the definition of commonly occuring errors while executing SCXML documents. |
|
| Evaluator
Interface for a component that may be used by the SCXML engines to evaluate the expressions within the SCXML document. |
|
| EventDispatcher
The event controller interface used to send messages containing events or other information directly to another SCXML Interpreter, other external systems using an Event I/O Processor or to raise events in the current SCXML session. |
|
| PathResolver
Interface for a component that may be used by the SCXML engines to resolve context sensitive paths. |
|
| SCXMLExecutor
The SCXML "engine" that executes SCXML documents. |
|
| SCXMLListener
Listener interface for observable entities in the SCXML model. |
| Classes in org.apache.commons.scxml used by org.apache.commons.scxml.env.faces | |
| Context
A Context or "scope" for storing variables; usually tied to a SCXML root or State object. |
| Classes in org.apache.commons.scxml used by org.apache.commons.scxml.env.jexl | |
| Context
A Context or "scope" for storing variables; usually tied to a SCXML root or State object. |
|
| Evaluator
Interface for a component that may be used by the SCXML engines to evaluate the expressions within the SCXML document. |
|
| SCXMLExpressionException
Exception thrown when a malformed expression is encountered during evaluation of an expression in a SCXML document. |
| Classes in org.apache.commons.scxml used by org.apache.commons.scxml.env.jsp | |
| Context
A Context or "scope" for storing variables; usually tied to a SCXML root or State object. |
|
| Evaluator
Interface for a component that may be used by the SCXML engines to evaluate the expressions within the SCXML document. |
|
| SCXMLExpressionException
Exception thrown when a malformed expression is encountered during evaluation of an expression in a SCXML document. |
| Classes in org.apache.commons.scxml used by org.apache.commons.scxml.env.servlet | |
| PathResolver
Interface for a component that may be used by the SCXML engines to resolve context sensitive paths. |
| Classes in org.apache.commons.scxml used by org.apache.commons.scxml.invoke | |
| SCInstance
The SCInstance performs book-keeping functions for
a particular execution of a state chart represented by a
SCXML object. |
|
| TriggerEvent
A class representing an event. |
| Classes in org.apache.commons.scxml used by org.apache.commons.scxml.io | |
| PathResolver
Interface for a component that may be used by the SCXML engines to resolve context sensitive paths. |
| Classes in org.apache.commons.scxml used by org.apache.commons.scxml.model | |
| ErrorReporter
An interface for reporting SCXML errors to the host environment, containing the definition of commonly occuring errors while executing SCXML documents. |
|
| EventDispatcher
The event controller interface used to send messages containing events or other information directly to another SCXML Interpreter, other external systems using an Event I/O Processor or to raise events in the current SCXML session. |
|
| PathResolver
Interface for a component that may be used by the SCXML engines to resolve context sensitive paths. |
|
| SCInstance
The SCInstance performs book-keeping functions for
a particular execution of a state chart represented by a
SCXML object. |
|
| SCXMLExpressionException
Exception thrown when a malformed expression is encountered during evaluation of an expression in a SCXML document. |
| Classes in org.apache.commons.scxml used by org.apache.commons.scxml.semantics | |
| ErrorReporter
An interface for reporting SCXML errors to the host environment, containing the definition of commonly occuring errors while executing SCXML documents. |
|
| EventDispatcher
The event controller interface used to send messages containing events or other information directly to another SCXML Interpreter, other external systems using an Event I/O Processor or to raise events in the current SCXML session. |
|
| SCInstance
The SCInstance performs book-keeping functions for
a particular execution of a state chart represented by a
SCXML object. |
|
| SCXMLSemantics
The purpose of this interface is to separate the interpretation algorithm from the SCXMLExecutor and therefore make it pluggable. |
|
| Step
A logical unit of progression in the execution of a SCXML model. |
|
| TriggerEvent
A class representing an event. |
| Classes in org.apache.commons.scxml used by org.apache.commons.scxml.test | |
| Evaluator
Interface for a component that may be used by the SCXML engines to evaluate the expressions within the SCXML document. |
|
|||||||||||
| PREV NEXT | FRAMES NO FRAMES |


Our 8-month program is divided into 14 modules. After the program, students join a 4-week intensive bootcamp to work on a real project with a real partner. Our training takes place at BeCentral (Brussels) every Sunday. During the week, students are supported online in their self-study, homework and peer learning.
We graduated over 80 people in Belgium and more than 200 globally. In Belgium, over 70% found and retained a high-quality job as a developer.
Students graduated since HackYourFuture Belgium was founded in 2018
Of our graduates find an internship, a job or start university.
Alumni in the Netherlands, Denmark, Belgium and Canada.
We’re largely dependent on volunteers. That’s what makes us an engaged grassroots community, as our students call it ‘the HYF family’.
Our program is adapted to suit people with different backgrounds, often in vulnerable situations. We teach on Sundays to allow everyone to take control of their personal lives during the week.
Our program is free of charge, although we ask for strong commitment during our 7 month-journey. And you know what? Many alumni stay actively involved!
Sharing is caring. Our curriculum is 100% open. We believe in knowledge for the many, not the few.
Help refugees build digital & soft skills for a career in web development.  Thanks to your support we can improve and keep our program free of charge for students.
We’re always happy to welcome people like you to our HYF community. Drop us a line and become part of it!


Hi $NAMEIt was truely special to have you celebrate with us |
Save the Date!Jintana Choopromwong & Teerapat Khunpech are getting married on Sunday, December 18, 2016 in Udonthani. |
|
|
|
Thanks for taking apart in our wedding day! |
|


We assume that you have downloaded the binary distribution of
WSDL4J and have extracted the archive into the root directory.
Thus, the files from the distribution are in the directory
/wsdl4j-1_6_3/
.
Your classpath must contain the following:
javax.xml.namespace.QName
implementationThe com.ibm.wsdl.xml.WSDLWriterImpl
class includes
a static main method that can be used to check if the
WSDL4J dependencies can be resolved. This method takes the
name of a WSDL file as an argument, reads the file in, and then
writes it back to standard out.
For example, to use com.ibm.wsdl.xml.WSDLWriterImpl
to
read a file named test.wsdl
, you would execute the
following statement:
java com.ibm.wsdl.xml.WSDLWriterImpl test.wsdl
If the WSDL4J dependencies can be resolved, you should see the contents of the WSDL file written to standard out.
Contact: John Kaputin


Xenon is a middleware abstraction library. It provides a simple programming interface to various pieces of software that can be used to access distributed compute and storage resources.
Many applications use remote storage and compute resources. To do so, they need to include code to interact with the scheduling systems and file transfer protocols used on those remote machines.
Unfortunately, many different scheduler systems and file transfer protocols exist, often with completely different programming interfaces. This makes it hard for applications to switch to a different system or support multiple remote systems simultaneously.
Xenon solves this problem by providing a single programming interface to many different types of remote resources, allowing applications to switch without changing a single line of code.
Xenon is an abstraction layer that sits between your application and the (usually remote) resource it uses. Xenon is written in Java, but is also accessible from other languages (e.g. Python) through its gRPC interface and via the command line.
Java library with local, ssh, ftp, at, slurm, gridengine, torque and webdav adaptors.
Java library with Amazon S3 adaptor.
Java library with gridftp adaptor.
Java library with HDFS adaptor.
Run applications remotely via a gRPC interface.
Command line interface to Xenon
Python API for Xenon
Docker images with filesystems & schedulers to test Xenon middleware
Run CWL workflows using Xenon


The hacker culture
Know more about this culture
The hacker culture is a subculture of individuals who enjoy the intellectual challenge of creatively overcoming limitations of software systems to achieve novel and clever outcomes. The act of engaging in activities (such as programming or other media) in a spirit of playfulness and exploration is termed "hacking." However, the defining characteristic of a hacker is not the activities performed themselves (e.g. programming), but how it is done and whether it is exciting and meaningful. This culture began back in the 1960s at MIT, where students banded together to release information on the internet they thought should be public information. Often referred to as "computer-science freaks".
The term hacker was first coined in the fourteenth century, as a term for someone who did not have a lot of knowledge in something. The Jargon File, an influential but not universally accepted compendium of hacker slang, defines hacker as "A person who enjoys exploring the details of programmable systems and stretching their capabilities, as opposed to most users, who prefer to learn only the minimum necessary". The Request for Comments (RFC) 1392, the Internet Users' Glossary, amplifies this meaning as "A person who delights in having an intimate understanding of the internal workings of a system, computers and computer networks in particular".
nikto_rijndael is my alias to surf on the web anonymously.I'm a student of computer science and at the same time prodigy on the subject of cybersecurity


Hi Representative!!
Enter the Value of Product
Enter the Value of Transport:
GST for your product is:
Profit Percentage Used in the value:
Profit Earned:
Total Value after including GST and Transport
Click to know GST
Clcik Me!!


Additional remarks for GetRequestSummary
Action service that gets the request summary for a person, account, contact person or opportunity.


Get information on a file.
Returns a storage entity object that contains the following properties:
type
: "file" (string)name
: name of the file (string)size
: size of the file (integer)lastModified
: last modified date, can be null (date)links
: an array of link objects (array)rel -storage
: URL for the API endpoint to perform other operations on the file (string)Accepts and returns JSON as Content-Type.
Request:
GET /api/v2/admin/sites/current/storage/images/cat.jpg?meta HTTPS/1.1
Accept: application/json
Authorization: c50f6e6be0d1481ca0d8eb0c63642fdd171c17846af04cdd95676a0888141f73
Response:
HTTP/1.1 200 OK
Content-Type: application/json
{
"type": "file",
"name": "cat.jpg",
"size": 1024,
"lastModified": "Mon, 26 Jul 2010 12:45:26 GMT",
"links": [
{
"rel": "storage",
"uri": "/api/v2/admin/sites/current/storage/images/cat.jpg"
}
]
}
Below is some sample code using the bcapi.js SDK. For more information, see Interacting with APIs using the bcapi.js SDK
Get file metadata
var f = BCAPI.Models.FileSystem.Root.file('hello_world.txt');
f.fetch().done(function() {
console.log('File name is: ', f.get('name'));
console.log('Last update date is: ', f.get('lastModified'));
});
Get folder metadata
You use fetch
to obtain the folder's details, including the files & folders that the folder contains:
var folder = new BCAPI.Models.FileSystem.Folder('/my/existing/folder');
folder.fetch().done(function() {
console.log('Folder last update date is: ' + folder.get('lastModified'));
console.log('Printing the folder contents: ');
var contents = folder.get('contents');
for (var i = 0; i < contents.length; i++) {
var entity = contents[i];
var isFile = entity instanceof BCAPI.Models.FileSystem.File;
// also works: var isFile = entity.get('type') === 'file';
if (isFile) {
console.log('File ' + file.get('name') + ' updated at ' + file.get('lastModified'));
} else {
console.log('Folder ' + folder.get('name'));
}
}
});
This method will return the following error codes:
200
- OK400
- Bad request:
104000
- Generic FileAPI error104001
- File not found104002
- Not a file104003
- Not enough privileges104004
- Invalid login multiple sites104009
- Path not found104014
- Name required104023
- Unauthorized access104028
- File or folder name too long401
- when authentication token is incorrect404
- the folder does not exist


Why participate in the survey?
- Sharing your mode of travel helps us respond to your needs more precisely
- Easy way to survey consumers in a way that respects their privacy
- Encourages consumers to consider other modes of travel on congested streets
The Mode Survey box is a cost-effective alternative to in-person surveys for collecting data from consumers on-site — Locally designed, programmed, manufactured, and tested in the U District.
How can we shape our transportation choices?
Our city is changing. Our objective is to collect and analyze real-time, on-the-ground data to both provide businesses with decision making tools and to help shape public policy decisions around transportation.


Change dataset
Interface for speaker recognition
Audio source type
File
Audio data stream
Sinewave
Frequency bars
Server Statut :
Offline
Graph view
click to display the results as a carousel


Recently I decided to try Mailbox again. I had initially dismissed the app, probably partly due to the hype and partly due to the fact it messed with my folders, created new ones, and starred things without me wanting it to, however recently I have been spending more and more time using my iPad, plus I have seen a couple of colleagues using it.
As a stand alone app I have really gotten to like Mailbox’s deferral system. I am quite often on the road, or in meetings, so I found it really helped my keeping to a zero inbox. I do have a concern that from a GTD purists point of view I am just creating another Inbox with the deferred items, however the fact they pop back into my email, which is ultimately my main influx of information and hence drives inbound tasks, is incredibly useful. It acts as a pretty good reminder system for things I don’t really know what will happen yet, so maybe aren’t ready to be made into tasks.


BLACK CAT, WHITE CAT (1998)
4 out of ****
Starring Bajram Severdzan, Florijan Ajdini, Srdan Todorovic, Branka Katic; Directed by Emir Kusturica; Written by Kusturica and Gordan Mihic; Cinematography by Thierry Arbogast
BLACK CAT, WHITE CAT is a movie in which no effort has been spared, a movie which makes other films seem as if they are merely going through the motions. It is a riotous, exuberant, irrepressible comedy from Emir Kusturica, who seems to treat every film as if it might be his last, and had better put everything he's got into it. His previous work, UNDERGROUND, had the same energy and invention, but was concerned with the matter of Yugoslavia, and was therefore a tragedy. The joy of BLACK CAT, WHITE CAT is untrammelled by the hardships of geopolitical conflicts. It exists merely for the pleasure of being, and that is more than enough.
The gleefully convoluted plot, which I'm not sure I understood entirely, goes something like this: Matko (Bajram Severdzan), a man of gypsy descent living with his son Zare (Florijan Ajdini) by the side of the Danube, has a get-rich-quick scheme which depends on purchasing a train full of oil-drums and bringing it across the border to sell for major profit. To obtain the train, he calls in favours from rich obnoxious gangster Dadan (Srdan Todorovic) and his father's old friend Grga (Sabri Sulejmani). But Dadan fleeces Matko and demands his money back. Matko can't repay him because he invested everything he had in the train, but, according to his dead father's wishes, Dadan also needs to marry off his sister (Salija Ibraimova)--who is called Afrodita but is variously described as a dwarf or gnome--and says that he will forget the debt if Zare marries Afrodita. Matko reluctantly agrees, even though his son is madly in love with the decidedly ungnomish Ida (Branka Katic). Meanwhile, Grga is urging his own grandson to get married, but the grandson is determined that he will only marry the woman of his heart's desire. We can guess that all these hurtling narratives will collide before the movie is done, and they do.
Kusturica likes to hurl as much as he can into the frame and then simply move the camera about, allowing us to observe the chaos. The screen teems with life: a recurring band of gypsy musicians orchestrating scenes with their infectious upbeat playing; a gaggle of geese often found swirling about the feet of characters as they bustle about; a pig munching on the rusted frame of an old car; the black and white cats of the title. These anarchic presences crop up again and again, their vital chaotic antics paralleling and parodying the profuse comic antics of the people.
The whirligig motions of the plot somehow come to rest without flying off in all directions in the film's centrepiece, a wild wedding which is a splendid illustration of Kusturica's technique. Dadan dances about shooting a gun into the air, the absent-minded official gets the name of the bride wrong, a tearful Ida displays the wedding presents to the guests, Matko's dead father lies under a block of melting ice in the attic, abd the coerced bride escapes by shuffling about the floor in an overturned box, slipping through a trapdoor, and escaping into a nearby forest where she hides in a tree-stump as the wedding party searches for her; Grga and his sons approach from the other direction, leading to a fateful encounter. The ever-present gypsy music pulses throughout, heartbeat of the film.
The movie as a whole approaches the same level of delirious unstoppable energy. What saves it from becoming overbearing is the rightness of the details. Kusturica enriches the film with generous human touches, like the delightful sequence in which Zare and Ida chase each other through a field of sunflowers, performing a gradual striptease as they go, radiant with young love; like the secret stash Zare's grandfather has set aside because he knows Matko is too irresponsible to provide for his son; like the hideous teeth of the two patriarchs, Grga and Matko's father, rotting and gold-capped, emblematic of human weakness and mortality. The "anything goes" sensibility of the film is somewhat deceiving: the madness is so entertaining only because it so carefully nuanced.
BLACK CAT, WHITE CAT is not a perfect film, but it never stays in one place long enough for us to dwell on its imperfections. Perhaps the abundance of motion and music and madcap plotting, the sheer relentlessness of the spectacle, could be said to disguise the thinness of characterization and the thematic incoherence. But who cares? The disguise, in this case, is all that matters. BLACK CAT, WHITE CAT is a celebration, a carnival, a parade of the grotesque and bawdy, and it is only as good as it is gaudy, colourful, lively. As far as those qualities are concerned, you couldn't ask for more than this movie gives.
Subjective Camera (subjective.freeservers.com) Movie Reviews by David Dalgleish<EMAIL_ADDRESS>The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Exactor is hosted at SourceForge and both binary and source distributions can be downloaded from the SourceForge project.
If you want to get the latest version of Exactor you can checkout the source from the CVS respository
Exactor has been built and tested using JDK version 1.4.2. A JDK of this version or above is required to run the Exactor framework.
The binary distribution of Exactor expands to the following directory structure;
exactor
+--- bin // contains batch file wrapper scripts
|
+--- docs // documentation
| +--- api // javadoc for framework classes
| |
| +--- examples // source code for example projects
|
+--- lib // exactor jars and dependant libraries
Only the bin
and lib
directories are required to run Exactor.
To install Exactor, select a directory and expand the distribution to there.
The chosen directory will be referred to as EXACTOR_HOME
Before you can run Exactor there is some initial setup required.
EXACTOR_HOME\bin
directory to your pathJAVA_HOME\bin
directory is on your pathJAVA_HOME
environment variable pointing to the JDK installation directory.For Windows systems the following commands are used to setup the environment, substituting the directory names for the directories you have installed Exactor and the JDK.
C:\>set JAVA_HOME=c:\jdk1.4.2
C:\>set PATH=%PATH%;c:\exactor\bin
If you downloaded the source distribution you will need to build Exactor before using it.
Exactor is build using the ANT build tool. You will need a copy of ANT installed to build Exactor.
Version 1.6.1 of ANT was used in the development of Exactor.
After you have expanded the source distribution you are ready to build Exactor. To build Exactor change to the installation directory and type the following at the command line;
C:\exactor>build clean all
This will create two additional directories, build
and dist
.
In the dist
directory you will find a zip file exactor-BUILD-bin.zip
, where BUILD is the current build number.
Take this zip file and follow the instuctions for installing Exactor above.
Exactor makes use of a number of other libraries to provide some of its functionality, the tables below highlight these dependencies and when they are required.
The dependant jars should be on the CLASSPATH when Exactor is run, the batch file wrapper script handles this, but it is important if you are running Exactor using the com.exoftware.exactor.Runner
class.
All of the required libraries are available in the EXACTOR_HOME\lib
directory.
| Core Framework | Web Commands | SWT Commands |
|---|---|---|
| exactor.jar | web-commands.jar | swt-commands.jar |
| junit.jar | jwebunit-1.2.jar | swt.jar |
| httpunit-1.5.4.jar | swt-awt-win32-3044.dll | |
| js-1.5R4.1.jar | swt-win32-3044.dll | |
| nekohtml-0.8.1.jar | ||
| xercesImpl-2.6.2.jar | ||
| xml-apis-1.0.b2.jar |
Note: the swt dlls need to be available on the Java library path, typically this means placing them in the working directory or somewhere specified in the PATH environment variable. Again the batch file wrapper script handles this.


Wiley challenges Skepta and Dizzee Rascal to a street clash
Wiley has breathed new life into his feuds with Skepta and Dizzee Rascal after challenging both rappers to a street clash.
The Heatwave rapper entertained his Twitter followers on Monday by tweeting that he was ready to battle Skepta with bars on the streets of Tottenham in London, seemingly unprovoked.
‘I will clash you @Skepta on Tottenham HIgh Road do you wanna do it? [sic]’ he wrote.
But when one fan wondered why he hadn’t challenged his other rival, Dizzee, to a rap battle, he was more than happy to oblige and replied: ‘Both I’m ready… 1 day dizzee another day Skepta.’
Explaining why he’s choosing the rap battle route, Wiley explained: ‘Grime is a Physical genre and is a niche thing that is best when kept away from the charts and corporations.If dizzee clashes me on the street this is more powerful than any label could do for me or dizzee [sic].
Advertisement Advertisement
‘If you attempt to sell grime via major label or streaming before physical,You have already failed.Back to the village immediately.’
He then warned any other brave critics: ‘Don’t try it with me unless your prepared to clash me on your block or my block.’
Without mentioning any names, Wiley they predicted: ‘People who only care about chart positions & video views & not the music won’t be here long.They come & go.’
Wiley’s feud with Dizzee goes all the way back to 2003 with an incident in Ayia Napa.
A brawl reportedly erupted between So Solid Crew and Roll Deep which Wiley has previously admitted to fuelling.
‘Then the next day, I decided to carry it on – I didn’t pull out a knife. ‘I was just fighting… Well, after we started it up again, those guys came looking for us. But the person they found was Dizzee,’ Wiley told Time Out in 2016.
The altercation resulted in Dizzee getting stabbed by a rival.
Wiley explained: ‘Now I’m older, I can see: Dizzee in his head will always be thinking: “I know we got into a beef. I know something started. But you lot carried it on the next day. If you had left it I wouldn’t have got stabbed”. That is the reason me and Dizzee haven’t spoken all these years.’
Then in 2018, Wiley criticised Skepta for collaborating with Dizzee which in turn sparked a new beef with the Boy Better Know star.
Advertisement Advertisement
It seemed as though Wiley was done with beefing for a while with his last public feud involving Ed Sheeran and Stormzy back in September.
The 40-year-old reacted to Stormzy collaborating with Ed on the grime track Take Me Back To London and claimed the popstar ‘doesn’t care’ about the genre.
Then there’s also Wiley’s ongoing tension with Drake but we’ll leave that one for another day…
Got a showbiz story?
If you've got a story, video or pictures get in touch with the Metro.co.uk Entertainment team by emailing us<EMAIL_ADDRESS>calling 020 3615 2145 or by visiting our Submit Stuff page - we'd love to hear from you.


Fall 2018, Class Time: TuTh 11:00 am - 12:15 pm
Room: BEC267 + online (blended learning)
Text: Murach’s Java Programming, Joel Murach and Michael Urban, 2017, Mike Murach & Associates, ISBN 978–1–943872–07–7. Students are expected to have this text at the start of course, to read reading assignments as part of their preparation for class be it a face-to-face meeting or an online activite, and to bring the text to each face-to-face class meeting.
Technology:
David Green<EMAIL_ADDRESS>BEC256A, Office Phone: (205) 934–8440
Availability (28 August - 7 December 2018):
The class has a forum inside Canvas for discussing class and related material. The forum is limited to students, the instructor, and course assistants (TAs or other faculty) if any. When appropriate, please use that forum so that all class members can benefit. The instructor will try to read posts on business days within 24 hours. If an emergency, use e-mail or contact the E&CE Office (205) 934–8440.
The instructor will have office (BEC265C) hours as posted on his Internet site http://www-ece.eng.uab.edu/DGreen/ These times are general hours - first come, first served with slight priority to those in one of my classes this term or those needing advising. I am in the office more often than this and if I am free, I will be glad to see you. If you are in the area, feel free to drop by. If not, you may wish to call first. Various University meetings, IEEE Professional service, and other events may take me out of the office during office hours so if you are traveling far to see me, call first. Known future exceptions are posted on the same web site.
Software development emphasizing object-oriented methods. Design and develop programs using existing classes and create their own classes. A graphical user interface framework will be used as extensive example of Object Oriented System. Develop skills in project management, written and oral communication, teams, and an introduction to ethics and intellectual property issues. Prerequisites: EE233 (C language, data structures)
The purpose of this course is continue developing software skills in the areas of object oriented design, object oriented implementation, and user interface design. The course also has a team work component and a discussion of ethics as it relates to software and its development.
The outcomes for EE333 are listed as part of the E&CE Department’s ABET material. There are certain outcomes that are absolute requirements of the course (i.e. all students completing the course will successfully demonstrate these abilities.) Specifically, it is a course requirement to successfully complete the P3, and P5 exercises. Students whose submissions are scored ‘not acceptable’ on these specific assignments (Outcome Assessments) will have one week after the grades are posted to submit a acceptable version. This re-submission is evaluated only for passing the course NOT for changing the original item’s grade.
The due dates for graded items are firm. The electronic submissions are posted to Canvas and it’s server’s clock (as reflected back to Central time) rules. Don’t get caught by a time skew between your system and theirs.
| Component | Weight |
|---|---|
| Quizzes, Class participation | 5% |
| Individual Projects (P1 2%, P2 2%, P3 8%, P4 8%, P5 15%) | 35% |
| Tests (20% each) | 40% |
| Project Program (Team) | 20% |
| 100% |
Final Grade: A: 90–100%, B: 89–80%, C: 79–70%, D: 69–60%, F: below 60%
Note there are required class attendance days. Missing any required class, without approval, will result in a 2 point course penalty per occurence.
| Event | Date |
|---|---|
| Test 1 | Oct 2, class time |
| Test 2 | Nov 15, class time |
| Project presentations | Dec 11, 10:45 am - 1:15 pm |
Students are required to attend all project presentations.
Projects will be (are) distributed inside the Canvas LMS. Changes to the assignments (if any) will cause a Canvas-generated notification to be sent to you. Instructor solutions may be provided for some projects. If available, they will be accessible through Canvas. Students are required to do their own individual work on projects and work in teams for the project. Students who choose to engage tutors or other outside help should be careful to make sure that the actual project authorship is theirs not the tutors. Tutors and outside help should limit their help to concepts and other, non-assignment, programming.
It is assumed that you are reading mail sent to your<EMAIL_ADDRESS>and that you can handle MIME attachments as well as text e-mail.
Note: this is the location where I would like most questions to be asked. This discussion tool will allow me to answer once and let everyone see the answer. Unless it is “giving away the store”, please feel free to answer others’ questions especially as it relates to how to use tools.
When posting, please try to use informative subject lines. The subject lines turn out to be the easiest text to use for later searching for information. Note that the Discussion Tool keeps conversations together within a topic by ‘threading’ so one can change subject like to reflect specialization of the subject as replies happen. Try to limit each post to one thought.
Remember that text messages don’t convey body language, are permanent, and can cause misunderstandings and hurt feelings. Strive to communicate in a respectful manner to all. If you find that someone’s message does not comply with this guidance to the point it maybe hurtful to someone – please contact me by e-mail immediately with a subject line that includes the word URGENT.
There will be a topic for each of the major assignments and for team work, etc. Please try to choose the right topic for each posting and be sure to reply when you are continuing a conversation.
Discussion here carry the weight of discussions in class – please keep current by checking messages at least every 48 hours. You can subscribe to each of the forums which will then cause e-mail to be sent to you when posts are made.
Teams & Topics - Students will divided into teams that mix ECE students with other students (if any) taking the class. The project is to create a graphical user interface (GUI) using principles discussed in class in a team manner with several design review points. Each team will build an interface for a different function. The list of functions will be distributed during the course.
Team Project - Students will work in teams with all team members participating and all members making at least one oral presentation. Additional requirements will be given out during the course. All students must attend all team presentations. Team members will rate each other’s contributions and this rating will be used to scale part of the project grade.
Web Page: http://www-ece.eng.uab.edu/DGreen/ee333/.
Copyright © 2010–18 David G. Green, All Rights Reserved
Contact<EMAIL_ADDRESS>Last modified: 09 August 2018


Known and unknown security and performance issues in 2.x have not been addressed since the last update (29 June, 2012). It is highly recommended to upgrade to Express 3.x or to Express 4.x.
High performance, high class web development for Node.js
This introduction screencast covers the basics of Express, and how to get started with your first application.
In this screencast we work with partials to display a collection of users using the Jade template engine, and learn about view path resolution.
In the screencast below we learn about the benefits of route-specific middleware.
Learn about route parameter (/user/:id) pre-conditions, providing automated validation, and loading of data via the named route param segments.


Portfolio
John Doe
A passionate UI Designer.
Discipline (Program)
mail
Email
Github
Achievements
Projects
Experience
Introduction
Achievements
Projects
Experience


{% set page = { title: 'FES', nav: { section: 'About', subsection: 'link primary 1.2', hideTertiary: true }, dev: true, hideNav: true, hideSearch: true, layout: prototype.current.layoutPath + 'layout.html' } %} {% extends page.layout %} {% block primary %}
An email has been sent to ###. Open the email and a link will be provided to reset your password.
If for any reason you have not received the email, you can request another one to be sent.
Go to the Sign in screen and enter it along with your email.
{% endblock %}


Download 0.2.11 (or Minified) | Guide | API | Sample (Src) | FAQ | Resources | Report an Issue | Contribute | Help! | Discuss
AngularUI Router is a routing framework for AngularJS, which allows you to organize the
parts of your interface into a state machine. Unlike the
$route
service in the Angular ngRoute module, which is organized around URL
routes, UI-Router is organized around states,
which may optionally have routes, as well as other behavior, attached.
States are bound to named, nested and parallel views, allowing you to powerfully manage your application’s interface.
Check out the sample app: http://angular-ui.github.io/ui-router/sample/
- Note: UI-Router is under active development. As such, while this library is well-tested, the API may change. Consider using it in production applications only if you’re comfortable following a changelog and updating your usage accordingly.
(1) Get UI-Router in one of the following ways:
- clone & build this repository
- download the release (or minified)
- via Bower: by running $ bower install angular-ui-router
from your console
- or via npm: by running $ npm install angular-ui-router
from your console
- or via Component: by running $ component install angular-ui/ui-router
from your console
(2) Include angular-ui-router.js
(or angular-ui-router.min.js
) in your index.html
, after including Angular itself (For Component users: ignore this step)
(3) Add 'ui.router'
to your main module’s list of dependencies (For Component users: replace 'ui.router'
with require('angular-ui-router')
)
When you’re done, your setup should look similar to the following:
<!doctype html>      ...   ...
The majority of UI-Router’s power is in its ability to nest states & views.
(1) First, follow the setup instructions detailed above.
(2) Then, add a ui-view
directive to the
of your app.

  State 1 State 2
(3) You’ll notice we also added some links with ui-sref
directives. In addition to managing state transitions, this directive auto-generates the href
attribute of the
element it’s attached to, if the corresponding state has a URL. Next we’ll add some templates. These will plug into the ui-view
within index.html
. Notice that they have their own ui-view
as well! That is the key to nesting states and views.

State 1

 Show List

State 2

 Show List

(4) Next, we’ll add some child templates. These will get plugged into the ui-view
of their parent state templates.

List of State 1 Items

{{ item }}

List of State 2 Things

{{ thing }}

(5) Finally, we’ll wire it all up with $stateProvider
. Set up your states in the module config, as in the following:
myApp.config(function($stateProvider, $urlRouterProvider) { // // For any unmatched url, redirect to /state1 $urlRouterProvider.otherwise("/state1"); // // Now set up the states $stateProvider .state('state1', { url: "/state1", templateUrl: "partials/state1.html" }) .state('state1.list', { url: "/list", templateUrl: "partials/state1.list.html", controller: function($scope) { $scope.items = ["A", "List", "Of", "Items"]; } }) .state('state2', { url: "/state2", templateUrl: "partials/state2.html" }) .state('state2.list', { url: "/list", templateUrl: "partials/state2.list.html", controller: function($scope) { $scope.things = ["A", "Set", "Of", "Things"]; } }); });
(6) See this quick start example in action.
(7) This only scratches the surface
Another great feature is the ability to have multiple ui-view
s view per template.
Pro Tip: *While multiple parallel views are a powerful feature, you’ll often be able to manage your interfaces more effectively by nesting your views, and pairing those views with nested states.*
(1) Follow the setup instructions detailed above.
(2) Add one or more ui-view
to your app, give them names.

  Route 1 Route 2
(3) Set up your states in the module config:
myApp.config(function($stateProvider) { $stateProvider .state('index', { url: "", views: { "viewA": { template: "index.viewA" }, "viewB": { template: "index.viewB" } } }) .state('route1', { url: "/route1", views: { "viewA": { template: "route1.viewA" }, "viewB": { template: "route1.viewB" } } }) .state('route2', { url: "/route2", views: { "viewA": { template: "route2.viewA" }, "viewB": { template: "route2.viewB" } } }) });
(4) See this quick start example in action.
Please read our Contributor guidelines before reporting an issue or creating a pull request.


This attribute allows conditional rendering of children components.
If the value defined in the data-if
attribute is evaluated to true
,
data-if
will render its children accordingly.
The general use of data-if
is the following:
Use with true
slot only
Use with without slots
Notes:
data-if
can be applied on any HTML tag, but it can cause unexpecte bahaviour if it's placed
on custom components (since it's changing the tag content)
container
can be any HTML tag or custom component
true
false
true
and false
slots are optional. If neither of them are specified, then
the whole data-if
content will be considered the true
slot. Under this
consideration, the two above examples are identical functional-wise.
Promise
. When that happens, data-if
will
wait for the Promise to be resolved and based on its value it will decide if the children nodes will be
rendered or not.
In this example the data-if
attribute is bound to the value of the gdpr
model
property and it will render the paragraph only if the property is true
.
GDPR Notice...
GDPR Notice...
This example will demonstrate how to use the data-if
together with a model expression. An
in-depth explanation of model expressions can be found
For this case, a model expression is used to validate the value of an email text input and show an error message if validation fails.
The email address is invalid
The email address is valid
The email address is invalid
The email address is valid
As seen in the previous code samples, the data-if
needs to be placed inside a
controller aware component in order to have access to the model so it can evaluate either a property
or a predefined expression. Click
@
character, as explained in the


Loading world...
Show specular highlight
Use lighting
Texture:
None
Galvanized
Earth
Material:
Shininess:
Point light:
Location:
X:
Y:
Z:
Specular colour:
R:
G:
B:
Colour:
R:
G:
B:
Ambient light:
Colour:
R:
G:
B:
Galvanized texture courtesy of
Arroway Textures
.
Earth texture courtesy of
the European Space Agency/Envisat
.


Introduction
Two techniques for giving semantics of programs are graphically
using data flow and control flow diagrams, or categorically using
mathematical structures such as monads or premonoidal categories.
Usually, the graphical presentation is semi-formal, and forms part of
the dataflow-oriented design process taught to most computer science
undergraduates, whereas the categorical presentation is used in giving
formal semantics, and is the subject of specialist research.
In this paper, we shall give a formalization of flow graphs, and show
how this can be used to give a categorical semantics in a framework based
on Power and Robinson's premonoidal
categories and Joyal, Street and Verity's
traced monoidal categories.
As an example of the flow graphs described in this paper,
consider a nondeterministic programming language with
a single imperative integer variable. Such a programming language contains
expressions which can be drawn as data flow diagrams such as:
We can also add nondeterminism to the language by adding a node
representing nondeterministic choice, for example:
Note that nondeterministic choice nodes are drawn differently to other
nodes. This is because other nodes can be duplicated or discarded
(for example all of the first examples are considered equal) but
nondeterminism nodes cannot (for example the two nondeterministic
expressions are not equal since the former might evaluate to 2 where
the latter can only evaluate to 1 or 4). We shall call nodes which
can be duplicated and discarded value nodes,
and nodes which cannot central nodes (the
terminology will be explained below).
We can add imperative statements to set an integer variable and get
its value, but these statements cannot be drawn in the same fashion as
the others, since order of evaluation is important for imperative
expressions. For example, if we were to make imperative expressions
central, then the following diagrams would be graph isomorphic:
To distinguish graphs such as these, we add a new class of
process nodes, and a new class of
control arcs. The control arcs allow
us to specify the causal order of a program, for example
we can now distinguish between the graphs:
We can add higher-order functions to this graphical language by
allowing function nodes which contain subgraphs, for example a
function to increment the variable is:
Function application is denoted using application nodes, for example
applying the increment function twice is drawn:
These graphs are viewed up to an equivalence where:
|
|
| = |
|
(Beta) |
| = |
|
(Beta) |
| = |
|
(Garbage collection) |
For recursive function declarations we allow cyclic graphs, for example
a factorial function is:
We can give a denotational semantics for this language using domains:
- value expressions
can be given a semantics in the category of
complete partial orders (not necessarily with bottom)
Cpo.
- central expressions
can be given a semantics in the category of
complete partial orders with binary join (to give
the semantics for nondeterminism)
Cpo.
- process expressions
can be given a semantics in the category of
complete partial orders with binary join,
bottom (to give the semantics of fixed points) and a
state of type N (to give the semantics for imperative statements)
StateP(N)(Cpo).
where, when C is a symmetric monoidal category with object
X, StateX(C)
is the category given by:
This gives a concrete denotational semantics in particular categories of
domains. Abstracting away from the details of domain theory, we discover
that the structures necessary to give this denotational semantics were:
- A category V in which to interpret
value expressions. Since this language
has tuples and allows expressions to be duplicated or discarded,
V should be a strict cartesian category
(a strict symmetric monoidal category where the monoidal
structure forms finite products).
- A category C in which to interpret
central expressions. Central expressions
have tuples which cannot be duplicated or discarded, so
C should be a strict
symmetric monoidal category.
- A category P in which to interpret
process expressions. Process expressions
have tuples which cannot be duplicated or discarded and for which
evaluation order is important, so
P should be a strict symmetric premonoidal category
(defined by Power and Robinson
for such semantics).
- We have identity-on-objects inclusions
V
C
P
which respect the product/symmetric monoidal/symmetric premonoidal
structure.
- To model recursive declarations, we have a partial trace
in V. This is an adaptation of
Joyal, Street and Verity's
traced monoidal categories taking account of the fact that
we cannot find fixed points for every object in V.
In our Cpo example it is only objects which have least elements which
can be traced.
- To model functions we have adjunctions:
V[X, Y Z]
V[X Y, Z]
V[X, Y Z]
C[X Y, Z]
V[X, Y Z]
P[X Y, Z]
- To model recursive functions, we have all objects of the form
X Y
are traceable.
There are a large number of such triples, for example:
- Take V to be Set and
C and P
to be Rel.
- Take V to be any
partially traced cartesian closed category
with a commutative strong monad T,
a strong monad U, both satisfying the mono requirement,
and a monic natural transformation
T U
which respects the monad structure. Then
let C be the Kleisli category
VT
and let P be the Kleisli category
VU.
- Take V,
C and P
to be appropriate categories of mixed data flow and
control flow graphs.
Since there are so many examples of such triples of categories, it
would be useful if there was an initial such triple. Then
providing a semantics in this initial triple would be enough to
give a semantics in any such triple.
The purpose of this paper is to show that flow graphs form the initial
such triple of categories, so by giving the flow graph for a program,
its semantics is given for any categorical semantics fitting the framework
given above.
The paper is divided into sections:
The last section is more speculative than the others, since it requires
factoring the category of graphs up to beta-equivalence, eta-equivalence,
and naturality. The other sections do not require such factoring, and
view graphs up to an appropriate notion of bisimulation.
In each case, the main result is a soundness and completeness result,
given in an appendix. These results make heavy use of the graphical
presentation, which make the proofs much simpler to read. The style
of the proofs should be familiar to readers with a background in
process algebra, for example the normal form result for cyclic graphs
is similar to Milner's proof
of completeness of his axiomatization of strong bisimulation.
The observant reader may have noted that in the above example
(where the premonoidal category is given as a State
construction over a symmetric monoidal category) that the control line
can be considered as just another data line, carrying the value of
the state variable. For example we could consider the constructors:
as syntax sugar for:
This similarity is not a coincidence: the categorical basis of
the graphical presentation of premonoidal categories as single-threaded
graphs with one control line is that any premonoidal category
C P
is a full sub-symmetric-premonoidal-category of a state transformer
category D State(D).
This result is proved in appendix.
We also provide a sketch of how two-categorical structure can be used to
give an operational semantics for the
graphical language, adapting Milner's
semantics for action calculi.
The semantics has been implemented as a Java applet, which takes a
program text and draws the corresponding flow graph (all the diagrams
in this paper are drawn using this applet).
I would like to thank
Adam Eppendahl,
Philipa Gardner,
Andy Gordon,
Matthew Hennessy,
Paul Levy,
Rudi Lutz,
Valeria de Paiva,
Dusko Pavlovic,
Prakash Panangaden,
Eike Ritter,
Edmund Robinson
and
Peter Selinger
for discussions and suggestions.
Previous |
Next