Let’s get something straight here: despite a graphical overhaul in iOS 7, Apple’s Mail for iOS has remained largely the same since its inception…and that’s not a good thing.
Today’s users need an email client that does more than just send email. It needs to support a variety of account types; it needs to support 3rd party service integrations; it needs to handle file and invite management; and so much more.
Recently, I started experimenting with three relatively new entrants to the iOS mail app market: CloudMagic, Acompli, and Boxer. All three outperform Mail is many key areas, and it occurred to me that a product comparison might be in order.
TL;DR
It’s time to find an alternative to Apple Mail on iOS; here are three worthy conteders.
The Background
This guide is not intended to be the end-all, be-all guide to these three applications. As such, I do not cover every single aspect of their functionality. Rather, I focus on those aspects that are, I feel, crucial to a better mobile email experience. You should research each app as much as possible to see if it meets your needs.
Furthermore, I try to not blend categories together. For instance, whether an app implements multiple device versions should not affect the verdict on its UI.
The Entrants
Let’s meet the contestants and learn a little about them.
CloudMagic
CloudMagic is a mail app that focuses on several key virtues:
- Multiple email services in one app
- Inline access to several popular 3rd party apps
- Simple GTD concepts
CloudMagic has gotten tremendous press thus far:
The best Android and iPhone mobile email app. – WSJ
The email application that lets you complete your work right from your Inbox. – TechCrunch
Acompli
Acompli focuses on tasks and workflows for busy professionals:
- Share calendar availability via email
- Manage attachments with ease
- Manage contacts with ease
Currently, Acompli is getting a lot of press for having recently secured $7.3 million in funding.
Boxer
Boxer focuses on adding GTD principles and social features to the email experience:
- Tasks
- Assignees
- Email Likes
Boxer has been around some time and is often referenced as one of the first apps to seriously challenge iOS Mail.
Breakdown
If you’re in a hurry, here is a tabular breakdown of the (as I see it) major needs of a mobile email client and whether each of our contestants meets it.
| CloudMagic | Acompli | Boxer | Verdict | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| User Interface | ✕ | ✕ |
✕
|
|
Multiple Account Types
|
✕
|
✕
|
✕
|
|
Contact Management
|
✕
|
✕
|
✕
|
|
File Attachments
|
✕
|
✕
|
✕
|
|
Calendar Management
|
✕
|
✕
|
✕
|
|
Robust Searching
|
✕
|
✕
|
✕
|
|
Multiple Signatures
|
✕
|
✕
|
✕
|
|
Quick Reply Templates
|
✕
|
✕
|
✕
|
|
Batch Editing
|
✕
|
✕
|
✕
|
|
Multiple Device Support
|
✕
|
✕
|
✕
|
|
3rd Party Integrations
|
✕
|
✕
|
✕
|
|
GTD Focus
|
✕
|
✕
|
✕
|
|
Undo Ability
|
✕
|
✕
|
✕
|
|
✕ – employs this feature to great effect User InterfaceCloudMagicCloudMagic features a beautiful interface. Muted colors, great gestures, excellent iconography…it all works. Interactions occur primarily via gestures and nicely hidden menus. No UI element gets in the way of interaction; nothing feels like it hinders the overall experience. That simplicity of experience is a huge relief. CloudMagic’s UI comes closest to the fine UIs developed in email apps such as Mailbox and Sparrow. Navigating around CloudMagic is a joy; it’s as simple as that. AcompliAcompli’s UI is very well done, if a bit “iOS 7-boilerplate-esque.” Acompli’s “functional groups” are accessible via the standard iOS bottom-of-the-app navigational links. Within each group, the UI changes to accommodate the desired experience (e.g., the “Calendar” UI closely mimics a calendar app). Although the Acompli UI has gestures, they are often eschewed in favor of the traditional tap-based gestures. This makes for a recognizable (and thus, easy to learn) UI, if one that is a little uninspired. BoxerBoxer’s UI has come a long way since its inception. It closely mimics CloudMagic in terms of a slidable left-hand menu, simple buttons, and a gesture-based interface. The Boxer UI’s killer feature is its ability to customize gestures. Users can define what short/long left/right swipes look like for an email; for instance, one might choose the following setup:
Although the basic interactions of Boxer’s UI are similar to CloudMagic, the overall feeling is slightly clunkier. Buttons are bigger than (I think) necessary, windows and panels contrast rather starkly, and the app’s color scheme is a bit jarring. That said, the overall experience is still solid. VERDICT: CloudMagicIn terms of a purely usable UI that is intuitive, original, and easy on the eyes, CloudMagic wins. Multiple Account TypesCloudMagicCloudMagic supports a large list of email services:
It’s important to note that CloudMagic limits users to 5 accounts.1 AcompliAcompli, in its own words, chooses to focus on the most popular email services:
Boxer
VERDICT: Tie (CloudMagic and Boxer)Although all three apps support a number of services, CloudMagic and Boxer support the largest number. Acompli’s want to focus on the most used services is completely valid, but a larger number of services tends to attract a larger number of users. Contact ManagementCloudMagicOther than connecting to iOS’ built-in contact manager, CloudMagic does not carry any special contact management abilities. AcompliAlthough it’s not a radical shift, Acompli implements a very useful feature: recent contacts. This allows users to quickly send emails to contacts who have already been recently emailed. BoxerBoxer implements its own contact list manager and blends LinkedIn and Facebook information into those contacts. Beyond that, however, contact management is as you would expect. VERDICT: AcompliAlthough it isn’t the most noted feature, Acompli’s inclusion of any unique functionality (unfortunately, the contact enhancements of Boxer don’t offer much tactical value) here elevates it as the winner. File AttachmentsCloudMagicCloudMagic’s file management abilities are limited to attaching photos to an email. Although this is a step above the iOS Mail app, it’s not quite enough to crown CloudMagic’s file management functionality as truly next-generation. AcompliAcompli’s file management capabilities are robust. In addition to being able to attach photos to an email, Acompli also allows users to pick from a file library (composed of files that exist in any email across the user’s accounts): This is a feature I’ve yet to run across before and it becomes incredibly useful. The one drawback is that it forces you to keep your files-for-email in your email (which might not be for the best). BoxerBoxer, too, has robust file management capabilities. Like Acompli, Boxer allows users to take attach photos to emails (via the library or via a direct camera shot) and attach files; unlike Acompli, Boxer chooses to connect to a user’s Dropbox or Box.com account and attach files from there: Upon selecting a file, Boxer generates a link to the file and places it in the email draft. VERDICT: BoxerAcompli comes close, but Boxer’s ability to include files in 3rd party file management solutions like Dropbox takes the cake. Calendar ManagementCloudMagicCloudMagic’s ability to manage calendar invites is questionable (usually depending on where the invite comes from). For instance, an invite from Google Calendar isn’t bad: Fortunately, Google’s built-in acceptance links show up (allowing users to respond to the invite from the email). Invites from other services (such as Microsoft Exchange), however, are not nearly as good: In both cases, users can touch on the .ics file and see event details, but nothing more. When it comes to creating and mailing events natively, CloudMagic does not currently offer support. AcompliAcompli handles events much more gracefully; in both of my tests, Acompli recognizes that the email has an event and gives users the ability to accept or decline directly from the email: When creating invites, Acompli allows users the ability to create them directly within the app (a greatly useful feature when once is used to creating events only in a calendar app). Even better, Acompli allows users to send available time slots within an email: BoxerLike CloudMagic, Boxer has very limited calendar management abilities. Most unfortunately, it often is unable to recognize (or do anything with) events sent from Microsoft Exchange (choosing instead to simply display an empty email body). VERDICT: AcompliIt may not have everything, but Acompli handles calendar management far better than either CloudMagic or Boxer. Robust SearchingCloudMagicCloudMagic’s searching capabilities do exactly what’s expected. Of particular note: CloudMagic was consistently the fastest app to return search results. AcompliAcompli’s searching capabilities were neck and neck with the others in terms of speed and accuracy of results. BoxerBoxer’s searching capabilities were neck and neck with the others in terms of speed and accuracy of results. VERDICT: Tie (CloudMagic, Acompli, and Boxer)All three apps perform admirably here. Boxer seems to crash now and then while searching, but it’s sporadic and inconsistent enough to not detract. Multiple SignaturesCloudMagicCloudMagic offers the ability to include plain text signatures for each account. AcompliAcompli, too, offers the ability to include plain text signatures for each account. BoxerBoxer, too offers the ability to include plain text signatures for each account. VERDICT: Tie (CloudMagic, Acompli, and Boxer)All three apps offer this crucial functionality (with none outperforming the others). Quick Reply TemplatesCloudMagicThis functionality is not included in CloudMagic. AcompliThis functionality is not included in Acomply. BoxerBoxer shines here by allowing users to use templates for quick email replies (such as, “Running a bit late.”):
VERDICT: BoxerBoxer is the clear winner here by virtue of being the only app to include this functionality. Batch EditingCloudMagicBy long pressing on an email, CloudMagic activates a multi-select mode that allows users to touch-to-select multiple emails: Once selected, emails can be moved to a folder (specific to that email’s account, of course), trashed, archived, or marked as read via a set of buttons at the top of the app. AcompliAcompli allows users to touch an edit link and multi-select emails, as well: Once selected, emails can be flagged, marked as read, moved to a folder, trashed, and archived. BoxerBoxer allows emails to be multi-selected via touching on the user picture next to each: Once selected, emails can have a bevy of actions performed upon them (including trashing, marking as spam, converting to todos, and more) via either left/right gestures or an actions menu in the upper right corner of the app. VERDICT: BoxerAll apps do a great job at allowing users to multi-select emails. Boxer gets the nod here because it offers a great deal more actions to be performed on these selected emails. Multiple Device SupportCloudMagicCloudMagic is a universal app that supports both iPhone and iPad. There is an Android version, as well. AcompliAcompli now exists for the iPhone only (although, plans for an Android app are in the works2). BoxerBoxer exists as a universal app that supports both iPhone and iPad. VERDICT: CloudMagicBy virtue of its already-existing device support lineup, CloudMagic wins this round. 3rd Party IntegrationsCloudMagicCloudMagic supports the ability to send emails to a bevy of 3rd party services (via “cards”):
Even more exciting, the CloudMagic teams promises that more cards are coming (and that a developer platform is being created to allow others to create their own cards). AcompliAcompli does not support any outside services (and doesn’t seem to reference any plans for future support). BoxerBoxer supports sending email to many services:
Additionally, Boxer can connect to various services to bring in information about email contacts: VERDICT: CloudMagicIt’s a neck-and-neck race between CloudMagic and Boxer; at this point, the promise of an independent service development platform puts CloudMagic slightly ahead. GTD FocusCloudMagicAlthough CloudMagic doesn’t explicitly support GTD principles, its quick actions and “don’t-get-in-the-way” mentality support the principle of getting to zero inbox. CloudMagic does support adding iOS Reminders to emails, ensuring that users are always notified of needed emails. CloudMagic even features a nice graphic (and some helpful advice) once you reach this point: AcompliAcompli features robust (if not direct) support for GTD. The inclusion of calendar and (minimal) contact management within the app ensures that users don’t have to wander around. Acompli also lets users attach iOS Reminders to emails. BoxerBoxer features the most direct support of GTD within the three apps. Emails can be converted into todos, assigned to other Boxer users, and given due dates/times. Boxer’s quick actions allow these conversions to happen effortlessly. Like CloudMagic, Boxer gives some added GTD motivation (with the ability to share its results): VERDICT: BoxerBoxer’s direct focus on GTD makes it the winner here. Undo AbilityCloudMagicCloudMagic allows for users to undo most actions made to emails (like deletion, moving, etc.). AcompliAcompli, too, allows for users to undo most actions made to emails. BoxerBoxer, too, allows for users to undo most actions made to emails. VERDICT: Tie (CloudMagic, Acompli, and Boxer)With identical functionality in play, all three apps win this round. The ChampionIt’s been a long, trying contest. Let’s see how these apps stack up based on the number of rounds won (and assume that all rounds carry equal importance):
Which One Is Right For Me?All three of these apps deserve a look; although they achieve different functionality with different results, they each fly above and beyond Apple’s default Mail offering. For now, I’m using CloudMagic, simply because it’s 3rd party services are the ones I happen to use most often. That said, both Acompli and Boxer and sitting nearby, waiting for the next update that will push them above the rest. An important note: CloudMagic and Acompli route your email through their servers before arriving on your device.34 There’s a multitude of reasons for this – better push notifications, etc. – but if you’re concerned about your information residing on some third party server, these apps might not be the ones for you. (EDIT: I had previously thought that this was the case with Boxer, too, but was corrected).
|


Defendant’s response |
|
In the County Court Business Centre |
|
Online Civil Money Claims |
|
Claim number: 000MC001 |
|
Issued on: TIMESTAMP |
|
| Response received on: TIMESTAMP |
| Name | John Rambo |
| Address |
52 Down Street Salford Manchester DF1 3LJ |
| Correspondence address |
52 Down Street Salford Manchester DF1 3LJ |
| Date of birth | 2 January 1968 |
| Telephone |<PHONE_NUMBER>5 (as amended) |
| Defendant’s response | I have paid what I believe I owe |
| Amount they have paid | £100.99 |
| When they paid this amount | 2 January 2016 |
| How they paid the amount | Paid cash |
| Why they dispute the claim | |
|
|
| Defendant’s timeline of what happened | |
| Last Year | signed a contract |
| Comments about claimant’s timeline | More information |
| Defendant’s evidence | |
| Letters, emails and other correspondence | description |
| Comments about claimant’s evidence | More information |
|
I believe the facts stated in this response are true. I understand that proceedings for contempt of court may be brought against anyone who makes, or causes to be made, a false statement in a document verified by a statement of truth without an honest belief in its truth. |
|
| John Rambo | |
| TIMESTAMP |
| Settle the claim | Unless you’ve been asked not to, you can still contact defendant directly. If you can reach an agreement you may not have to go to a hearing. |
| Mediation |
If the defendant has asked for mediation then the claimant will be asked if they want to mediate. If the defendant hasn’t asked for mediation then the case will be reviewed by a judge and might go to a hearing. The claimant and defendant will be contacted if a hearing date is scheduled and it will be explained what they need to do to prepare. |
Directions Questionnaire Online |
|
In the County Court Business Centre |
|
Online Civil Money Claims |
|
Claim number: 000MC001 |
|
Issued on: TIMESTAMP |
|
| Response received on: TIMESTAMP |
A Your details - Defendant |
|
|---|---|
|
Name:
|
John Rambo
|
| Address: |
52
Down Street Salford Manchester DF1 3LJ |
|
Date of birth:
|
2 January 1968
|
|
Telephone:
|
|
|
Email:
|
B About the hearing |
|
|---|---|
|
Support required for a hearing
|
English
Need Sign Language Hearing Loop Disabled Access |
| Hearing location | |
| Preferred hearing centre |
A Court
|
| Expert evidence | |
|
Expert evidence required
|
Yes |
| Have you already got a report written by an expert? |
Yes
|
|
Report 1
|
expert1
1 January 2040 |
| Witnesses | |
|
Do you want to give evidence?
|
YES
|
|
Other witnesses
|
Optional[1]
|
|
Dates unavailable
|
TIMESTAMP
|
C Signature |
|
|---|---|
| Signed |
John Rambo
TIMESTAMP |


This webpage allows you to search through github for people you are interested in or repositories that may guide you on your coding way.


#include <dialogs.h>
Public Methods | |
| TSItem (const char *aValue, TSItem *aNext) | |
| ~TSItem () | |
Public Attributes | |
| const char* | value |
| TSItem* | next |
Definition at line 793 of file dialogs.h.
|
|
Creates a TSItem object with the given values. |
|
|
Destroys the TSItem object by calling delete value. |
|
|
Pointer to the next TSItem object in the linked list. |
|
|
The string for this TSItem object. |


Long-term career goal and pathway:
I don’t have a specific goal in mind in terms of a
career, but
one thing I do know is that
I want to set up my own shop sometime in the future.
Human skill I would like to develop at EDA:
People often describe me as “chill” and
“laid-back” and I
accept that description and in
a way, I do like it. But I want to be able to captivate an audience, give off
good first
impressions.
Description of my strength and limitation:
My biggest strengths are willpower,
determination, and focus.
The limitation however,
is once I get decent at something, I get bored and because of that I have never
become truly good at something.
I want to change that and I think I can do that at EDA.
How I will manage workload:
Something vital that I have failed to do time and time again is talk to the
people responsible for the course or work on how to manage the work effectively.
I have the determination and willpower to push through the work, but I will manage
myself and work productively with all stakeholders by first learning how.
How and where I will seek help in a timely manner:
During foundations, my go to for help will be facilitators. I can speak to my facilitator
Joseph but since he is working remote, if at any point in time I
feel like I need
face-to-face interaction for assistance I can always ask the facilitators on campus or
talk to my seniors.
My expectation from the facilitation team:
Best advice possible.
Scheduling block-out times:
None I can think of.


FROM THE DESK OF : MR ZAKI AHMED, AUDITING AND ACCOUNTING SECTION, AFRICAN DEVLOPMENT BANK (A.D.B) OUAGADOUGOU BURKINA-FASO,WEST AFRICA. DEAR FRIEND, I AM ZAKI AHMED, THE DIRECTOR IN CHARGE OF AUDITING AND ACCOUNTING SECTION OF AFRICAN DEVLOPMENT BANK (A.D.B) OUAGADOUGOU BURKINA-FASO WEST AFRICA WITH DUE RESPECT AND REGARD. I HAVE DECIDED TO CONTACT YOU ON A BUSINESS TRANSACTION THAT WILL BE VERY BENEFICIAL TO BOTH OF US AT THE END OF THE TRANSACTION. DURING OUR INVESTIGATION AND AUDITING IN THIS BANK, MY DEPARTMENT CAME ACROSS A VERY HUGE SUM OF MONEY BELONGING TO A DECEASED PERSON WHO DIED ON OCTOBER 31ST 1999 IN A PLANE CRASH AND THE FUND HAS BEEN DORMANT IN HIS ACCOUNT WITH THIS BANK WITHOUT ANY CLAIM OF THE FUND IN OUR CUSTODY EITHER FROM HIS FAMILY OR RELATION BEFORE OUR DISCOVERY TO THIS DEVELOPMENT. THE SAID AMOUNT WAS U.S 11.5M (ELEVEN MILLION FIVE HUNDRED UNITED STATES DOLLARS). AS IT MAY INTEREST YOU TO KNOW, I GOT YOUR IMPRESSIVE INFORMATION THROUGH THE BURKINA-FASO CHAMBER OF COMMERCE ON FOREIGN BUSINESS RELATIONS HERE IN OUAGADOUGOU BURKINA-FASO.   THIS IS THE ACTUAL REASON WHY IT WILL REQUIRE A SECOND PARTY OR FELLOW WHO WILL FORWARD CLAIMS AS THE NEXT OF KIN WITH AFFIDAVIT OF TRUST OF OATH TO THE BANK AND ALSO PRESENT A FOREIGN ACCOUNT WHERE HE WILL NEED THE MONEY TO BE RE-TRANSFERRED INTO ON HIS REQUEST AS IT MAY BE AFTER DUE VERIFICATION AND CLARIFICATION BY THE CORRESPONDENT BRANCH OF THE BANK WHERE THE WHOLE MONEY WILL BE REMITTED FROM TO YOUR OWN DESIGNATION BANK ACCOUNT.     I LOOK FORWARD TO RECEIVE YOUR PHONE AND FAX NUMBERS FOR EASY COMMUNICATION, YOURS FAITHFULLY, MR.ZAKI AHMED. MOBILE 00226 76 56 72 41. DEMANDING URGENT ATTENTION/CALL ME.


A PHP fluent input sanitiser.
Philter accepts untrusted input, passes it through some filters and returns it back to you. It is not a substitution for validation.
Installation
Copy the src/Philter.php
file to your project, or install using composer:
composer require indgy/philter
Getting started
Create a new Philter instance passing in the untrusted input, then combine filters for the untrusted input to pass through and finally call toBool()
, toFloat()
, toInt()
or toString()
to get the filtered and now trusted input.
use \Indgy\Philter;
$f = new Philter($unsafe_input);
$str = $f->in(['safe','string','options'])
->default('safe')
->toString();
There is also a handy shortcut function to return a new Philter instance:
use function \Indgy\philter;
$str = philter($unsafe_input)
->in(['safe', 'string', 'options'])
->default('safe')
->toString();
Available filters
allow(String $chars)
- Allow only the characters in \$chars
alpha()
- Allow only a-z
alphanum()
- Allow only a-z and 0-9
ascii()
- Allow only ASCII chars (32-127), transliterating where possible
between(Int $min, Int $max)
- Allow values between min and max inclusive
contains(String $match)
- Allow values containing \$match
cut(Int $length)
- Cut string to \$length
digits()
- Allow only 0-9
in(Array $items)
- Allow if in \$items
max(Int $max)
- Allow only if less than or equal to \$max
min(Int $min)
- Allow only if greater than or equal to \$min
numeric()
- Allow only if numeric, e.g. currency string
trim()
- Trim characters from beginning and end (see also ltrim()
and rtrim()
)
utf8()
- Convert to UTF-8 transliterating where possible
Refer to the Reference for more detail on the filters.
Custom filters
Define custom filters using the apply()
method with a closure. The closure will be passed the current input value and expects it, or null to be returned.
philter('Here we go.. ')->apply(function($v) {
// always skip filtering if $value is null
if (is_null($v)) return $v;
// do your thing here
$v = $v.= 'I was philtered';
// always return $v or null if it does not pass your filter criteria
return $v;
})->toString();
Documentation
Refer to the user guide or browse the API .


General discussion about Komodo. For useful links and more info click the pinned messages to the right. DON'T DM @jl777
100 messages
Before 05-Dec-19 12:00 AM
Buddz199314-Oct-18 03:57 PM
#talk-general?
CHMEX14-Oct-18 03:58 PM
#dev-general might be a good place
Buddz199314-Oct-18 03:59 PM
just told them , lets see if they ever join
jl777c14-Oct-18 04:01 PM
costs will be going up with each new coin that signs up
PTYX14-Oct-18 04:02 PM
Yes, the 300 KMD price isn't valid anymore
Buddz199314-Oct-18 04:03 PM
So how much are we talking about right now?
PTYX14-Oct-18 04:03 PM
@Audo can tell you the exact price for the next chain to onboard
A ladder system will be used until we reach 100 chains.
Buddz199314-Oct-18 04:04 PM
Even so I invited them to join our discord and go to #dev-general channel lets see if they want to improve as a whole or not lol
PTYX14-Oct-18 04:04 PM
The cost if I'm not mistaken will be between 2000-3000$ per year for the next chain.
Buddz199314-Oct-18 04:05 PM
even if it costs 1000 kmd thats still nothing for the protection they will get
PTYX14-Oct-18 04:05 PM
And it will increase as we add more chains
Yes the price is definitely worth the security
Buddz199314-Oct-18 04:05 PM
Ofc 300 kmd was damn cheap lol IMHO
PTYX14-Oct-18 04:05 PM
Plus the added benefits of having eyes on at all time
Constant code base updates and so forth
Buddz199314-Oct-18 04:06 PM
yea its a plus for any coin that doesn't have that kind of protection
SHossain14-Oct-18 04:06 PM
Our marketing departmanet will make announcement with price and other info when everything is final.
2
akomismo14-Oct-18 04:53 PM
@SHossain can i ask??
SHossain14-Oct-18 04:53 PM
what would you like to ask @akomismo ?
ask away
akomismo14-Oct-18 04:54 PM
can i suggest a filipino channel??(edited)
1
SHossain14-Oct-18 04:56 PM
how many users we have from PH? that would be @Audo to decide.
1
akomismo14-Oct-18 04:57 PM
a lot at discord
1
at eql server few member are filipino
ok
passcombo.com 🏴☠🏴14-Oct-18 05:00 PM
I was thinking if alternative to dPOW could work using CC? Steps: 1. network detect hashrate jump > 30% 2. additional backup miners are run to counter weight the jump (suspected 51% started) or even 3. buying mining power online to counter the jump. Even is possible to act this way "automatically" question of price ...
To sum up - detecting hashrate jump - expect attack, increase hashrate to counter the attacker. This should be temporary action. Acting this way should discourage attackers?
jl777c14-Oct-18 05:11 PM
maybe as an offchain mechanism, wouldnt work onchain
you want the blockchain to control the nicehash account
but if it does, it is public known, so it would quickly just be used to mine whatever
dukeleto14-Oct-18 05:17 PM
@Buddz1993 yes, with my recent porting of James initial code from BTC 0.15 to BTC 0.11 to support Hush, BTCP became compatible with KMD DPoW, as well as all other ZEC forks. Go forth and spread the good word
javadth14-Oct-18 05:26 PM
we have a kmd dedicated exchange ?
passcombo.com 🏴☠🏴14-Oct-18 05:28 PM
@jl777c yes so probably external app controlling that could be a useful tool...
Buddz199314-Oct-18 05:55 PM
@dukeleto I dropped this in their discord under development channel
Yea, need to buy more. Gave the tipbot all of my kmd by mistake.
SHossain14-Oct-18 06:14 PM
what do you mean by giving all KMD to tipbot? you can always withdraw from tipbot
joker-h14-Oct-18 06:14 PM
I'm just kidding a little bit , sry :)
Oh, so not tipping the bot, but get tips from the bot? I don't know how it works.
Jonathan14-Oct-18 06:18 PM
You can DM the tipbot and use !tip help @joker-h
javadth14-Oct-18 06:26 PM
@SHossain no man i have kmd
i just wanted to know we have a decentralize exchange that kmd supports it ?
SHossain14-Oct-18 06:27 PM
Yes, we have decentralised exchange working for a year now
#dex-hyperdex is the simple easy to use version
cantptalblonit14-Oct-18 06:29 PM
Major buyer on Binance for KMD
Wow
2.06 MM
Buddz199314-Oct-18 06:37 PM
@dukeleto is this true? "SnippleRifskyToday at 7:33 PM
@Buddz1993 based on that statement, once the rebase is complete it sounds as if we will no longer be compatible
Since the Rebase brings us in line with BTC 0.16.3"
jl777c14-Oct-18 06:37 PM
there is 0.15 support and it is virtually the same as 0.16
Buddz199314-Oct-18 06:38 PM
@jl777c passed on the message.
They will most likely contact you guys in the future regarding DPOW so lets wait and see how long they decide to take..
So @geocold51 got pwned and failed to 51wn EMC2 & dPoW? @KomodoPlatform with your permission i am going to successfully execute an attack on a dPoWed token on Oct. 17th 07:17 AM ET. #51attack #doublespend #devsfixyourcoins #EMC2 #witchplease
KomodoWorld14-Oct-18 09:12 PM
you can help by first doing it on test chains to make practice
ComputerGenie 👴👴👴14-Oct-18 09:13 PM
should give this 'get famous for not forking a KMD assetchain' thing a try
1
Buddz199314-Oct-18 10:28 PM
This guys saying dpow it’s not worth it according to him it’s not worth because “because you rely on a third party. it goes against everything what a cryptocurrency should be.
i also really dont see why this should be a service to pay for. code = code and should be free for all. “
And it says that it would ruin the coin blockchain by not being decentralized anymore . “so what exactly is the service that is provided, and how does it tie into decentralisation”
polycryptoblog14-Oct-18 10:35 PM
Because it costs money
Buddz199314-Oct-18 10:37 PM
I mean I was like
Mylo14-Oct-18 10:49 PM
hmmmmmm....yes well. thanks for the comments and feedback you've relayed @Buddz1993 because these are fundamental understandings that need to be considered by marketing team(s) seeking to educate users - where the thinking or one aspect slightly incorrectly makes further assumptions plain wrong.
like maths. the mistake is carried forward.
I've found in tech crowds, especially tech with nice jobs high up in the hierarchy in a corporate environment, they miss the benefits of decentralized tech as it is now, and what possibilities lie ahead as the tech develops further and current problems solved.
1
Buddz199314-Oct-18 10:54 PM
No worries @Mylo I show them the site that explains what DPOW is and what are the advantages of any coin in using it seems like he’s taking a read into it hopefully he’s smart enough to understand as I think it’s written for the average Joe person to understand so ..
Services are not free that’s what he’s not understanding , if you use a premium service you are going to have to pay for it that’s the difference of having a good blockchain but that can be easily attackable or having a premium blockchain that is imune to the 51% attacks ..
jl777c14-Oct-18 10:57 PM
i guess you cant use any nodes that use any sort of centralized service by that logic
Mylo14-Oct-18 10:57 PM
the because you rely on a third party. it goes against everything what a cryptocurrency should be line got me, even before the price of maintaining a network of 64 servers around the world, monitoring, btc tx etc.
without the interdependence of full node operators, mining pools, miners, explorers, exchanges etc. there would be no need to exchange value with third parties.
jl777c14-Oct-18 10:58 PM
so everyone needs to build their own computer, data center, internet connection, etc
Buddz199314-Oct-18 10:58 PM
Exactly ..
jl777c14-Oct-18 10:58 PM
just because a network uses things from centralized providers doesnt necessarily contaminate everything
and NN is well distributed
i heard BTCP wasnt having a real dev team, so maybe that is the reason?
1
Buddz199314-Oct-18 11:00 PM
Probably..
I did try my best let’s see if they can visualize what’s really in front of them ..
Japesmith14-Oct-18 11:02 PM
Is not decentralized. Is rabbish. Bitcoin is a babble!
The Senate Banking, Housing and Urban Affairs Committee holds a hearing on "Exploring the Cryptocurrency and Blockchain Ecosystem." » Subscribe to CNBC: http...
Vertigo15-Oct-18 12:47 AM
So been holding Komodo for 48 hours so far very good hehe.
1
1
1
1
ComputerGenie 👴👴👴15-Oct-18 12:53 AM
Well, everyone has to start somewhere...
Gregg Morgan15-Oct-18 03:39 AM
I'm horrible with troubleshooting and well.. computers in general... Anyone have any luck getting Agama's Native wallet to sync. havent been able to open it for months. I dont have many KMD's in there, but it would be comforting to regain access,
"unable to establish RPC connection".... anyone know what I've screwed up for that error message?
polycryptoblog15-Oct-18 03:44 AM
@Gregg Morgan#support
Gregg Morgan15-Oct-18 03:50 AM
Windows 7 maybe?
no clue on firewall
"komodo demon has been started and is running"
PTYX15-Oct-18 04:01 AM
Which version too
Gregg Morgan15-Oct-18 04:09 AM
I really dont know enough to play in this sport.. But the coins arent going anywhere. Maybe in a year or two I'll try again.
NutellaLicka15-Oct-18 04:09 AM
Have you updated your agama wallet recently to the newest version?
DingDongSoLong15-Oct-18 04:36 AM
Is it normal for the native mode in agama to take more than 3 days to download?
NutellaLicka15-Oct-18 05:03 AM
If you're in Australia with prehistoric internet speeds, then yeah
If you're anywhere else, maybe not
DingDongSoLong15-Oct-18 05:07 AM
Haha but Nah I’m in the states & it’s been 3 days with it only 85% downloaded
Seko15-Oct-18 06:54 AM
Suppose the hacker takes over the network. Then he has 10 minutes to sell the coins, otherwise they have no value?
Can the dPoW-Algo also be reduced to 5 minutes for example? Or do you think that 10 minutes is enough and dPoW cannot be overcome?
jl777c15-Oct-18 06:58 AM
as long as the exchange requires more than 10 minutes of confirms, the double spend wont work
also we have a new version that will make exchanges wait for a notarization, so once that happens it cant be changed
if it cant be changed, it cant be double spent
if it cant be double spent, there is no harm
Seko15-Oct-18 07:02 AM
So you see the new announcement against dPoW cool? I trust you.


identity formation and shifts
in contexts with lingering sentiments
SALIENCY was born from an exploration of the personal — first, with the uncovering of family narratives from my parents and their histories; then, with a decoding of my brother's experiences with diabetes as a child. I attempted to peer into expectations through personal anecdotes, but constantly felt the pull back to my own struggles at the time. Wanting to finally create something for myself and about myself, SALIENCY was how I was able to speak about my transitions of understanding identity.
Along with my personal excerpts, I gathered material from Ingrid Chang, community narratives shared by Gaysian Third Space, and Alok Vaid-Menon — individuals that I grew alongside with that shaped the perceptions of my identity. SALIENCY deals with contexts that construct and challenge my trans identity, especially ones that were felt particularly resonant during the time of creation. These are shown with visual cues throughout the book, with its undulations with what is visible and what is not.


Version 2.90.3, February 26, 2023
- Introductory sections about subroutines and libraries
- Updated the docu from docbook 4.5 to 5
Version 2.90.2, January 6, 2022
- Fixed precision error for print using under windows
- Better error-reporting for an edge case of short-if
- Allow '==' to check for equality and '!=' for inequality ('=' and '<>' still work)
Version 2.90.1, July 11, 2021
- Repaired the docu (especially yabasic.htm)
- Removed references to the old documentation (still available on github)
Version 2.90.0, July 10, 2021
- Fixed an error with local variables
- Moved to a new building-environment (see toplevel README.org for details)
Version 2.89.0, December 29, 2020
- Fixed for Problem with system-command after clear screen on MacOS
- Added functions eval and eval$
Version 2.87.1, November 07, 2020
- Fixed for libffi on 32 bit systems
- Updated included header files (windows) of ffi from libffi 3.3
Version 2.87.0, August 12, 2020
- Fixed an edge-case in for-loops
- Allow eof(0) and peek(0) to refer to standard input
Version 2.86.9, June 6, 2020
- Fix formatting of larger numbers with '####' et.al.
Version 2.86.8, May 9, 2020
- Bringing pkg.m4 with us to ease build process
Version 2.86.7, April 4, 2020
- Using pkg-config (if available) to locate libffi
Version 2.86.6, March 8, 2020
- Advancing version for technical reasons
Version 2.86.5, March 8, 2020
- Fix double backslash in string before quote
Version 2.86.4, January 1, 2020
- Fix for do-loop / continue
Version 2.86.2, December 12, 2019
- Another fix for heap-buffer-offerflow found with address sanitizer
Version 2.86.1, December 8, 2019
- Fix for heap-buffer-offerflow
Version 2.86.0, November 28, 2019
- Added new functions bitnot
- Fixes for bit-arithmetic (signes/unsigned)
Version 2.85.0, November 16, 2019
- Added new functions shl, shr and round
- Introduced binary literals preceeded by 0b
- Fixes for hex literals
- The error-command no longer adds a line number
Version 2.84.3, November 3, 2019
- Better debugging for library path
- Clean builds for Windows setup-program
Version 2.84.2, October 6, 2019
- Fixed some potential stackoverflows
- Removed empty dir related with nano
- Tests with tmux only within the Rakefile
Version 2.84.1, July 20, 2019
- Make unload_library after call the default for foreign_functions
- Fixes to docu
- Requiring libffi for build (unless specified other by configure-option)
- explicit error no longer unwinds call-stack
Version 2.84.0, July 12, 2019
- New command foreign_buffer_set_buffer
Version 2.83.3, June 30, 2019
Version 2.83.2, June 30, 2019
- Allow specifying null-pointer for foreign functions
Version 2.83.1, June 26, 2019
- Fix for line-numbers in errors after import
- Updating the manual
Version 2.83.0, April 29, 2019
- Unix: Added a syntax-file for the nano-editor; contributed by Stephan Muesse
- Made parentheses around condition in while and until optional
- Better error messages on misaligned control structures
- New family of functions and commands foreign_* invoke functions from external c-libraries
- Fixes for line-numbers in error messages
- Revised and updated the documentation
Version 2.82.1, March 11, 2019
- Allowing comments after import statement
- Fixes regarding error messages
Version 2.82.0, February 17, 2019
- Advanced version of autoconf and other tools
- Fix in tests
- Fixed nested import of libraries
- Libraries can now be found in the directory of the main file too
- Error messages try to show and mark the offending part of the code
- Hexadecimal numerical literals are supported, e.g. print 0xff
Version 2.81.4, January 27, 2019
- Fixed error with inkey$ and clear screen
- Fixed fatal error with inkey$ and upper case letters
Version 2.81.3, January 13, 2019
- Fixed a compile-problem on macos
- Corrected a rendering problem on www.yabasic.de, which had cut off the bottom-lines of many pages
Version 2.81.2, January 2, 2019
- Fixed a problem under netbsd, which prevented yabasic from finding its own executable
- Fix on macos for curses-initialization e.g. during "clear screen"
- Fix that allows libraries to start with a comment introduced by a hash or a single quote
- Made the prior "Guide into the guts" available again as "Some remarks on changing Yabasic"; see www.yabasic.de
- Document options for unix and windows in the same chapter
Version 2.81.1, November 1, 2018
- Fix: Allow yabasic to run from within a script
Version 2.81.0, October 27, 2018
- New function chomp$
- Added new peek "interpreter_path"
- Fixed a sporadic issue with bound programs
Version 2.80.0, September 8, 2018
- Added functions floor() and ceil()
- Checking for function clock_gettime during configure
Version 2.79.2, May 13, 2018
- No changes over 2.79.1
- Advanced patchlevel to get in line with tagging again
Version 2.79.0, April 21, 2018
- Introduced new peeks "secondsrunning" and "millisrunning"
- Bugfixes regarding the switch statement
Version 2.78.5, April 3, 2018
- Within a bound yabasic-programs the name is correctly set (as returned by peeking "program_name")
- Introduced new string-peeks "program_name" and "program_file_name"
- Bugfixes regarding bound programs and libraries
Version 2.78.4, March 2018, 2018
- Fixed a problem with bound yabasic-programs, that include more than three libraries
- Introduced new peek "secondsrunning"
Version 2.78.3, January 21, 2018
- Fixed a up to 4-times performance penalty, that has been introduced in a previous version
- Brought back "Edit" to the windows context menu
Version 2.78.2, August 27, 2017
- The ran()-function is now guaranteed to return 2**30 different values
Version 2.78.1, August 13, 2017
- No more dump when using color without window open
- Processing of yabasic.xml finds hellip-entity
Version 2.78.0, January 21, 2017
- Allowed for numeric argument after break
- Fixed format of manpage (unix)
- Reworked the switch-statement, added tests
Version 2.77.3, December 29, 2016
- Fixed insecure usage of strcpy
- Better logging for windows installer
- Spelling corrections
Version 2.77.2, December 17, 2016
- Fixes for coloured text under windows as reported by TheMeq
- msvcr140.dll is no longer required under Windows
- Several spelling corrections contributed by ginggs
- Updated and fixed man-page under linux
Version 2.77.1, November 13, 2016
- Adopted the MIT License for yabasic
- Switched to semantic versioning; the new schema is MajorRelease.MinorRelease.Patchlevel
- New peek$ for version, documented all peeks
- Various bugfixes
- Setup program now offers to start the demo
- Redid the development process for yabasic; you may now participate in the development of yabasic itself via github: https://github.com/marcIhm/yabasic. However, the main site for programming in yabasic is still https://www.yabasic.de
Version 2.769, July 4, 2015
- print color under windows handles single argument correctly
- cpu extension sse2 is no longer required, so yabasic should run again on older hardware
Version 2.768, May 25, 2014
- Core dump e.g. under Linux mint related with grafics
- Problems with embedded newlines within the Windows console
- Keys pressed within grafic window are not always reported to inkey$ (Windows-Version)
- Spurios problems with colors under Windows and linux (reported but not fixed yet)
Version 2.767, March 15, 2014
- Fixed a bug which caused yabasic under Windows to freeze on syntax errors
Version 2.766, March 15, 2014
- Fixed some bugs related with ncurses under linux
Version 2.765, January 30, 2014
- Added support for later versions of ncurses and 64 bit Systems
- Avoided forks for inkey$ under Unix
- Fixed a bug related with break and continue
Nine years of hibernation ...
Continued end-user support. But only a few bugfixes and no new features, because:
- Life took over: job, house and family
- A promising volunteer-fork of yabasic, which however did not work out at the end
Older Versions
- 2.760 (July 27, 2005)
-
Finally full colour support !
- Multiple fonts for the text-command.
- Triangles with the new triangle-command.
- Furthermore, the
Windows-Installer gives better diagnosis in case of an error.
- The configuration-process
for Unix has been updated to the latest version of autoconf.
- 2.750 (May 19, 2004)
- Yabasic finally has an Icon under Windows.
- The str$()-function, may now format numbers like 123,456.56
(or 123.456,56 for german conventions).
- Changed the system()-function under Windows to use the right
command-processor.
- Added a list of commands, grouped by topics to the documentation.
- 2.740 (January 18 2003)
- Implemented the bind-feature.
- More meaningful messages on failing open-calls.
- 2.730 (24 August 2003):
The new documentation is finally finished. It has more than four times
the size of the old documentation (153 pages compared to 36).
- 2.722 (3 January 2003):
Another release, that mostly includes a series of minor bugfixes related
with the new documentation:
- A bug with the functions split() and token()
has been fixed, which caused to coredumps in some cases.
- 2.72 (3 January 2003):
Big changes only in the new documentation. In yabasic itself there have
been mostly cosmetics changes:
- Two argument form of log().
- The special option '--' stops all option processing
- Lots of bugfixes related with: open, import, continue
- 2.71 (18 December 2001):
- The short form of the if-statement now behaves as you expect.
- A new loop: You may put statements between loop and end
loop.
- break and continue can be used to control any loop
- The switch-statement is available to check one expression
against many different values.
- 2.70 (August 2001):
- Allowed hex-escapes in string constants (e.g. "\xa").
- Better warnings for forgotten endif, endsub or next.
- Allowed for dumping of stack of subroutine calls.
- Various bugfixes related with: print using,token$() and with printing
to mixed streams
- 2.69 (30 June 2001):
- Implemented logical shortcuts, i.e. conditions within if
or while statements are only evaluated as far as needed.
- New form of the open statement: open "foo" for reading
as #1
- New form of the open function: open(a,"foo") intended
for use in if-statements:
if (not open(a,"foo"))
print "Shit !"
- You may now write: a=open("foo","w"):print #a
"Hello"
- 2.68 (2 March 2001): Essentially removed the distinction between
expressions and conditions, i.e. you may write things like
this: okay=(1<10) : if (okay) print "Hallo"
- 2.66 (7 January 2001): Modified instr() to accept an optional
third argument and mid$() to go without its third argument. Added
the rinstr()-Function. Added the bin$() function to convert
decimal into binary numbers and extended dec() to do the other way
around; fixed some errors related with int()/hex() and large numbers.
- 2.65 (21 October 2000): You may specify the directory to search
libraries with the new option librarypath. The seek() function
might now be used within conditions to check for success e.g.: if
(!seek(1,20)) error "Shit !".
Added the command compile
and the function execute() to create code on the fly and to call
a subroutine, whose name is only known at runtime only. E.g. use compile
"sub foo(a):print a:end sub" to create subroutine foo
on the fly and use execute("foo",2) as an alternate way
to say foo(2).
- Release 3: Fixed a bug with the system() function as reported
by Michael Cwickel: Some strange problems with scrolling
under windows surfaced within the system() function, which did not give
correct output in some cases. Corrected some problems with using arraydim()
and arraysize() within subroutines as reported by Arnand Roques.
- 2.64 (15 June 2000): Rewrote the functions token() and
split() and even changed their grammar. This change will affect existing
yabasic-programs, if they use those functions !
- Release 5: Fixed an error with numparams (which contains
the number of parameters passed to a function).
- Release 4: Reintroduced the token$() and split$()
functions, fixed a compile problem under AIX and made Pi
and euler available within libraries.
- 2.63 (10 April 2000): Made the graphic window repaint
itself under Unix, so a covered window will not loose its contents; made
the inkey$ function recognize the state of the shift key, if a mousebutton
is pressed within the graphic window; Removed an error which freezes
yabasic after opening a window under some Unix systems. A special poke
makes the input statement return nonprintable characters. A bug related
with restore/labels and Subroutines has been fixed.
- 2.62 (21 January 2000): Extended the domain of the **-operator,
as suggested by Albert Beissel. Corrected the resolution-pattern
for non local variables, thanks to Tom Ellestad. Added the -e
option, which allows one to execute yabasic code on the fly. Options may now
be abbreviated.
- 2.61 (29 Dezember 1999): Besides printing grafics, yabasic is
now able to print pure text and listst. You may clear and fill
circles, rectangles, lines and dots in a simple manner. Bitmanipulation
with the new functions and(), or(), eor(). You may move
around within an open file with seek and tell(). Fixed a nasty
bug with local variables, which has been detected by Tom Ellestad.
Bugfix for peek$("library"), thanx again to Tom
Ellestad !
- 2.60 (26 October 1999): Array parameters to subroutines
are now optional, you may query the number of parameters
through the local variable numparams. Added the docu$()-array,
which contains any embedded documentation. Removed lot's of errors
related with: ran(), window origin, inkey$,
linenumbers, peek(#). Changed the License
of yabasic: You may now apply the Gnu Public License or
the Artistic License at your own choice.
- 2.59 (12. October 99): Subroutines now support arrays
as parameters and as local or static variables. A dim-statement may now
change the size of an array. You may specify file numbers as variables (e.g.
print #(a) "Hello" ). Builtin support for plotting
(i.e. map(),mapx(),mapy(), arrow and marker) has been removed.
- 2.58 (30. August 99): Added colours to the text console:
You may render text in one of eight colours.
- 2.57 (24. August 99): Yabasic now supports libraries:
Your programs may use readymade subroutines, which are defined in separate
files. Added the error-statement. Allowed for lines consisting of a single
rem (bug reported by Tom Ellestad). Added
the error statement and static variables.
Fixed a lot of bugs.
- 2.56 (14. August 99): Allowed for "_" in
variable names and for continuation lines; Yabasic can now handle more than
9 open files; removed a bug, connected with user defined subroutines.
- 2.55 (3. August 99): Added user defined subroutines.
- 2.54 (17.July 99): Split the single source (yabasic.c)
into five seperate files (main.c, io.c, function.c, symbol.c, graphic.c).
- 2.53 (29. June 99): Yabasic can now receive keys
which have been directed to the grafic window as well as
mouseclicks. Fixed problems with printing under Windows.
- 2.51 (6. June 99): glob$() for globbing strings and
split$() as a variant of the token$()-function.
open can be checked for success. sokoban
game of Hermang Mansilla as part of the standard demo.
- 2.50 (15.May 99): Implemented repeat-until
and while-wend loops
- 2.49 (9.May 99): Added hex$() and
dec() functions, fixed an error with peek$()
- 2.47 (31.Mar 99): Implemented commands for bitmap manipulation.
- 2.46 (12.Mar 99): Added the clear rect-command,
removed a bug related with system$().
- 2.45 (26.Feb 99): Made the grafic window redraw itself
automatically.
- 2.43 (24.Feb 99): Added the elsif
to the if-clause and made the for-statement
more flexible.
- 2.42 (16. Feb 99): Some improvements on the install-program
for Windows, Fixed an incompatability with AIX.
- 2.41 (31. Jan 99): Numbers are read in as double
instead of float.
- 2.40 (24. Jan 99): Added the print using statement,
fixed bugs related with strings like "\\" and with printing under
windows.
- 2.39 (16. Jan 99): Fixed a bug int the Unix
print at command, Improved the diagnostics.
- 2.38 (12. Jan 99): Peeks to get command line arguments
and open for binary files.
- 2.37: Rewrote the demo, added abs(), sig()
and sqr()-functions, created a rpm-package for distributing
the linux-version and removed bugs related with inkey$ and input
- 2.36: Added the token$()-function and
a timeout-argument to the inkey$-function. Removed a bug
in the (Windows) clear screen-function
- 2.35: Poked around in clear screen and
print reverse and changed the Windows setup-program to
avoid a reported problem
- 2.34: Bugfix related with clear-screen
- 2.33: Bugfix related with line-input
- Version 2.32: Added the line-input-statement
- Version 2.31: Switched to VC++, Maintainance
- Version 2.3: Support for plotting
- Version 2.22: Maintainance
- Version 2.21: Four new string-functions ltrim$(), rtrim$(),
date$ and time$
- Version 2.20: peek and poke
- Version 2.19: Handled keyboard-interrupts.
- Version 2.18: Reverse-printing and linenumbers.
- Version 2.17: Fixed problems with very large programs.
- Version 2.16: Rewrote the documentation.
- Version 2.15: Improved inkey$ and system$().
- Version 2.14: Rewrote the input-statement.
- Switched to Version 2.12 and 2.13 Added the eof()-function
and allowed for comparing strings with <,<=,> and >=.
- Switched to Version 2.11 Added system$() system(),
print at(,), min(,) and max(,) commands.
- Switched to Version 2.1
- Added asc(), chr$(), lower$(), upper$(),
and instr(), enhanced mid$(), left$(), right$()
and inkey$.
- Implemented an INKEY$-function, which allows yabasic-programs
to receive any pressed key without waiting for a newline.
- Windows: Improved search for default-printer, so that I could get a
printout even under Windows NT.
- Unix: Introduced comment-lines that start with a hash ('#'), allowing
the usual Unix-convention for specifying the interpreter (e.g. #!/usr/bin/yabasic);
thanx to Ken Jordan, who suggested this useful feature.
- Windows: Changed the icon to something more meaningful.
- A serious bug in the close-statement has been fixed.
- Random numbers can be generated, e.g. ran(12)
- Strings can contain control-characters: The usual C-style escape sequences
(e.g. \n, \a, \t) are processed in any string.
- To make the build-process more reliable, I try using the GNU-autconf
package. Hope, this will fix some mysterious problems, I heard of before.
- During the last change I introduced a bug in the str$()-function, making
it expect strings instead of numbers as arguments. This bug has been fixed.
- Simplified internal handling of functions and arrays. This had no impact
on the language, except, that some errors have been introduced and removed
during the process.
- Unified printing under Unix and Windows, added internal variables.
- Windows: Fixed an old, but nasty bug in the installation-program, which
caused strange mixing of pathnames on some systems. Added writing of an
installation-log, allowing (hopefully !) better remote-diagnostics.
- Windows: Added yabasic to the root menu, fixed some bugs in setup.
- Unix & Win95: Allowed for negative steps in For-Next-Loops (at last
!).
- Switched to Version 2.0
- Ported to Windows and changed the name to yabasic ("yet
another basic").
- The wait-command has been changed to accept fractional delays
(e.g. wait 0.2).
- Fixing the last bug, I intoduced another one, which made it impossible
to parse an expression like a=-b. This has been corrected.
- Fixed an old bug: In earlier versions yabasic accepted only positive
constants on data-lines and as step-part of a for-next-loop.
- Implementation of circle-command.
- Switched to Version 1.2
- Introduced choice of grafics font.
- Added postscript-support.
- Switched to Version 1.1
- Some sort of memory leak has been closed; in fact, no memory has been
freed at all ! This problem has been fixed, so that even heavy string-arithmetics
should not lead to memory-problems any longer.
- The commands pause (or wait) and bell have been implemented.
- The compilation has become more simple by using xmkmf.
- The for-next-loop has been changed, so that only a number will be accepted
as step-part.
- There have been difficulties on some systems in the case of colour resources.
Ron Nicholson has given me a hint to avoid this problem.
- April 1995: Initial Version 1.0 (0.01 would have been better
:-)


The goal of this site is to collectively map neighborhoods as an image of the city in maps and words.
No neighborhood names or boundaries are here to start with. You make the map. Real or imagined, within the city, or crossing municipal borders. Names, extents, and descriptions are up to you. After mapping, be sure to View Maps. All the color on this site comes from your contributions.
- Thanks!
Please don't flag a neighborhood if you simply disagree with the border or description..
Only flag content that is offensive or just rubbish. Flagged content will be temporarily removed. Once reviewed it will either be reinstated if found to be flagged in error, or remain hidden if found to be junk. Thanks!
You are about to download the entire neighborhood shapefile. It contains all polygons, including those that have been flagged as junk or inappropriate. Those items can be identified where the flag field=true. There are some great things to map here, so if you get the data, please let us know what you do with it!.


Cargo Tracker
Applied Domain Driven Design blueprints for Jakarta EE
Public Tracking Interface
Administration Interface
Mobile Event Logger


Filter By:
Season
Spring
Summer
Fall
Winter
Style
Pastel
Casual
Chic
Vintage
Item Type
Dresses
Sweaters
Skirts
Pants
Current Filter: None


A lot of people were waiting for this: I'm proud to present to you the Text Object! With it, you can create text wherever you want, with or without a bubble, with a tail or without a tail... It's 100% your choice!
Plus, if you choose to make a bubble, the height of the bubble is automatically computed, but you can still choose the bubble's height if you want to.
By default, a Text Object has a bubble with an automatically-set height, with no tail/speech thing. Plus, the object is hidden when you enter or come out of ENEMYDIALOGUE. If you want to change this, there are a lot of functions to do so. Look down to see them!
CreateText( text (OR) text, ,
, position, textMaxWidth, layer = "BelowPlayer", bubbleHeight = -1) returns textObject [E/M/P/W]
This function creates a Text Object and returns it. However, as you can see, a lot of parameters are needed.
Here is what you need to set:
Text.DestroyText()
This function destroys a text object, similar to .Remove() for bullets and sprites.
Trying to get, set or call almost anything besides Text.isactive on a destroyed text object will error.
Note that this happens automatically if a text object closes itself, either by having the player close it or by closing automatically if progressmode is "auto".
Text.isactive
Read-only.
Tells you if a text object is active.
A text object will become inactive when it finishes its text and tries to continue,
or if you call Text.DestroyText().
Text.progressmode
This value is used to set the progression mode of the text to one of the following values.
Text.x
The local x position of the object, measured from the position of the text object's parent. This value depends on the object's pivot.
Text.y
The local y position of the object, measured from the position of the text object's parent. This value depends on the object's pivot.
Text.absx
The absolute x position of the object, measured from the bottom left corner of the screen. This value depends on the object's pivot.
Text.absy
The absolute y position of the object, measured from the bottom left corner of the screen. This value depends on the object's pivot.
Text.textMaxWidth
Get or set the maximum width of the text. If the value is lower than 16, it'll be set back to 16.
Text.bubbleHeight
Get or set the height of the bubble. If the value is lower than 40, it'll be set back to 40.
Text.layer
The sprite layer of the Text Object. If it doesn't exist, it returns an error. This is "BelowPlayer" by default.
, ,
, = 1 Text.color
Get or set the color of the text, as a table of 3 or 4 values from 0 to 1.
For example,
sprite.color = {1.0, 0.0, 0.0} makes the text red.
Black areas are not affected by coloration.
The 4th value is the alpha (transparency) value of the text.
, ,
, = 255 Text.color32
Get or set the color of the text, as a table of 3 or 4 integer values from 0 to 255.
For example,
sprite.color = {250, 0, 0} makes it red.
Black areas are not affected by coloration.
The 4th value is the alpha (transparency) value of the text.
Text.alpha
Get or set the text's transparency, as a value between 0 and 1.
Text.alpha32
Get or set the text's transparency, as an integer between 0 and 255.
Text.currentReferenceCharacter
Returns a number representing the total number of visible characters currently shown in the text object's text.
It also works the same if your text is slowed down or sped up.
Any text commands that you have in your active line of text will be ignored by this number, as it only counts the visible characters, and not the length of the string you put into the text object.
Text.currentLine
Returns the number of the line (page) that the text is currently on, starting from 0.
So, if your text object's text table is {"Text 1", "Text 2"}, then "Text 1" is line 0, and "Text 2" is line 1.
Text.SkipLine()
This function skips to the end of the text object's current text, as if using [instant] (see Text Commands).
Text.lineComplete
Read-only.
Returns true if the current line (page) of text is fully displayed, false otherwise.
Text.allLinesComplete
Read-only.
Returns true if the current line of text is fully displayed and if this is the last line the test object will show, false otherwise.
Text.lineCount()
This function returns the total number of lines/pages of text set to the text object, regardless of whether they've been shown yet.
Text.NextLine()
Shows the next line (dialogue) of the text instantly, regardless of if the current one is finished or what progress mode the object has.
Text.SetAutoWaitTimeBetweenTexts( time)
Sets the number of frames to wait before automatically going to the next line of text.
Only applies to the "auto" progress mode.
Text.SetParent(sprite parent)
Sets the text object's parent.
The text object will follow around the parent object as it moves.
Text.MoveBelow(text otherTextObject)
Moves a text object below another text object.
They must both be on the same layer.
Text.MoveAbove(text otherTextObject)
Moves a text object above another text object.
They must both be on the same layer.
Text.AddText( text)
Adds the given text to the object's text table. Acts like Text.SetText() if all the text is already done.
Text.SetText( text)
Sets the text in the Text Object.
If the text object is inactive when this is called, the object will reactive itself.
Text.SetPause( pause)
Pauses the text object's typing, in the same way as [waitfor:key], except that it doesn't resume until you use this function again.
However, while paused, text can still be skipped, unless [noskip] is applied to the text first.
Text.isPaused()
This function will return a boolean, telling you whether text has been paused with SetPaused.
It does not count if the text object was paused by other means, such as [waitfor:key].
Text.SetVoice( voiceName)
Sets the voice of the text object. It's the same as the text command [voice], but whatever.
Text.SetFont( fontName)
Sets the font of the text. It's the same as the text command [font], but whatever.
Returns an error if the font doesn't exist.
Text.SetEffect( effect, intensity)
Sets the effect of the text. Can be easily replaced with the text command [effect], but whatever.
Can only take none, twitch, shake or
twitch as the effect.
If you want to use the default intensity value, enter -1.
Text.ShowBubble( side = null, / position = null)
Use this function to add a bubble to the text. You can also set the side and the position of the tail (a.k.a. speech thing) if you
want to.
Look at Text.SetSpeechThingSideAndPosition to see how to use this.
Text.SetSpeechThingPositionAndSide( side,
/ position = "50%")
Sets the size and position of the dialogue bubble's tail (a.k.a speech thing). The side can only take
"left", "right", "up", "down" or
"none".
"none" is used to hide the speech thing, while the other directions control the side of the bubble where the
speech thing is.
center can be set to one of two things:
Text.HideBubble()
A function that hides the bubble.
Text.MoveTo( x, y)
Moves the text to a new position, relative to the text object's parent's position.
Text.MoveToAbs( x, y)
Moves the text to a new position, relative to the bottom left corner of the window.
Text.GetTextWidth()
Returns the width of the currently set text in pixels.
Will give the same result even if the text isn't finished typing.
Useful if you want to center your text.
Text.GetTextHeight()
Returns the height of the curently set text in pixels.
Will give the same result even if the text isn't finished typing.
Note: This function is not 100% accurate.


Install Hadoop stack on OSX
06 May 2015SSH Setup and Key Generation
SSH setup is required to do different operations on a cluster such as starting, stopping, distributed daemon shell operations. To authenticate different users of Hadoop, it is required to provide public/private key pair for a Hadoop user and share it with different users.
The following commands are used for generating a key value pair using SSH. Copy the public keys form idrsa.pub to authorizedkeys, and provide the owner with read and write permissions to authorized_keys file respectively.
ssh-keygen -t rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys
Install HomeBrew
Paste the following command at the terminal:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Perform update all HomeBrew recipes
brew update
Install Hadoop
brew install hadoop
Hadoop will be install in the following directory ( x.x.x is the Hadoop version)
/usr/local/Cellar/hadoop/x.x.x
Configuring Hadoop in Pseudo Distributed Mode
Edit core-site.xml
The core-site.xml file contains information such as the port number used for Hadoop instance, memory allocated for the file system, memory limit for storing the data, and size of Read/Write buffers.
The file can be located at /usr/local/Cellar/hadoop/x.x.x/libexec/etc/hadoop/core-site.xml. Open the core-site.xml and add the following properties in between <configuration> and </configuration> tags.
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/Cellar/hadoop/hdfs/tmp</value>
<description>A base for other temporary directories.</description>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
Edit hdfs-site.xml
The hdfs-site.xml file contains information such as the value of replication data, namenode path, and datanode paths of your local file systems. It means the place where you want to store the Hadoop infrastructure.
The file can be located at /usr/local/Cellar/hadoop/x.x.x/libexec/etc/hadoop/hdfs-site.xml. Open the core-site.xml and add the following properties in between <configuration> and </configuration> tags.
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>file:///usr/local/Cellar/hadoop/hdfs/namenode </value>
</property>
<property>
<name>dfs.data.dir</name>
<value>file:///usr/local/Cellar/hadoop/hdfs/datanode </value>
</property>
</configuration>
Edit yarn-site.xml
This file is used to configure yarn into Hadoop. It can be located at /usr/local/Cellar/hadoop/x.x.x/libexec/etc/hadoop/yarn-site.xml , open and add the following properties in between the <configuration> and </configuration> tags in this file.
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
Edit mapred-site.xml
This file is used to specify which MapReduce framework we are using. By default, Hadoop contains a template of yarn-site.xml. First of all, it is required to copy the file from mapred-site.xml.template to mapred-site.xml file using the following command.
cp mapred-site.xml.template mapred-site.xml
It can be located at /usr/local/Cellar/hadoop/x.x.x/libexec/etc/hadoop/mapred-site.xml.template. After copied, Open mapred-site.xml file and add the following properties in between the <configuration> and </configuration> tags in this file.
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
Verifying Hadoop Installation
The following steps are used to verify the Hadoop installation. Go to:
/usr/local/Cellar/hadoop/x.x.x/bin
Step 1: Name Node Setup
Set up the namenode using the command “hdfs namenode -format” as follows.
hdfs namenode -format
Step 2: Verifying Hadoop dfs
The following command is used to start dfs. Executing this command will start your Hadoop file system.
start-dfs.sh
Step 3: Verifying Yarn Script
The following command is used to start the yarn script. Executing this command will start your yarn daemons.
start-yarn.sh
Step 4: Accessing Hadoop on Browser
The default port number to access Hadoop is 50070. Use the following url to get Hadoop services on browser.
http://localhost:50070/
Step 5: Verify All Applications for Cluster
The default port number to access all applications of cluster is 8088. Use the following url to visit this service
http://localhost:8088/
Alias
To simplify life edit your ~/.profile using vim or your favorite editor and add the following two commands
alias hstart="/usr/local/Cellar/hadoop/2.6.0/sbin/start-dfs.sh;/usr/local/Cellar/hadoop/2.6.0/sbin/start-yarn.sh"
alias hstop="/usr/local/Cellar/hadoop/2.6.0/sbin/stop-yarn.sh;/usr/local/Cellar/hadoop/2.6.0/sbin/stop-dfs.sh"
and execute
source ~/.profile
Next time, we can run Hadoop just by typing
hstart
and stop using
hstop


Greetings {{customerDescription}},
Your subscription has been updated.
New plan: {{plan_name}}, ${{plan_amount}} per {{plan_interval}}
Next renewal: {{current_period_end}}
It really is a pleasure to serve you.
Please never hesitate to contact {{config.supportAddress}} or get support at {{config.supportUrl}}.
Sincerely,
{{config.sincerely}}


This communication may contain confidential and privileged information that is for the sole use of the intended recipient. Any viewing copying or distribution of, or reliance on this message by unintended recipients is strictly prohibited. If you have received this message in error, please notify us immediately by replying to the message and deleting it from your computer.


DNA on discarded cigarette leads to homicide charges
OSHKOSH, Wis. - Prosecutors say a discarded cigarette led to charges against a man accused in a fatal tavern shooting in Oshkosh.
Casey Cameron was charged Wednesday with first-degree intentional homicide in the Oct. 14 shooting outside Short Branch Saloon. Kevin "Hollywood" Hein was killed after he followed an armed robber out of the bar.
WLUK-TV says a criminal complaint says Cameron entered the tavern with his face covered and ordered the bartender at gunpoint to fill a bag with money. The robber fled after shooting Hein in the parking lot.
Police on Nov. 1 followed Cameron based on a tip that he matched a description of the suspect. The officer saw him toss a cigarette butt out of his vehicle and stopped to collect it. Prosecutors say DNA on the cigarette matches DNA left at the crime scene.


{% extends "base.html" %} {% block title %}{% endblock %} {% block pagetitle %}{% endblock %} {% block pagesubtitle %}{% endblock %} {% block content %} {% block internal_content %} {% endblock %} {% endblock %} {% block sidebar %} {% url app_users.user_view u.username as url_profile %} {% url app_users.user_edit u.username as url_edit %} {% url app_users.user_fields u.username as url_fields %} {% url app_users.user_settings u.username as url_settings %} {% url app_users.user_voted u.username as url_voted %} {% url app_users.user_employment u.username as url_employment %} {% url app_hints.hints_projects as url_hints %} {% url app_collaborations.choose_project as url_collaborations %}


[Gecode] Some more set quirks...
Christian Schulte
schulte at imit.kth.se
Thu Jul 15 22:46:08 CEST 2004
As I moved almost all iterators to their right place, I happened to notice
some other things:
- What used to be SeqUN is now called NaryAppend (as that's what it is
doing). In the process of moving the authorship info got lost. The author
might want to add himself to the header.
- What used to be COnstRange is now called Singleton (as that's hwat it
is). The old implementation was buggy in case the singleton was actually
empty!
- I noticed that sometimes set difference is expressed in terms of
complement and intersection. Aargh. Use the Iter::Ranges::Diff instead!
- The only thing to be moved is complement. I can do that provided some
kind soul has a look at its width method as it appears to be errourneous.
That's all
Christian
--
Christian Schulte, http://www.imit.kth.se/~schulte/
More information about the gecode-users
mailing list


Sign up for a new account.
Unlimited ideas. Unlimited power. Unlimited joy. Unlimited opportunities.
Username
Email
Password
Name
Sign Up
Do you already have an account?
Log In


Choose below options if you want to disable some features
Column Count
Card ID's
Full Label Names
Save


Week 5 11/01/2015
In the fifth week of Dev Bootcamp, we looked a bit more in depth into Ruby. In particular, we had our first taste of classes. For this entry, I want to discuss how the Enumerable module can enrich your classes. As usual, this is not an exhaustive survey, but rather a taste of what you can do.
The Enumerable module
When we first learn to program (in any language), we learn to write code that repeats/iterates a task - usually by means of a for-loop or some other control structure. For example,
for i in 1..5
p "Splat! "
end
# This will output
"Splat! "
"Splat! "
"Splat! "
"Splat! "
"Splat!
So far, so good, but what if we wanted to print out the contents of an array. For example,
metal = ["Portal", "1349", "Yob", "Marduk"]
for i in 1..metal.length
p metal[i-1]
end
# This will output
"Portal"
"1349"
"Yob"
"Marduk"
This example leads to the same output, a list of things printed one at a time, but notice that the code is slightly more complicated. We have to make sure we have gotten the array's indices correct. However, in Ruby, we learn that arrays have a special method each that allows us to iterate without worrying about the indices.
metal = ["Portal", "1349", "Yob", "Marduk"]
metal.each do |band|
p band
end
# This will output
"Portal"
"1349"
"Yob"
"Marduk"
We get the same output, but at greater simplicity. This is because the class Array has the each method. However, there are other things we can do to an array. For example, we can apply any? to see if an object is an element of the array. These methods are not unique to arrays, but can be given to other classes by including the Enumerable module in the class definition and then defining an instance method called each.
class Class_Name {
include Enumerable
def each
# put code here
end
# define the rest of your class
}
By including the Enumerable module in our class, we gain access to a wide variety of methods, such as the searching and sorting methods that we see for arrays. In other languages, we would have to construct our own object-specific methods. Let's look at a particular method.
Example Enumerable#group_by
The group_by method takes a block of code and returns a hash, where the block is executed for each object. For each unique block return value, the returned hash gets a key; the value for that key is an array of all the objects for which the block returned that value. For example,
metal = ["Portal", "1349", "Yob", "Marduk", "Mayhem", "Cultes des Ghoules", "Blut Aus Nord", "Tsjuder", "Dodheimsgard"]
# We can ask if any bands in the above array have the letter 'M'
metal.group_by {|band| band =~/M/}
# The resulting hash is
{nil=>["Portal", "1349", "Yob", "Cultes des Ghoules", "Blut Aus Nord", "Tsjuder", "Dodheimsgard"],
0=>["Marduk", "Mayhem"]}
# where the first array is consists of those bans that do not have an 'M' (i.e. band =~/M/ is false),
# while the second array consists of # those
# that do. I need to figure out how to specify a meaningful key. In this case, 'nil' means 'false' and '0' means 'true'.
# Another example - sorry, I tried to find something other than an array to apply group_by to.
# I couldn't make it work for hashes (yet!)
(1..16).group_by { |i| i%7 }
# The output is hash of integer keys (between 0 <= i <= 6 - i.e. possible remainders upon division by 7)
# whose values are arrays of integers with remainder i.
{1=>[1, 8, 15], 2=>[2, 9, 16], 3=>[3, 10], 4=>[4, 11], 5=>[5, 12], 6=>[6, 13], 0=>[7, 14]}
Once we start constructing our own classes, then we should be able to figure out good implementations of the methods offered to us by the Enumerable module.


Home
About
Products
Blog
Contact
Phone:<PHONE_NUMBER>
Email<EMAIL_ADDRESS>Web:
Our Website!
If you'd like more information, please fill out the information below!
First Name
Last Name
Email Address